每周滚动日志的正确文件名格式?配置TimeBasedRollingPolicy后未滚动
Logback 日志滚动失效问题分析
你的fileNamePattern格式log-%d{yyyy-ww}.log.gz本身是合法的,按周滚动的规则没问题。日志不滚动大概率是其他环节的问题,建议排查这几点:
当前日志文件前缀是否匹配
要保证appender的<file>配置和fileNamePattern的前缀一致。比如如果appender写的是<file>log.log</file>,那你的文件名模板没问题;但如果写的是<file>app.log</file>,前缀不匹配就不会触发滚动。时间条件是否触发
按周滚动的触发点是系统时间跨过周边界(具体周起始日依赖JVM时区,一般是周日或周一)。如果服务运行还没到周切换的时间点,日志不会滚动。可以临时改成按天的yyyy-MM-dd格式快速验证配置是否能正常滚动。是否有日志写入
Logback只有在有新日志写入时才会检查滚动条件,如果这个appender一直没有日志输出,自然不会触发滚动逻辑。确认你的日志级别配置正确,确实有日志输出到这个appender。是否需要额外触发策略
纯时间滚动不需要额外的<triggeringPolicy>,但如果日志量极小,Logback可能会延迟滚动,这时可以手动写入几条日志触发检查。
内容的提问来源于stack exchange,提问作者Thilo Schwarz
相关产品推荐
相关产品推荐

