回滚滚动日志记录无效

时间:2016-12-15 13:34:03

标签: java spring logging logback

我正在尝试在基于弹簧的项目中创建记录器策略。

我面临的问题与滚动政策有关。 <{1}}已创建且工作正常,但未创建滚动文件logfile.log

以下是我的rollingfile.log.%d{yyyy-MM-dd}.log

logback.xml

任何帮助将不胜感激。提前谢谢你:D

2 个答案:

答案 0 :(得分:2)

您需要将ch.qos.logback.core.RollingFileAppender指定为appender的类。 FileAppender无法滚动。

答案 1 :(得分:1)


我相信你错过了%i 参数,该参数应该被滚动文件索引所取代(即'mylog.2017-03-13。 0 .txt', 'mylog.2017-03-13。 1 .txt'等。)

此外,像 Uwe Allner 一样,我使用的是RollingFileAppender而不是FileAppender。
(我还建议在配置中添加totalSizeCap,以控制总大小)

这是我的整个appender配置:

<appender name="SQL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>${LOG_HOME}/mylog.txt</file>
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
        <Pattern>
            %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level- %msg%n
        </Pattern>
    </encoder>

    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <maxHistory>3</maxHistory>
        <totalSizeCap>5GB</totalSizeCap>
        <fileNamePattern>${LOG_HOME}/archived/mylog.%d{yyyy-MM-dd}.%i.txt.zip</fileNamePattern>
        <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
            <maxFileSize>20MB</maxFileSize>
        </timeBasedFileNamingAndTriggeringPolicy>
    </rollingPolicy>
</appender>