EtcSplitting log files by time + size in logback
2015 · 10 · 30
1 min read
Paper
Contents
With logback, the file rolls over when the day passes or the size goes over 100MB.
Add the appender below to logback.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <appender name="debug" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>DEBUG</level>
</filter>
<prudent>false</prudent>
<file>/logs/debug.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>/logs/old/debug.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>100mb</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>[%-5level] %d{HH:mm:ss.SSS} %logger{36} - %msg%n</pattern>
</encoder>
</appender>
|
<maxFileSize /> is the rollover size (kb and gb work too)<maxHistory /> deletes logs older than 30 days, oldest first.