logback源码分析

LoggerFactory.getLooger(xx.class)做了些什么事情才拿到logger的,打印途中又会发生什么事情。

logback中使用MDC

为了给每个请求打上唯一的标记,用户需要将上下文信息放到 MDC (Mapped Diagnostic Context 的缩写) 中。下面列出了 MDC 类中主要的部分。

logback中的Filter

logback 过滤器基于三元逻辑,允许它们组装或者链接在一起组成一个任意复杂的过滤策略。它们在很大程度上受到 Linux iptables 的启发。

logback中的Layouts

Layout就是负责将事件对象转换为String对象的,而且支持自定义布局,你可以把日志转换为其他格式html,json等等

logback配置中的Encoder

Ecoder负责将事件转换为字节数组,并将该字节数组写出到OutputStream中

logback中的Appender

Appender最终负责输出日志记录事件。但是,他们可以将事件的实际格式委托给Layout或Encoder对象。每个布局/编码器都与一个且只有一个appender相关联。一些appender具有内置或固定的事件格式。因此,它们不需要布局/编码器。例如,SocketAppender可以简单地序列化日志记录事件,然后再通过网络传输它们

logback配置文件语法

因为logback的配置十分灵活,所以无法通过一个DTD文件或者XML Schema来指定允许的语法。

logback的配置

logback的一些基础配置,如何配置加载,自动更新,自动注册关闭hook等

logback的架构

当前logback被分为了三个模块,logback-core、logback-classic、logback-access。还有Logger的继承,Appender的累加,Layout的格式化器。一个log执行到底执行的了些什么

logback介绍

logback是继log4j之后的一个日志框架,比其他现存的日志框架更快占用空间更小,有时候差距很大,还提供了一些其他日志框架没有的功能,作者Ceki Gülcü,也是log4j的开发者之一。
博客
分类
标签
归档
关于