logback根据日期和日志大小写入文件

最近工作中遇到一个问题,系统产生的日志文件太大,要不了多久就会达到GB级别,所以决定把日志按照日期和序列号写入文件当中。项目使用的是logback这款插件,经过查找资料发现1.1.7版本的logback已经内置了这项功能,所以将logback更新后修改配置文件就完成了。

<appender name=”ROLLING”
class=”ch.qos.logback.core.rolling.RollingFileAppender”>
<file>${logDir}/mylog.txt</file>

&lt;rollingPolicy
    class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"&gt;
    &lt;!-- rollover daily --&gt;
    &lt;fileNamePattern&gt;${logDir}/mylog-%d{yyyy-MM-dd}.%i.txt&lt;/fileNamePattern&gt;
    &lt;maxFileSize&gt;100KB&lt;/maxFileSize&gt;
    &lt;maxHistory&gt;60&lt;/maxHistory&gt;
    &lt;totalSizeCap&gt;20GB&lt;/totalSizeCap&gt;
&lt;/rollingPolicy&gt;

&lt;encoder&gt;
    &lt;pattern&gt;%msg%n&lt;/pattern&gt;
&lt;/encoder&gt;

</appender>
`
最终的效果图如下:

logback日志

logback日志