如果对slf4j有不太了解的,可以参考本人另外一片文章日志框架之2 slf4j+logback实现日志架构
实现
添加依赖
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
修改配置文件
在resources下面创建logback.xml配置文件
<?xml version="1.0" encoding="utf-8"?>
<configuration scan="true" scanPeriod="1 seconds" debug="true">
<timestamp key="byDay" datePattern="yyyy-MM-dd"/>
<timestamp key="byHour" datePattern="yyyyMMdd_HH"/>
<timestamp key="byMinute" datePattern="yyyyMMdd'T'HH:mm"/>
<timestamp key="bySecond" datePattern="yyyyMMdd'T'HHmmss"/>
<property name="pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} [%file:%line] - %msg%n"/>
<property name="charsetEncoding" value="UTF-8"/>
<!--控制台日志-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${pattern}</pattern>
<charset>${charsetEncoding}</charset>
</encoder>
</appender>
<!--滚动文件日志-->
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>./logback/mylog.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>./logback/mylog.%d{yyyy-MM-dd_HH}.log</fileNamePattern>
<maxHistory>30</maxHistory>
<totalSizeCap>3GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>${pattern}</pattern>
</encoder>
</appender>
<!--设置多个级别的日志-->
<root level="debug">
<appender-ref ref="console"/>
<appender-ref ref="file"/>
</root>
</configuration>
代码实现
新建TestLogger.java
public class TestLogger {
private static final Logger _logger = LoggerFactory.getLogger(TestLogger.class) ;
public static void main(String[] args) {
for(int i=0;i<10;i++){
_logger.info("服务器日志{}",i);
}
}
}
运行
运行TestLogger.java文件,效果如图
项目结构图