I have an appender with a ThreshholdFilter with level INFO:
<appender name="my_apender" class="com.my.apender.MyAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
</appender>
Run Code Online (Sandbox Code Playgroud)
and a logger with level INFO, too:
<logger name="whatever" level="INFO">
<appender-ref ref="my_appender"/>
</logger>
Run Code Online (Sandbox Code Playgroud)
Which is the difference between both levels?
为记录器分配的级别是记录器使用的级别,而在过滤器内部分配 ch.qos.logback.classic.filter.ThresholdFilter的级别是此附加程序将从中记录内容的级别,有关更多详细信息。
这是一个澄清事情的例子:
<!-- 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>
Run Code Online (Sandbox Code Playgroud)