一、概述
SpringBoot官方文档
Springboot 默认读取的是项目内的 resources 中 logback 配置文件。
如果 classpath(resources) 下有logback-test.xml会优先生效,并且会和其他logback文件同时生效。
Springboot 默认日志级别是DEBUG,所以在logback初始化之前,会有DEBUG日志输出。
二、项目内外配置

注意:logback-{xxx}.xml不能直接放在resources目录下,否则logback-test.xml会优先生效。
1.application.yml指定 activeprofiles
- # Spring配置
- spring:
- profiles:
- active: test
2.activeprofiles指定logback-{xxx}.xml
- ########## logback-{xxx}.xml 文件打包在项目内部 ##########
- logging:
- ? ?config: classpath:logback/logback-test.xml
-
- ########## logback-{xxx}.xml 文件打包在项目外部(去掉classpath) ##########
- logging:
- ? config: /Users/wangfugui/Downloads/logback/logback-test.xml
3.logback-{xxx}.xml
三、使用自定义appender
使用Lombok
Lombok 内置 @Slf4j 、@Log4j2 两种日志注解。
- @Log4j2(topic = "sys-user")
- @Slf4j(topic = "sys-user")
不使用Lombok
- Logger logger = LoggerFactory.getLogger("sys-user");
四、logback查找配置源码
org.springframework.boot.logging.logback.LogbackLoggingSystem
- protected String[] getStandardConfigLocations() {
- return new String[]{"logback-test.groovy", "logback-test.xml", "logback.groovy", "logback.xml"};
- }
五、案例源码
github : https://github.com/duke147/springboot-logback.git
到此这篇关于Springboot内外部logback多环境配置详解的文章就介绍到这了,更多相关Springboot logback多环境配置内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!