gpt4 book ai didi

java - 如何禁用标记记录器上的可加性?

转载 作者:行者123 更新时间:2023-12-01 18:37:32 26 4
gpt4 key购买 nike

我已经定义了一个标记,并且只想将其记录到特定文件中。因此我尝试设置additivity = false。但它不起作用,并且仍然还记录到我的全局日志文件中。这里可能出了什么问题?

<Configuration>
<Appenders>
<RollingFile name="TEST" fileName="test.log" filePattern="test1.log">
<MarkerFilter marker="TEST_LOG" onMatch="ACCEPT" onMismatch="DENY"/>
</RollingFile>
<RollingFile name="GLOBAL" fileName="global.log" filePattern="global.log">
<ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
<MarkerFilter marker="TEST_LOG" onMatch="DENY" onMismatch="ACCEPT"/>
</RollingFile>
</Appenders>

<Loggers>
<logger name="foo" additivity="false">
<appender-ref ref="TEST" />
</logger>
</Loggers>
</Configuration>

用法:

LogManager.getRootLogger().info(MarkerManager.getMarker("TEST_LOG"), "test log");

最佳答案

在示例代码中,标记名为“TEST”,但在配置中,MarkerFilter 仅接受带有标记“TEST_LOG” 的日志事件。配置和代码应该使用相同的字符串。

此外,您可能需要定义两个 Appender:一个用于您的全局日志文件,另一个用于您的特定(标记)日志事件。然后仅在您的特定附加程序中接受标记的日志事件,并在全局附加程序中拒绝标记的日志事件。

关于java - 如何禁用标记记录器上的可加性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21282831/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com