这个问题很简单,但我找不到资料。 (可能我对Java框架的知识严重缺乏)
如何使用application.properties设置日志级别? 日志文件的位置,等等?
这个问题很简单,但我找不到资料。 (可能我对Java框架的知识严重缺乏)
如何使用application.properties设置日志级别? 日志文件的位置,等等?
当前回答
更新:从Spring Boot v1.2.0开始。释放,应用程序中的设置。属性或应用程序。你可以。请参见参考指南的日志级别部分。
logging.level.org.springframework.web: DEBUG
logging.level.org.hibernate: ERROR
对于早期版本的Spring Boot,您不能这样做。为此,您只需使用日志框架的正常配置(log4j、logback)。将适当的配置文件(log4j.xml或logback.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"/>
其他回答
如果您想使用不同的日志框架(例如log4j),我发现最简单的方法是禁用spring引导自己的日志记录并实现自己的日志记录。这样我就可以在一个文件log4j.xml(在我的例子中)中配置每个日志级别。
要实现这一点,你只需要将这些行添加到你的pom.xml:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j</artifactId>
</dependency>
您可能已经有了第一个依赖项,只需要另外两个依赖项。请注意,这个例子只包含log4j。 以上就是全部内容,现在您就可以在log4j配置文件中为引导配置日志了!
在Springboot 2中,你可以像这样用环境变量设置根日志级别:
logging.level.root=DEBUG
或者你可以像这样为包设置特定的日志记录:
logging.level.my.package.name=TRACE
我们也可以像下面这样通过命令行打开DEBUG日志
java -jar <jar file> --debug
logging:
level:
root: INFO
com.mycompany.myapp: DEBUG
确保Dave Syer技巧得到一些喜爱,因为向应用程序添加debug=true。属性确实会启用调试日志记录。