sl4j loggback配置相同的记录器到两个不同级别的appender

时间:2012-08-12 19:56:44

标签: java logging slf4j logback

如何在SL4J中配置loggback? 我的项目有很多类:class1,class2,class3 ...... 我想做这两件事: 将所有类记录到名为FILE1且具有WARN级别的文件追加程序(class1,class2,class3 ...) 将名为class1的一个类记录到名为FILE2且具有DEBUG级别的文件追加程序。

问题在于,当我将具有WARN级别的class1配置为FILE1 appender的记录器时,我不知道如何将具有不同级别的FILE2 appender配置为相同的记录器(class1)(在本例中为DEBUG)。 我可以将两个appender配置到同一个类,但不能配置不同的级别。

1 个答案:

答案 0 :(得分:1)

1 /为class1 logger

设置日志级别为DEBUG
 <logger name="class1" level="DEBUG"/>

2 /对于appender FILE1,使用ThresholdFilter过滤低于日志级别的任何日志记录事件WARN

<appender name="FILE1" class="ch.qos.logback.core.FileAppender"> 
<filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
  <level>WARN</level> 
</filter> 
 ...  
</appender> 

这会将DEBUG上方的所有日志记录事件发送到appender FILE2,但只发送WARN以上的事件来附加FILE1。