提问者:小点点

使用环境变量时,不会采用spring boot中日志记录级别的默认值


如果我想通过环境变量在yaml配置中设置日志记录级别,并且没有设置环境变量,则不会采用默认值。

logging.level.: ${LOG_LEVEL:INFO}
logging.level.org.hibernate: ${LOG_LEVEL_HIBERNATE:INFO}

输出:

o.s.b.l.LoggingApplicationListener: Cannot set level: ${LOG_LEVEL:INFO} for ''
o.s.b.l.LoggingApplicationListener: Cannot set level: ${LOG_LEVEL_HIBERNATE:INFO} for 'org.hibernate'

这仅在设置日志记录级别时发生,因为在< code > LoggingApplicationListener # setlog levels 中没有使用PropertyPlaceholderResolver。所有其他属性都可以通过env变量及其所属的默认值来设置...

是否有人解决了这个问题,可能是通过重写<code>LoggingApplicationListener</code>?


共1个答案

匿名用户

这在Spring Boot中不受支持(现在是: https://github.com/spring-projects/spring-boot/issues/1680)。