是否可以将logback的配置设置为每天创建一个.log文件并保留30个文件,然后将这些文件压缩为一个zip并再次开始创建.log?
你可以 ...
每天创建一个.log文件并保留30个文件
... 用一个RollingFileAppender
with a TimeBasedRollingPolicy
。这是一个例子:
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logFile.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- retain 30 days logs -->
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>...</pattern>
</encoder>
</appender>
但是没有 Logback 附加程序可以执行以下操作:
将文件压缩为一个 zip 并再次开始创建 .log
为此你可以:
- 编写您自己的附加程序(有关此的大量详细信息在文档中 https://logback.qos.ch/manual/appenders.html#WriteYourOwnAppender)
Or
- 在 Logback 之外处理这个问题;您正在处理文件系统上的文件,因此有一个 cron 作业运行一个 shell 脚本,该脚本查找最后一个文件n天,将它们压缩起来,然后删除它们就可以了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)