我们有一个多模块的Spring Boot项目,它有DEBUG
级别的日志记录,需要更改为INFO
级别。由于它使用的是Spring Boot 1.2.5,我按照here和here的说明操作,但在logging.level.org.springframework.web=INFO
中设置application.properties
无效,我们不断获得DEBUG
日志中的消息。
但是,在上述网站上提供类似于logback.xml
的{{1}}并设置级别有效。即使没有明确设置,因为Spring base.xml
附带的logback.xml
包含在我们的INFO
中,默认情况下根日志记录级别设置为application.properties
。
Spring Boot默认使用带有Logback的SLF4J,但我们不希望因此而依赖Logback,我们应该能够从application.properties
配置日志记录级别。该项目是以编程方式配置的,因此src/main/resources
不包含任何其他内容。两个配置文件都位于logging.level.*=INFO
下的类路径中。
我尝试使用:
,尝试了不同的分隔符(,
=
,application.properties
)。我搜索了项目文件,但没有发现现有日志配置的痕迹。
导致logback.xml
被忽略/覆盖但logging.level.org.springframework.web=INFO
不被覆盖的原因是什么?
application.properties
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml"/>
</configuration>
logback.xml
Select
t.StartingId,
t.EndingId,
t.TripCount
FROM
MyTable t
INNER JOIN
MyTable t2
ON
t2.StartingId = t.EndingId AND t2.EndingId = t.StartingId
答案 0 :(得分:1)
尝试设置要与spring.config.location
或spring.config.name
一起使用的application.properties文件的名称(有关详细信息,请参阅docs)
除此之外,您还可以使用Actuator的/env
端点来查看Spring Boot处理哪些文件以及从中读取哪些值。这将告诉您是否有比您提供的更多的配置文件。
也许快速检查可能有所帮助:检查application.properties中的某些内容,例如server.port=4711
,然后您将立即知道是否读取了该文件。
请记住,在读取application.properties之前会写入一些日志记录输出。这意味着在Spring Boot得知你不想看到它们之前,可能已经写了一些org.springframework.web消息。
答案 1 :(得分:0)
如果您放置logback.xml
Spring Boot将使用Logback
作为主要LoggingSystem
。除了commons-logging API之外,Spring Boot没有强制的日志记录依赖性。