logback的日期和文件大小共同作用日志分割

本文深入分析了日志管理中SizeBasedTriggeringPolicy与TimeBasedRollingPolicy联合使用的问题,指出当文件大小超过设定阈值后并未触发时间滚动策略生效的现象,并提供了解决方案。

转自http://openmind.iteye.com/blog/1840000

<appender name="FILE"  
        class="ch.qos.logback.core.rolling.RollingFileAppender">  
        <file>/var/log/testglog</file>  
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
            <!-- daily rollover -->  
            <fileNamePattern>/var/log/test.%d{yyyy-MM-dd}.log</fileNamePattern>  
            <!-- keep 30 days' worth of history -->  
            <maxHistory>30</maxHistory>  
        </rollingPolicy>  
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">  
            <maxFileSize>10MB</maxFileSize>  
        </triggeringPolicy>     
        <encoder >  
            <Pattern>%-15d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{0}[%file:%line] - %msg%n %ex{2}</Pattern>  
            <charset>UTF-8</charset>  
            <immediateFlush>true</immediateFlush>  
        </encoder>  
    </appender>  

上面SizeBasedTriggeringPolicy和TimeBasedRollingPolicy联合使用方式有问题,当size超过10M后并没有触发TimeBasedRolling生效,见http://jira.qos.ch/browse/LOGBACK-73



正确的配置是: Size and time based archiving

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值