spring boot logback 日志多环境配置uat dev prd等及logPath_IS_UNDEFINED问题解决

本文介绍如何在Spring Boot中使用自定义日志配置实现多环境日志管理,避免logPath_IS_UNDEFINED文件夹问题。通过环境变量和不同配置文件(如logback-xxx.xml)实现灵活的日志级别和路径设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用自定义日志配置日志多环境配置.https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-custom-log-levels

logging.config 指定自定义logback-xxx.xml配置文件,不要使用logback-spring.xml,因为会出现logPath_IS_UNDEFINED文件夹.

https://blog.youkuaiyun.com/vitech/article/details/53812137,使用此博客中的方式,可以实现日志多环境,但是每次启动都会产生logPath_IS_UNDEFINED文件夹.猜测原因是springboot会加载两次logback-spring.xml,第一次加载配置,

 <springProperty scope="context" name="logPath" source="log.path"/>

参数还未加载,第二次加载配置才完成参数加载.

具体解决方案.

1.配置logback-xxx.xml配置文件,使用springProperty标签获取环境变量,具体参照博客https://blog.youkuaiyun.com/vitech/article/details/53812137

2.在application-uat,application-dev,application-prd中配置环境变量如:log.path=logs/logback/logs

3,在application-uat,application-dev,application-prd中指定自定义配置logging.config=logback-xxx.xml.

此方法中仅使用了一个配置文件logback-xxx.xml,通过环境变量实现日志多环境配置

还可以配置多个配置文件如logback-uat.xml,logback-dev.xml,logback-prd.xml,根据不同的配置需求分别加载不同的配置文件

具体实现方案

1配置logback-uat.xml,logback-dev.xml,logback-prd.xml文件

2.在application-uat,application-dev,application-prd中分别指定自定义配置logging.config=logback-uat.xml,logback-dev.xml,logback-prd.xml

具体参照博客

https://blog.youkuaiyun.com/u011961421/article/details/78739805

 

参考配置

bootstrap.yml指定启动配置

spring:
  application:
    name: xxx
  profiles:
    active: uat

application.yml 通用配置,如datasource连接池大小等,通用环境变量

application-uat,application-dev,application-prd 个性配置,如datasource连接驱动配置等,个性环境变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值