繁体   English   中英

Spring Boot 中的配置文件特定日志记录

[英]Profile specific logging in Spring Boot

我们有一个使用 log4j2 的 Spring Boot 应用程序。

我们希望为不同的配置文件使用不同的日志级别。 经过很多努力,我发现这在 log4j2 中是不可能的,但在 logback 中是可能的。 不过我不想使用 logback。

log4j2 无法做到这一点的原因是 - spring boot 在加载应用程序属性之前会很好地初始化 log4j2。

因此,我已经使用 log4j2.xml 中的所有默认值初始化了 log4j2,并且在应用程序启动后,我正在获取记录器上下文并以编程方式根据配置文件特定的日志级别更改日志级别。

虽然这是有效的,只是想了解是否有更好的方法。

根据此博客,可以在配置文件之间分离 log4j2 日志记录。 我也做到了。

为什么不根据配置文件创建 log4j2.xml? 像下面

spring:
  config:
    activate:
      on-profile: dev

logging:
  config: classpath:log4j2-dev.xml

---
spring:
  config:
    activate:
      on-profile: sandbox

logging:
  config: classpath:log4j2-sb.xml

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM