logback filenamepattern,每隔x天滚动一次

时间:2014-02-19 22:13:17

标签: scala slf4j logback rollingfileappender

我为fileNamePattern找到了一些预定义的TimeBasedRollingPolicy

这是每分钟都做的事。

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>logfile.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">      
      <fileNamePattern>logfile.%d{yyyy-MM-dd_HH-mm}.log</fileNamePattern>
    </rollingPolicy>
  </appender>

有没有人知道我每隔x天怎么做?

我可以延长RollingFileAppender吗?我在Scala中这样做。

1 个答案:

答案 0 :(得分:2)

无论使用Scala还是Java,x == 1和x == 7的答案都很简单。

对于每日翻转,请使用

<fileNamePattern>logfile.%d{yyyy-MM-dd}.log</fileNamePattern>

并且每周写一次

<fileNamePattern>logfile.%d{yyyy-ww}.log</fileNamePattern>

(实际上它会在一周开始时根据您的区域设置进行翻转,而不是每七天一次。)

如果您想要更通用的解决方案,则必须实施自定义RollingPolicy,但我不知道您为什么需要它。如果您遇到此大小的日志问题,则应注意,当达到特定大小时,可以滚动日志。 http://logback.qos.ch/manual/appenders.html

有很多例子