2016-12-30 20 views
0

我有一个ThreshholdFilter一个appender级别为INFO:Logback中记录器级别与阈值筛选器级别之间的差异是什么?

<appender name="my_apender" class="com.my.apender.MyAppender"> 
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
     <level>INFO</level> 
    </filter> 
</appender> 

和级别为INFO记录仪,也:

<logger name="whatever" level="INFO"> 
    <appender-ref ref="my_appender"/> 
</logger> 

这是两个层面的区别?

回答

3

分配给记录器的级别是记录器使用的级别,而在过滤器ch.qos.logback.classic.filter.ThresholdFilter内分配的级别是此appender将记录数据的级别,更多details

这里是澄清的东西的示例:

<!-- deny all events with a level below INFO, that is TRACE and DEBUG --> 
<appender name="my_apender1" class="com.my.apender.MyAppender"> 
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
     <level>INFO</level> 
    </filter> 
</appender> 

<!-- deny all events with a level below DEBUG, that is TRACE--> 
<appender name="my_apender2" class="com.my.apender.MyAppender"> 
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
     <level>DEBUG</level> 
    </filter> 
</appender> 

<!-- event with level DEBUG will be handled only by my_apender2, and events with higher levels than DEBUG will be handled by both appenders --> 
<logger name="whatever" level="DEBUG"> 
    <appender-ref ref="my_appender1"/> 
    <appender-ref ref="my_appender2"/> 
</logger> 
相关问题