在我的Spring Boot应用程序中,我具有以下日志记录规范:
logging.level.org.springframework.web: INFO
logging.config: config/logback.xml
此外,在logback.xml中,级别也定义为INFO:
<configuration scan="false">
<appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender">
<discriminator>
<key>loggroup</key>
<defaultValue>common</defaultValue>
</discriminator>
<sift>
<appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/myservice-${loggroup}.log</file>
</sift>
</appender>
<logger name="com.mycompany" level="INFO">
<appender-ref ref="SIFT" />
</logger>
<root level="INFO">
<appender-ref ref="SIFT" />
</root>
仍然收到调试级别日志消息:
{“ timestamp”:1535034810162,“ datetime”:“ 2018-08-23T10:33:30.162-0400”,“ hostname”:“ anarinsky-mbp.mycompany.local”,“ username”:“ alex”, “ level”:“ DEBUG”,“ thread”:“测试人员”,“ loggername”:“ org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping”,“ message”:“找到7个请求处理程序方法com.mycompany.was.service.integration.keyvalue.KeyValueController类:
答案 0 :(得分:0)
您可以简单地添加:
<logger name="org.springframework" level="INFO">
<appender-ref ref="SIFT" />
</logger>
在logback.xml
的结尾处,即com.mycompany
的记录器之后/之前。
虽然不是100%确定这是引起问题的原因。另一种可能性是,对于SIFT
附加程序,根日志级别为INFO
,但是还有默认的日志附加程序也在并行运行,因此不受:
<root level="INFO">
<appender-ref ref="SIFT" />
</root>
这是我的2美分,我可能错了,但也值得一试。
答案 1 :(得分:0)
您的配置不限制输出级别, 它将默认输出级别设置为INFO。 可以在代码中覆盖它, 情况似乎如此。
我相信您想设置一个阈值过滤器。
ThresholdFilter
在Logback Filters Page中进行了说明。