举例的情况:
debug level的信息——输出到console
error level的信息——输出到文件中
log4j的配置信息:
参数Threshold,举例Threshold设置成warn,那么低于warn的level,都可以在用这个appender输出。
<appender name="OutInfo" class="org.apache.log4j.ConsoleAppender">
<param name="Threshold" value="WARN"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-4r [%t] %-5p %c %x - %m%n" />
</layout>
</appender>
这个方法在log4j.properties也可以使用,具体是log4j.appender.OutInfo.Threshold = WARN
参数filter可以设置上下限
<appender name="OutFile" class="org.apache.log4j.FileAppender">
<param name="File" value="sample.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-4r [%t] %-5p %c %x - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMin" value="ERROR" />
<param name="LevelMax" value="FATAL" />
<param name="AcceptOnMatch" value="true" />
</filter>
</appender>
上面的filter就是把ERROR和FATAL的信息输出到sample.log文件中去。这个参数在log4j.properties中无效,所以偏向用xml的配置文件了,而且xml的配置文件比较清晰。
如果 <param name="LevelMin" value="ERROR" />
<param name="LevelMax" value="ERROR" />
是不是仅作用与ERROR,不妨去试试。
本文详细介绍了Log4j的日志级别配置方法,包括如何通过Threshold参数控制不同级别的日志输出,以及如何利用filter参数实现特定级别日志的过滤输出。
1160

被折叠的 条评论
为什么被折叠?



