根据Spring Boot文档,只需使用Spring Boot Logging Starter并在应用程序属性中设置适当的logging.level,就可以设置多个日志记录框架(jul,slf4j等)的日志记录级别 . 一切正常,除了我使用的库是jul和日志级别Level.FINER . 但是,Level.INFO已正确记录 .
我在application.properties中将level设置为:
logging.level.=TRACE
哪个应根据SLF4JBridgeHandler记录所有内容 .
我缺少什么,或者它是一个回归问题(由首发使用)而不是我的误解?
2 回答
SLF4JBridgeHandler仅从jul Loggers上的已启用级别接收LogRecord(此事实隐藏在install方法的javadoc中)
由于默认JUL配置仅记录INFO或更高级别,因此桥接器不会收到FINE / FINER / FINEST级别 .
为了 test 这你可以像这样强制root jul Logger 的级别:
(或在JVM上显式配置自定义logging.properties和.level = FINE)
必须使用slf4j级别配置(通过application.properties中的logback.xml或logging.level.xxxxxx属性)完成此配置
(请注意,您应该在jul 生产环境 配置中更具体,因为slf4j文档warns关于"jul enabled"但"slf4j disabled"日志的性能影响)
请参阅我的相关答案:https://stackoverflow.com/a/33770877/3004042
简而言之,使用带有Logback的Spring Boot 1.3.0版 .