在压缩旋转的日志文件之前,我需要添加一些单位时间的延迟。我正在使用logback-core,我的xml如下所示:-
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>app.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>app-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
<maxFileSize>1GB</maxFileSize>
<maxHistory>7</maxHistory>
<totalSizeCap>7GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{35}- %msg%n</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="file"/>
</root>
</configuration>
有什么办法吗? 我已经看到了扩展滚动策略类here的方法,但是不确定类似的方法是否可以在这里工作。
答案 0 :(得分:0)
我已经通过Cron应用程序解决了这个问题。
首先,我将logback配置更新为不进行压缩,而只是旋转日志。然后,我的Cron在特定的时间运行,并收集所有已旋转的日志,然后将其传递到下一个执行压缩部分的模块。