从log4j 1.2迁移到log4j 2:LevelRangeFilter

6

log4j 2的以下配置与log4j 1.2等效吗?

<filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="DEBUG" />
    <param name="LevelMax" value="INFO" />
</filter>
3个回答

11

2
你提到的 bitfish 链接已经失效了! - Frederic Leitenberger
那么在 .properties 文件中进行相同的操作呢? - Aqeel Ashiq

1
我们可以使用以下过滤器。
<LevelRangeFilter minLevel="DEBUG" maxLevel="DEBUG" onMatch="ACCEPT" onMismatch="DENY"/>

0
以下的appender配置有助于将写入stdout和stderr分开(例如在eclipse中,其控制台会以红色显示stderr)。 log4j2 V2.19
<Console name="stdout" target="SYSTEM_OUT">
   <PatternLayout ...
   <LevelRangeFilter minLevel="INFO" maxLevel="ALL" onMatch="ACCEPT" onMismatch="DENY"/>
</Console>
<Console name="stderr" target="SYSTEM_ERR">
   <PatternLayout ...
   <LevelRangeFilter minLevel="FATAL" maxLevel="WARN" onMatch="ACCEPT" onMismatch="DENY"/>
</Console>

关于min/max-Level属性的一点说明:它在某种程度上有些违反直觉,因为FATAL是最小级别,而ALL是最高级别。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接