配置如下,root配置为INFO,logger中配置的DEBUG也能打印出来:
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
...
</appender>
<appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
...
</appender>
<logger name="com.lws.test" level="DEBUG"/>
<root level="INFO">
<appender-ref ref="STDOUT"/>
<appender-ref ref="ERROR"/>
</root>
原因为logger配置默认向上级传递日志(日志级别:TRACE < DEBUG < INFO < WARN < ERROR),通过 addtivity 参数配置,默认为true,设置为false则不会向上级输出。
<logger name="com.lws.test" level="DEBUG" addtivity="false"/>
本文介绍了如何配置logback,使得日志同时输出到控制台和文件,并重点解析了logger的additivity属性,说明了其如何影响日志传递。通过设置`<logger name=com.lws.test level=DEBUG additivity=false/>`,可以防止日志向上级传递,确保DEBUG级别日志仅在指定logger中显示。
4758





