能否通过VM属性开启Spring Boot应用的DEBUG日志级别?
可以通过命令行选项实现,无需修改配置文件或重新打包
方法1:使用VM系统属性(-D参数)
SLF4J是日志门面框架,实际底层常用Logback(Spring Boot默认)或Log4j2,对应命令行参数如下:
底层为Logback时
java -Dlogging.level.your.package=DEBUG -jar your-app.jar
将your.package替换为你代码所在的包路径(比如com.example.demo),该包下所有通过org.slf4j.Logger打印的debug日志都会生效。若要全局开启应用代码的DEBUG日志,可替换为-Dlogging.level.root=DEBUG(会包含第三方依赖的日志,按需选择)。
底层为Log4j2时
java -Dlog4j2.logger.your.package=DEBUG -jar your-app.jar
方法2:使用Spring Boot命令行参数(--参数)
Spring Boot支持通过启动参数直接覆盖配置项,和application.properties的配置逻辑一致:
java -jar your-app.jar --logging.level.your.package=DEBUG
这种方式无需修改配置文件,重启应用后即可让指定包下的logger.debug()日志生效。
验证方式
启动应用后触发代码中调用logger.debug("调试信息")的逻辑,即可看到对应的DEBUG日志输出。
内容的提问来源于stack exchange,提问作者Nicolas Baumann
相关产品推荐
相关产品推荐

