【问题标题】:Log4j2 - Add Archive to current configLog4j2 - 将存档添加到当前配置
【发布时间】:2020-09-17 11:19:25
【问题描述】:

我想将自动归档(删除)添加到我的日志文件中,但我很难找到一个我理解并可以添加到我当前配置中的 xml 示例。

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="DEBUG">
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{DEFAULT} - %msg%n"/>
    </Console>
    <RollingFile name="RollingFile" fileName="./logs/AutoLab.log" 
   filePattern="./logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
      <PatternLayout pattern="%d{DEFAULT} - %msg%n"/>
      <Policies>
        <TimeBasedTriggeringPolicy/>
        <SizeBasedTriggeringPolicy size="100 MB"/>
      </Policies>
       <DefaultRolloverStrategy max="50"/>
</RollingFile>
  </Appenders>
  <Loggers>
    <Root level="DEBUG">
      <AppenderRef ref="Console"/>
      <AppenderRef ref="RollingFile"/>
    </Root>
  </Loggers>
</Configuration>

以上是我当前的配置。从我读过的内容来看,我必须小心路径和目录名称,以便我为操作系统使用正确的正斜杠或反斜杠字符。不确定我的安装程序将如何处理。

任何有关自动存档的帮助 - 非常感谢删除语法。

戴夫

【问题讨论】:

    标签: xml log4j2 archive


    【解决方案1】:

    您当前的配置表明您希望文件每月滚动一次或当文件大小为 100MB 时。您希望每月最多保留 50 个文件。

    请参阅How to delete old logs with log4j2 了解示例

    【讨论】:

    • 日志的数量和大小目前并不是我真正关心的问题,我要问的是一种删除旧日志的方法。我想我有一些现在应该工作的东西。我已经修改了我的 xml - 我将在下面发布。
    【解决方案2】:
    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration status="DEBUG">
      <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
          <PatternLayout pattern="%d{DEFAULT} - %msg%n"/>
        </Console>
        <RollingFile name="RollingFile" fileName="./logs/AutoLab.log" filePattern="./logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
          <PatternLayout pattern="%d{DEFAULT} - %msg%n"/>
          <CronTriggeringPolicy schedule="0 0 0 * * ?"/>
          <DefaultRolloverStrategy>
            <Delete basePath="${baseDir}" maxDepth="2">
              <IfFileName glob="*/app-*.log.gz" />
              <IfLastModified age="14d" />
            </Delete>
          </DefaultRolloverStrategy>
          <Policies>
            <TimeBasedTriggeringPolicy/>
            <SizeBasedTriggeringPolicy size="50 MB"/>
          </Policies>
           <DefaultRolloverStrategy max="10"/>
        </RollingFile>
      </Appenders>
      <Loggers>
        <Root level="DEBUG">
          <AppenderRef ref="Console"/>
          <AppenderRef ref="RollingFile"/>
        </Root>
      </Loggers>
    </Configuration>
    

    添加部分用于删除超过 14 天的文件。

    【讨论】:

      猜你喜欢
      • 2016-09-08
      • 2023-03-05
      • 2014-10-18
      • 2010-09-24
      • 2021-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-30
      相关资源
      最近更新 更多