【问题标题】:How to compress multy files to one zip by logback?如何通过 logback 将多个文件压缩为一个 zip?
【发布时间】:2017-07-03 14:30:46
【问题描述】:

我们的项目每天会产生大约 100GB 的日志。所以我们尝试使用 logback 来压缩这些日志以节省磁盘容量。

但很遗憾,我每次只能压缩一个文件。

  • 我想要的是:hour1.log、hour2.log、hour3.log => 压缩到 hour1-3.log.zip
  • 但是我可以通过 logback 得到:hour1.log、hour2.log、hour3.log => hour1.log.zip、hour2.log.zip、hour3.log.zip。

我使用的配置如下:

<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">   
  <fileNamePattern>${catalina.home}/%i.log.gz</fileNamePattern>   
  <minIndex>1</minIndex>   
  <maxIndex>3</maxIndex>   
</rollingPolicy>   

<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">   
  <maxFileSize>10MB</maxFileSize>   
</triggeringPolicy>

如果每个日志文件是 50MB(如果每个文件 1GB,将很难打开和编辑),这意味着我的日志路径下会有 2000 个 zip 文件(总共 100GB),那就太多了,太可笑了。

所以请帮助我。是否有任何技巧或提示,以实现我想要的。很酷,因为 logback 的功能不应该这么差。

【问题讨论】:

    标签: logging compression logback


    【解决方案1】:

    查看logback的源代码后,我可以看出,它不支持压缩多文件。换句话说,logback可以通过两种方式获得“一个”日志文件,重命名这个日志或压缩这个单一的日志。而且原因在适当的时间点做一些滚动。

    一句话,logback(1.2.3)不支持将多个文件压缩成一个zip文件。

    【讨论】:

      猜你喜欢
      • 2011-08-03
      • 2021-04-29
      • 2019-01-06
      • 2018-02-24
      • 2021-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多