【发布时间】:2014-01-22 12:21:26
【问题描述】:
我已经定义了一个Marker 并且希望只将它记录到一个特定的文件中。因此我试图设置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");
【问题讨论】:
-
您不需要将
name添加到您的logger元素吗? -
我也试过加个名字,更新了我上面的帖子,但效果一样。
标签: java logging configuration log4j log4j2