您的位置:首页 > 其它

整理的logback日志配置

2017-01-07 17:06 696 查看
       这是我整理的logback日志配置,关于logback本文就不详细介绍了,网络上有很多文章。当然网络上也有很多配置示例,发现很多都是msg后置,logger在前面,这样主要输出信息将在后面,而包名、类名什么的在前面,个人感觉影响阅读。于是分享一下自己的logback配置。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="logDir" value="/data/server/logs/lt-trade" />

<!-- 控制台输出 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{MM-dd HH:mm:ss.SSS} %-5level %msg [%thread] %logger:%L %n</pattern>
</encoder>
</appender>

<!-- DEBUG日志 -->
<appender name="DEBUG" class="ch.qos.logback.core.rolling.RollingFileAppender">

<file>${logDir}/log_debug.log</file>

<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>DEBUG</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>

<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${logDir}/log_debug/log_debug.%d{yyyy-MM-dd}-%i.log</fileNamePattern>
<maxFileSize>10MB</maxFileSize>
<maxHistory>30</maxHistory>
</rollingPolicy>

<encoder>
<pattern>%d{MM-dd HH:mm:ss.SSS} %-5level %msg [%thread] %logger:%L %n</pattern>
</encoder>

</appender>

<!-- INFO日志 -->
<appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">

<file>${logDir}/log_info.log</file>

<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>

<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${logDir}/log_info/log_info.%d{yyyy-MM-dd}-%i.log</fileNamePattern>
<maxFileSize>10MB</maxFileSize>
<maxHistory>30</maxHistory>
</rollingPolicy>

<encoder>
<pattern>%d{MM-dd HH:mm:ss.SSS} %-5level %msg [%thread] %logger:%L %n</pattern>
</encoder>

</appender>

<!-- ERROR日志 -->
<appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">

<file>${logDir}/log_error.log</file>

<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>

<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${logDir}/log_error/log_error.%d{yyyy-MM-dd}-%i.log</fileNamePattern>
<maxFileSize>10MB</maxFileSize>
<maxHistory>30</maxHistory>
</rollingPolicy>

<encoder>
<pattern>%d{MM-dd HH:mm:ss.SSS} %-5level %msg [%thread] %logger:%L %n</pattern>
</encoder>

</appender>

<root>
<!-- 日志级别 -->
<level value="INFO" />

<!-- 文件输出 -->
<appender-ref ref="DEBUG" />
<appender-ref ref="INFO" />
<appender-ref ref="ERROR" />

<!-- 控制台输出 -->
<appender-ref ref="STDOUT" />
</root>
</configuration>
       使用logback也非常简单,在pom文件中添加:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>

<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.7</version>
</dependency>
       代码示例:
public class Test {

public static void main(String[] args) {

Logger LOGGER = LoggerFactory.getLogger(Test.class);
LOGGER.debug("显示debug级别日志...");
LOGGER.debug("显示debug级别日志...");
LOGGER.debug("显示debug级别日志...");
LOGGER.info("显示info级别日志...");
LOGGER.info("显示info级别日志...");
LOGGER.info("显示info级别日志...");
LOGGER.error("显示error级别日志...");
LOGGER.error("显示error级别日志...");
LOGGER.error("显示error级别日志...");

}

}
       输出效果:

                                 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: