logback 解析二

1.Appender:用于指定日志输出的目的地,目的地可以是控制台、文件、远程套接字服务器、 MySQL、 PostreSQL、Oracle和其他数据库、 JMS和远程UNIX Syslog守护进程等。

     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节点指定),过滤后会返回一个枚举值,即DENYNEUTRALACCEPT其中之一:

    A、返回DENY,日志将立即被抛弃不再经过其他过滤器;

    B、返回NEUTRAL,有序列表里的下个过滤器过接着处理日志;

    C、返回ACCEPT,日志会被立即处理,不再经过剩余过滤器


4、Filter 过滤器

    Logback-classic提供两种类型的过滤器:常规过滤器和TuroboFilter过滤器。Logback整体流程:Logger 产生日志信息;Layout修饰这条msg的显示格式;Filter过滤显示的内容;Appender具体的显示,即保存这日志信息的地方。

5、logger节点:

用来设置某一个包或者具体的某一个类的日志打印级别、以及指定appenderlogger仅有一个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".

7pattern节点定义的输出模式解释:

%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]



猜你喜欢

转载自blog.csdn.net/chenyu201003/article/details/62418673