java - 在 Log4j 中,LevelRangeFilter 和 Threshold 之间有什么区别?

标签 java log4j

LevelRangeFilterThreshold 之间有什么区别?我什么时候会使用其中一种而不是另一种?

<filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="DEBUG"/>
</filter>
<param name="Threshold" value="DEBUG"/>

最佳答案

两个选项将具有相同的行为。不过阈值应该更快。

如果您想要更大的灵 active ,您应该使用“过滤器”。除了能够定义 LevelMin 和 LevelMax 之外,过滤器还允许您实现自己的逻辑,如果需要,您还可以将它们链接在一起。

如果您只需要基本的“阈值”功能,我会选择您的第二个选项。

您可以通过 AppenderSkeleton 获取更多详细信息API。请注意简单的 setThresholdaddFilterdecide,它们确定是否将 LoggingEvent 传递给其他过滤器。

关于java - 在 Log4j 中,LevelRangeFilter 和 Threshold 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15281301/

相关文章:

java - 仅更新已更改字段的表

java - : I have a requirement of matching the value request parameter with unicode charcters but it should not allow space 的正则表达式

jboss - 如何使用 Jboss AS 7.1 启用自定义 log4j

java - 将aspectj应用于整个包而不是特定的类

java - Kafka Consumer输出过多的DEBUG语句到console(eclipse)

java - org.w3c.dom.Element setAttribute ("xlink:href",文件名)

java - 从批处理文件的进程中读取 InputStream 会跳到下一行

Java动态获取设置方法

java - 如何将 uuid 添加到 log4j 以登录文件?

java - 将 e.printStackTrace() 转换为使用 log4j