使用logj4每日滚动限制备份文件

时间:2018-04-24 13:29:22

标签: java log4j log4j2

我使用log4j2进行日志记录。我需要每天记录并保留5天的日志备份。我的log4j2.xml如下所示。我的备份文件数量不断增加,尽管我将数量限制为5.我哪里出错了?

    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration status="trace" monitorInterval="300">
    <Appenders>

  <RollingFile name="roll-by-time-and-size"
  fileName="C:\\Users\\ann\\logs\\testing.log"
  filePattern="C:\\Users\\ann\\logs\\testing.%d{MM-dd-yyyy}.log.gz"
  ignoreExceptions="false">
    <PatternLayout>
        <Pattern>%d{yyyy-MM-dd HH:mm:ss} %p %m%n</Pattern>
    </PatternLayout>
    <Policies>
        <TimeBasedTriggeringPolicy/>


    </Policies>
    <DefaultRolloverStrategy max="5"/>
    <!-- <DefaultRolloverStrategy>
        <Delete basePath="C:\\Users\\ann\\logs" maxDepth="1">
            <IfFileName glob="C:\\Users\\ann\\logs\\test.*.log.gz" />
            <IfLastModified age="3" />
        </Delete>
    </DefaultRolloverStrategy> -->
</RollingFile>

    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n">
      </PatternLayout>
    </Console>


  </Appenders>
  <Loggers>   

    <Root level="ALL">
      <AppenderRef ref="roll-by-time-and-size"/>
       <AppenderRef ref="Console"/> 
    </Root>
  </Loggers>
</Configuration>

1 个答案:

答案 0 :(得分:0)

而不是max考虑使用delete规则。