Layout:负责把事件转换成字符串,格式化的日志信息的输出。具体的Layout通配符,可以直接查看帮助文档。
2、Level 有效级别
Logger可以被分配级别。级别包括:TRACE、DEBUG、INFO、WARN和ERROR,定义于ch.qos.logback.classic.Level类。程序会打印高于或等于所设置级别的日志,设置的日志等级越高,打印出来的日志就越少。如果设置级别为INFO,则优先级高于等于INFO级别(如:INFO、 WARN、ERROR)的日志信息将可以被输出,小于该级别的如DEBUG将不会被输出。为确保所有logger都能够最终继承一个级别,根logger总是有级别,默认情况下,这个级别是DEBUG。
3、
可以在appender中使用filter节点(过滤器),在此节点内过滤日志级别(使用level节点指定),过滤后会返回一个枚举值,即DENY,NEUTRAL,ACCEPT其中之一:
A、返回DENY,日志将立即被抛弃不再经过其他过滤器;
B、返回NEUTRAL,有序列表里的下个过滤器过接着处理日志;
C、返回ACCEPT,日志会被立即处理,不再经过剩余过滤器
4、Filter 过滤器
Logback-classic提供两种类型的过滤器:常规过滤器和TuroboFilter过滤器。Logback整体流程:Logger 产生日志信息;Layout修饰这条msg的显示格式;Filter过滤显示的内容;Appender具体的显示,即保存这日志信息的地方。
5、logger节点:
用来设置某一个包或者具体的某一个类的日志打印级别、以及指定appender。logger仅有一个name属性和两个可选的level、 addtivity属性。
Name属性:用来指定受此logger约束的某一个包或者具体的某一个类。
Level属性:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR
如果未设置此属性,那么当前logger将会继承上级的级别。
Addtivity属性:用来设置是否向上级logger传递打印信息。默认是true。
logger可以包含零个或多个appender-ref元素,标识这个appender将会添加到这个logger
6、root节点:
也是<loger>元素,但是它是根loger。只有一个level属性,应为已经被命名为"root".
7、pattern节点定义的输出模式解释:
%d{HH:mm:ss.SSS} 当前时间;
[%thread] [当前线程名称]
%-5level logger级别
%logger{36} logger名称
-%msg%n 定义的输出
%line 输出日志的行号
%n 换行
%date和%d{yyyy-MM-dd HH:mm:ss.SSS} 当前时间包含年月日
{%C.java:%L} 输出日志所在的java类、所在行及路径可以替换[%thread]