Spring Boot:如何使用 application.properties 设置日志记录级别?

新手上路,请多包涵

这是一个非常简单的问题,但我找不到信息。

(也许我对 Java 框架的了解严重不足)

如何使用 application.properties 设置日志记录级别?

和记录文件位置等?

原文由 zeodtr 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 649
2 个回答

更新: 从 Spring Boot v1.2.0.RELEASE 开始, application.propertiesapplication.yml 中的设置适用。请参阅参考指南的 日志级别部分

 logging.level.org.springframework.web: DEBUG
logging.level.org.hibernate: ERROR

对于早期版本的 Spring Boot,您不能。为此,您只需使用日志框架(log4j、logback)的正常配置即可。将适当的配置文件( log4j.xmllogback.xml )添加到 src/main/resources 目录并根据您的喜好进行配置。

从命令行启动应用程序时,您可以通过指定 --debug 来启用调试日志记录。

Spring Boot 还为 logback 提供了一个很好的起点,可以配置一些默认值、着色等 base.xml 文件,您可以简单地将其包含在 logback.xml 文件中。 (这也是 Spring Boot 中默认的 logback.xml 推荐的。

 <include resource="org/springframework/boot/logging/logback/base.xml"/>

原文由 M. Deinum 发布,翻译遵循 CC BY-SA 4.0 许可协议

根据 文档,您可以 根据 java 包具有不同的日志记录级别

  logging.level.com.mypackage.myproject=WARN
 logging.level.org.springframework=DEBUG
 logging.level.root=INFO

这将意味着

  • 对于您的自定义包 com.mypackage.myproject 将应用 WARN 日志记录级别
  • 对于spring框架包 org.springframework DEBUG 日志级别将被应用
  • 对于每个其他包,将应用 INFO 日志记录级别

您还可以将不同的 java 包组合在一起,并指示系统在一行中对该组的所有包使用相同的日志记录级别。

在前面的例子中,你可以做

 logging.level.root=INFO
 logging.level.org.springframework=DEBUG

 logging.group.myCustomGroup = com.mypackage.myproject, com.otherpackage.otherproject, com.newpackage.newproject
 logging.level.myCustomGroup=WARN

这意味着包

  • com.mypackage.myproject
  • com.otherpackage.otherproject
  • com.newpackage.newproject

都会应用日志级别 WARN

原文由 Panagiotis Bougioukos 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进