logback系列教程
logback是一个开源的日志组件,同样是由log4j的作者设计完成的,拥有更好的特性,用来取代log4j的一个日志框架。
模块
logback-core
是logback-access,logback-classic两个模块的基础
logback-classic
它是log4j的一个改良版本,同时它完整实现了slf4j API,使我们可以在其他日志系统,如log4j和JDK14 Logging中进行转换
logback-access
访问模块和Servlet容器集成,为tomcat等提供通过Http来访问日志的功能
主要类
Logger
位于 logback-classic模块中,作为日志的记录器,把它关联到应用的对应的context后,主要用于存放日志对象,也可以定义日志类型、级别。详解可以见log4j logger
位于logback-core中,主要用于指定日志输出的目的地,目的地可以是控制台、文件、远程套接字服务器、MySQL、PostreSQL、Oracle和其他数据库、JMS和远程UNIX Syslog守护进程等。
Layout
位于logback-core中,负责把事件转换成字符串,格式化日志信息的输出,详细可以见log4j的layout详解
Appender和Layout 并不关心Logger的存在,不依赖于Logger,同时也能看出,Logger 会依赖于Appender 和 Layout 的协助,日志信息才能被正常打印出来。
Filter主要应用在appeder上,只在appender级别起作用,起到过滤日志相关作用。
日志级别
logback有5种级别,分别是TRACE < DEBUG < INFO < WARN < ERROR,定义于ch.qos.logback.classic.Level类中。
配置文件
logback一般通过logback.xml进行配置
配置读取步骤:
(1) 尝试在classpath下查找文件logback-test.xml
(2) 如果文件不存在,则查找文件logback.xml
(3) 如果两个文件都不存在,则用BasicConfigurator自动对自己进行配置,把记录输出到控制台
maven依赖
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.21</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>1.1.7</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.1.7</version> </dependency>
实例
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。