原文:http://blog.csdn.net/llmmll08/article/details/70217120
本文介绍 SLF4J 和 Logback 在 Maven 项目中的用法,包括日志框架的依赖、使用,以及 XML 配置文件的引入。本文的精华内容翻译 Base22,文章来源见文末。
1. 将框架 SLF4J & Logback 添加到 Maven 项目中。
通过简单的几个步骤,即可将 SLF4J 和 Logback 添加到 Maven 项目中。
1.1 将依赖添加到 Maven 的 POM.xml 中
直接在 Maven Repository 中搜索 Logback
, 选择使用量最大的「Logback Classic Module」, 将该依赖添加到 POM.xml 中,例如:
<!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency>
将会在项目中导入如下类库:
- logback-classic.x.x.x.jar
- logback-core.x.x.x.jar
- slf4j-api-x.x.x.jar
1.2 使用 XML 配置文件初始化
将 XML 配置文件 logback.xml
和 logback-test.xml
按照以下层次结构添加到项目中:
- src
- main
- resources
- logback.xml
- resources
- test
- resources
- logback-test.xml
- resources
- main
其中,两配置文件的内容如下:
logback.xml
<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern> </encoder> </appender> <logger name="com.base22" level="TRACE"/> <root level="debug"> <appender-ref ref="STDOUT"/> </root> </configuration>
logback-test.xml
<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern> </encoder> </appender> <root level="debug"> <appender-ref ref="STDOUT"/> </root> </configuration>
在 logback.xml
中可以看到,包 com.base22
的 level 是 TRACE
, 通过设置 logger
节点,可以指定特定包的 level。
除了特定包之外,项目的日志 level 均由 root
节点指定。
2. Log 的基本使用
使用 Log 时,需要在每个 class
文件中进行初始化操作。
首先导入如下内容:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
- 1
- 2
- 1
- 2
之后可使用如下语句引入 log :
static final Logger logger = LoggerFactory.getLogger(MyClassName.class);
- 1
- 1
其中 MyClassName
改为该类的类名。
亦可在类的构造方法中使用如下语句初始化:
Logger logger = LoggerFactory.getLogger(getClass());
- 1
- 1
之后可在方法中调用如下语句进行 log 操作:
logger.debug("debug");
logger.info("info");
- 1
- 2
- 1
- 2
3. 日志的级别 (level) 参考
日志的级别 (level) 由低到高排列如下:
- trace
- debug
- info
- warn
- error