1.logback
为什么使用logback,主要是公司的需要,之前主要是使用log4j,但是也只是简单的使用,没有深入学习。新项目需要使用logback,因此学习了一下。那么今天主要是介绍一下怎样配置一个项目使用logback的日志输出。 当然logback还是主要和slf4j配合使用的。
2.需要的jar包
如果是一个简单的项目,我们需要:
- slf4j-api-1.7.6.jar
- logback-classic-1.1.2.jar
- logback-core-1.1.2.jar 版本随意,建议使用最新版本。
如果使用maven项目,需要在pom.xml文件中配置下面代码,
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.2</version>
</dependency>
###3.logback.xml示例 把logback.xml文件放到工程下(和其他配置文件地址一样)
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<!--Appendar详解: http://logback.qos.ch/manual/appenders.html#RollingFileAppender -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 当前Log文件名 -->
<file>test.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 非当天的Log文件压缩备份为 archive/ldap-pwd.2014-08-10.zip -->
<fileNamePattern>archive/ldap-pwd.%d{yyyy-MM-dd}.zip</fileNamePattern>
<!-- 超过30天的备份文件会被删除 -->
<maxHistory>30</maxHistory>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<!-- 格式说明:http://logback.qos.ch/manual/layouts.html#ClassicPatternLayout -->
<Pattern>%d [%thread] %-5level %40logger{40} - %msg%n</Pattern>
</layout>
</appender>
<logger name="cn.justfly.training.logging" level="info" />
<root level="warn">
<appender-ref ref="FILE" />
</root>
</configuration>
这样就可以输出日志文件啦。
###4.测试代码
package test.com.test;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class LogTest {
private Logger logger = LoggerFactory.getLogger(LogTest.class);
@Test
public void logTest(){
logger.trace("trace test");
logger.debug("debug test");
logger.info("info test");
logger.warn("warn test");
logger.error("error test");
}
}