Spring Boot 支持 Java Util Logging,Log4J,Log4J2 和 Logback 等日志框架,默认采用 Logback 日志。
在实际 Spring Boot 项目中使用 Spring Boot 默认日志配置是不能够满足实际生产及开发需求的,需要选定适合的日志输出框架,灵活调整日志输出级别、日志输出格式等。
此处主要讲述如何进行 Spring Boot 项目的 Logback 默认日志详细配置。
强烈建议使用默认的 Logback 日志配置,因为它比 log4j 性能好很多!
Spring Boot 自动整合了 logback 和 log4j2,所以无需引入相关依赖。
在 resources 目录下,新建日志配置文件 logback-spring.xml
:
首先,官方推荐使用的 xml 名字的格式为:logback-spring.xml 而不是 logback.xml,至于为什么,因为带 spring 后缀的可以使用
这个标签(PS:这个标签用于切换“开发环境”和“生产环境”)。
下面配置可看情况自行修改!
本文配置参考:传送门
true
logs/%d{yyyy-MM-dd}/springboot_%i.log
30
10MB
%date %level [%thread] %logger{10}.%class{0}#%method[%file:%line] %n%msg%n
utf-8
true
logs/%d{yyyy-MM-dd}/springboot-error_%i.log
30
10MB
%date %level [%thread] %logger{10}.%class{0}#%method[%file:%line] %n%msg%n
utf-8
ERROR
ACCEPT
DENY
%date %level [%thread] %logger{10}.%class{0}#%method[%file:%line] %n%msg%n
两种方式使用日志:
直接在需要使用日志打印的类上添加 lombok 的注解 @Slf4j
即可!
PS:注意需要添加 Lombok 依赖!
org.projectlombok
lombok
true
示例:
@SpringBootTest
@Slf4j
class RedisMysqlDemoApplicationTests {
@Test
void contextLoads() {
// 日志级别从低到高分为 TRACE
声明日志类
PS:注意 Logger
和 LoggerFactory
导的哪个包!
import org.junit.jupiter.api.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class RedisMysqlDemoApplicationTests {
private static final Logger log = LoggerFactory.getLogger(RedisMysqlDemoApplicationTests.class);
@Test
void contextLoads() {
// 日志级别从低到高分为 TRACE
都看到最后了,右下角来个赞鸭!-.- 欢迎评论留言~
参与评论
手机查看
返回顶部