logback.xml中MaxHistory日志文件保留天数不生效

今天一个朋友问我一个问题,问题logback.xml中MaxHistory日志文件保留天数不生效,他的文件是10-24、12-08、12-09、12-10、12-11配置MaxHistory为7不会删除10-24的日志文件

logback.xml中MaxHistory日志文件保留天数不生效

答:MaxHistory指的是文件数量,超过MaxHistory数量才会删除,只有当每天生成且只生成一个文件时才表示保留天数。

查阅官网文档http://logback.qos.ch/manual/appenders.html得到证实

logback.xml中MaxHistory日志文件保留天数不生效logback.xml中MaxHistory日志文件保留天数不生效

 

 

 

于是,他新增了几个文件之后10-24、12-05、12-06、12-07、12-08、12-09、12-10、12.11 MaxHistory为7 重新启动项目仍没有删除10-24

 

查看TimeBasedRollingPolicy源码发现logback 启动项目时候 默认不删除多余的文件logback.xml中MaxHistory日志文件保留天数不生效

 

于是让他加上<cleanHistoryOnStart>true</cleanHistoryOnStart>logback.xml中MaxHistory日志文件保留天数不生效问题得到解决,记录之。