【问题标题】:log4j configurations with daily rolling, gzip and max backup files具有每日滚动、gzip 和最大备份文件的 log4j 配置
【发布时间】:2013-11-06 03:41:17
【问题描述】:

是否有一个可以让我每天滚动、压缩和最大文件的附加程序?

我可以使用 apache-log4j-extras 以这种配置获得每日压缩滚动文件:

<appender name="debugFileRolling" class="org.apache.log4j.rolling.RollingFileAppender">
    <!-- The active file to log to -->
    <param name="file" value="debug.log" />
    <param name="append" value="true" />
    <param name="encoding" value="UTF-8" />
    <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
        <param name="FileNamePattern" value="/%d{yyyy-MM-dd}-debug.log.gz" />
    </rollingPolicy>

    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%-5p %d [%t] %c: %m%n" />
    </layout>
</appender>

但我不能像org.apache.log4j.RollingFileAppender 那样指定MaxBackupIndex(请注意两者之间的命名空间略有不同)。

我希望两者都不需要实现我自己的FileAppenderTriggeringPolicyRollingPolicy

【问题讨论】:

    标签: java logging log4j rollingfileappender


    【解决方案1】:

    log4j 1.2 没有支持您所需的所有功能的附加程序。 您必须使用自己的实现。

    log4j2 似乎支持您的要求。请看log4j2 documentation

    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration status="warn" name="MyApp" packages="">
      <Appenders>
        <RollingFile name="RollingFile" fileName="logs/app.log"
           filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
          <PatternLayout>
            <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
          </PatternLayout>
          <Policies>
            <TimeBasedTriggeringPolicy />
            <SizeBasedTriggeringPolicy size="250 MB"/>
          </Policies>
          <DefaultRolloverStrategy max="20"/>
        </RollingFile>
      </Appenders>
      <Loggers>
        <Root level="error">
          <AppenderRef ref="RollingFile"/>
        </Root>
      </Loggers>
    </Configuration>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-11
      • 1970-01-01
      • 1970-01-01
      • 2015-03-20
      • 2011-06-18
      相关资源
      最近更新 更多