每7天清除一次日志

时间:2014-02-19 19:23:31

标签: scala logging slf4j logback

我正在使用带有scala的slf4j。有没有办法旋转日志?

我试图每7天清除一次日志。或者换句话说,每7天清空一次日志文件。

2 个答案:

答案 0 :(得分:2)

对于linux - logrotate是一种流行的解决方案

将日志轮换配置添加到以下目录:

/etc/logrotate.d/

/var/log/your.log {
  missingok
  notifempty
  size 30k
  weekly
  create 0600 root root
}

答案 1 :(得分:0)

对于ch.qos.logback.core.rolling.RollingFileAppender添加以下滚动政策:

<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
    <!-- daily rollover -->
    <fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>
    <!-- keep 7 days' worth of history -->
    <maxHistory>7</maxHistory>
</rollingPolicy>

无需任何外部解决方案,logback将为您处理您的记录历史记录。对于此信息和其他信息,logback manual始终是一个很好的来源。