【参考文章】:官方文档:Logback configuration
【参考文章】:logback的使用和logback.xml详解
【参考文章】:Logback源码赏析-日志按时间滚动(切割)
1. 日志文件滚动策略(rollingPolicy)
1.1 基于时间的滚动策略
1.1.2 class
ch.qos.logback.core.rolling.TimeBasedRollingPolicy
1.1.3 基本属性
fileNamePattern
maxHistory
totalSizeCap
cleanHistoryOnStart
1.2 基于文件大小和时间滚策略
当在时间周期内日志文件超过指定大小,则创建新的日志文件,否则每一个时间周期生成一个日志
1.2.1 class
ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy
1.2.2 基本属性
fileNamePattern
maxHistory
totalSizeCap
cleanHistoryOnStart
maxFileSize
1.3 基于文件个数的滚动策略
1.3.1 class
ch.qos.logback.core.rolling.FixedWindowRollingPolicy
1.3.2 基本属性
fileNamePattern
minIndex
maxIndex
2. 日志文件滚动的触发策略(triggeringPolicy)
2.1 基于文件大小的触发策略
2.1.1 class
ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy
2.1.2 基本属性
maxFileSize
3. fileNamePattern
示例: <fileNamePattern>${log.path}.%d{yyyy-MM-dd_HH:mm}.%i.log.gz</fileNamePattern>
3.1 时间周期
根据 fileNamePattern 属性中的 %d的值的最小时间单位进行滚动。
默认值为 yyyy-MM-dd ,即按照天(一天为一个周期)来进行日志滚动
3.2 压缩格式
示例中 gz 表示的就是文件的压缩格式
目前支持 zip 和 gzip