slf4j:
slf4j(simple logging facade for java),java的简单日志外观,不提供完整的日志记录解决方案;为各种 loging APIs 提供一个简单统一的接口,实现日志框架一些通用的api。
操作步骤
添加lombok和slf4j依赖:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
/src/main/resource中创建logback-spring.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<contextName>logback</contextName>
<!--日志输出到控制台-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!--按天生成日志-->
<appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<Prudent>true</Prudent>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志名称为mylog下按日期命名的log文件-->
<FileNamePattern>
mylog/%d{yyyy-MM-dd}/%d{yyyy-MM-dd}.log
</FileNamePattern>
<!--日志最长保存时间为30天-->
<MaxHistory>30</MaxHistory>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%d{yyyy-MM-dd HH:mm:ss} -%msg%n
</Pattern>
</layout>
<!--日志内存限制为10MB-->
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>10MB</MaxFileSize>
</triggeringPolicy>
</appender>
<!-- 确定具体的包或类的日志输出级别-->
<logger name="com.example.demo" additivity="false">
<appender-ref ref="console"/>
<appender-ref ref="logFile"/>
</logger>
<root level="info">
<appender-ref ref="console"/>
<appender-ref ref="logFile"/>
</root>
</configuration>
修改yml配置文件
logging:
config: src/main/resources/logback-spring.xml
level:
com.example.demo: debug
测试
在之前创建的SpringBoot项目中进行测试
加入slf4j注解
方法中加入日志信息
postman测试查询成功
控制台输出信息如下:
生成日志文件
测试成功