Which is the difference between logger level and threshold filter level in Logback?

Héc*_*tor 3 logging logback

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?

NAI*_*AIT 7

为记录器分配的级别是记录器使用的级别,而在过滤器内部分配 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)