logger标签共有三个属性。
name: 必选,用来指定受此loger约束的某一个包或者具体的某一个类。
level: 用来设置打印级别(日志级别),大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,还有一个特俗值INHERITED或者同义词NULL,代表强制执行上级的级别。如果未设置此属性,那么当前loger将会继承上级的级别。
additivity: 是否向上级loger传递打印信息。默认是true。
root 标签只有一个level 属性,是logger的上级
level: 大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,不能设置为INHERITED或者同义词NULL。默认是DEBUG。
root和logger是父子的关系,logger的appender根据参数additivity决定是否要叠加root的appender,logger的级别是其自身定义的级别,和root的级别没什么关系。
首先找到这个类所在的logger(没有特别定义则默认为root),然后根据以上规则判断出这个logger的appender和level,就可以知道这个类的哪些日志会被输出到哪些地方了。
注意:任何一个类只会和一个logger对应,要么是定义的logger,要么是root,判断的关键在于找到这个logger,然后判断这个logger的appender和level。
logback.xml配置篇-logger与root标签详解_Falling the bowie的博客-CSDN博客_logback.xml logger标签