log4j2 - Log4j2 无法删除老化的日志文件
问题描述
我有以下 log4j2 配置文件。我希望它会删除 7 天前生成的日志文件。但它不起作用。任何人都可以帮助找出问题吗?
<Configuration status="trace">
<Properties>
<Property name="filters-packages">sun,java.lang,org.junit</Property>
<Property name="logs-dir">/data/logs/app</Property>
<Property name="pattern-subfix">%d{yyyy-MM-dd}.log</Property>
<Property name="file-size">2000 MB</Property>
<Property name="layout">%highlight{%d %-5p %t %c{1}.%M():%L - %m%n}%xEx{filters()}</Property>
</Properties>
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/>
<PatternLayout pattern="%highlight{%d{yyyy.MM.dd 'at' HH:mm:ss z} %-5level %class{36} %M() @%L - %msg%n}{FATAL=Bright Red, ERROR=Bright Magenta, WARN=Bright Yellow, INFO=Bright Green, DEBUG=Bright Cyan, TRACE=Bright White}"/>
</Console>
<RollingFile name="fileout-app" fileName="${logs-dir}/app.log" filePattern="${logs-dir}/app.log.%d{yyyy-MM-dd}">
<PatternLayout pattern="${layout}"/>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true" />
</Policies>
<DefaultRolloverStrategy>
<Delete basePath="${logs-dir}" maxDepth="1">
<IfFileName glob="app.log.*" />
<IfLastModified age="7d" />
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
</Appenders>
<Loggers>
<Logger name="com.abc.efg" level="INFO" additivity="false">
<AppenderRef ref="fileout-app"/>
</Logger>
<Root level="INFO">
<!--<appender-ref ref="ERROR" />-->
<appender-ref ref="fileout-app"/>
<appender-ref ref="Console"/>
</Root>
</Loggers>
</Configuration>
解决方案
对不起。配置文件中没有错误。问题是logs-dir
我的容器中另一个目录的软链接。followLinks="true"
这个参数解决了我的问题
推荐阅读
- android - 我正在创建一个应用程序,它在右下角有视频播放器和前置摄像头预览,当我旋转屏幕摄像头时,它是可拖动的
- c++ - Mysql.h 查询后有 0 个结果
- javascript - 如何在 React 中的两个组件之间传递变量?
- javascript - Firestore 规则 request.auth 始终为空
- python - Raspberry-pi python shell 仍在运行旧版本的 python
- javascript - 无法按 id 找到元素,但我可以按类找到它
- reactjs - 如何纱线添加特定的分支/工作区
- c++ - enable_if 和 is_move_constructible 允许不可移动类型,但 requires 不允许
- sql - 将具有 180 万行的 Oracle 查询分成 40,000 个行块
- node.js - Angular httpClient 使用授权承载未知错误获取响应