删除扫描的时间范围有计算策略 不是过期文件都删除
<!-- 日志最大的历史 7天 -->
<property name="maxHistory" value="15"/>
<!--日志文件配置-->
<appender name="HOTFIX" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>logs/test-%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>${maxHistory}</maxHistory>
<cleanHistoryOnStart>true</cleanHistoryOnStart>
<maxFileSize>100MB</maxFileSize>
<totalSizeCap>2GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level [%logger{10}:%line] %method\(\) - %msg%n</pattern>
</encoder>
</appender>
问题描述: 过期很长的时间不会被删除
删除有两个事件点 1运行期异步触发 2 cleanHistoryOnStart 启动时候删除
cleanHistoryOnStart删除也是有删除的时间范围 比如配置了7天 会删除30天范围内过期日志 配置15议案会删除49天范围内
两个字段作用点 见TimeBasedRollingPolicy中start方法
archiveRemove方法跟进 异步删除存档文件
计算扫描周期 遍历删除