如何在 WildFly 中配置压缩日志?

How to configure compressed logs in WildFly?

是否可以在WildFly 10 中配置压缩日志? 无法在此处找到正确的配置: https://docs.jboss.org/author/display/WFLY10/Handlers

日志处理程序不应该压缩日志文件。我假设,您想使用日志轮换,然后压缩旧日志条目。首先,定义一个旋转文件处理程序——您可以决定根据时间旋转其中一个,例如每个午夜或根据尺寸,例如每5MB。基于时间的每日滚动文件处理程序的示例:

<periodic-rotating-file-handler name="FILE" autoflush="true">
   <formatter>
       <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
   </formatter>
   <file relative-to="jboss.server.log.dir" path="server.log"/>
   <suffix value=".yyyy-MM-dd"/>
   <append value="true"/>
</periodic-rotating-file-handler>

现在开始第二部分,压缩。如果您使用 linux,最简单的方法是设置一个 CRON job,它会找到您想要压缩的所有条目。例如,您可以将 cron 作业设置为 运行 这个脚本:

ls server.log.*|grep -v '\.zip$' |xargs -i zip -m {}.zip {} 

根据 Wildfly 19,如果您在后缀中添加 .zip.gz,它会在旋转时自动压缩它们。