【发布时间】:2018-02-13 12:11:10
【问题描述】:
logback.spring.xml 配置为仅登录单个类
<logger name="classname">
<appender-ref ref="AUDIT_LOG"/>
</logger>
在课堂上只有 1 个记录调用。但是当我查看创建的日志文件时,有 40 000 多行废话。有我想要的 1 行,但其他 40 000 行不应该在那里。
我必须如何配置 logback 以确保日志文件只包含 1 个 log invcation 而没有其他内容?
<appender name="AUDIT_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH}/audit/audit.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${LOG_PATH}/audit/audit.%i.log.gz</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>10MB</maxFileSize>
</triggeringPolicy>
<encoder>
<charset>utf-8</charset>
<Pattern>${FILE_LOG_PATTERN}</Pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
</appender>
【问题讨论】:
-
请提供整个 logback.spring.xml
-
AUDIT_LOGappender 被配置为接受由classname发出的日志事件,但它也被配置为接受所有级别为INFO的日志,所以大概“40 000 + 行废话”是应用程序中其他类发出的 INFO 级别事件。 -
40 000 + 行中的大多数是调试、跟踪、错误等。过滤器信息实际上删除了大部分。但它不可能是正确的,它仍然得到休眠的 i.StatisticalLoggingSessionEventListener 日志。
标签: java spring logging logback slf4j