log4j2压缩文件名称错误

发布于 2022-09-12 03:39:05 字数 1261 浏览 13 评论 0

问题描述

现在我有一个java程序使用log4j2管理日志,我在log4j2.xml中配置日志文件的名称根据日志动态生成。现在的问题是日志文件和文件夹的名称正确,但是日志压缩文件名称中的日期区却是错误的。
情况如下图:
($N$HP}NM4~72)USNS`7AO9.png
文件夹名称[2020-07-13]是正确的,而压缩文件名称中的日期却是[2020-05-11]。

logj2.xml中的配置

<!-- 常规日志 -->
<RollingFile name="rollingFile_info"
    fileName="${LOG_HOME}/info.log"
    filePattern="${LOG_HOME}/${date:yyyy-MM-dd}/info-%d{yyyy-MM-dd}-%i.log.gz">
    <!-- 输出级别 -->
    <Filters>
        <!-- 限制日志级别在info及以上在error以下 -->
        <!-- error级别以下 -->    
        <ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/>
        <!-- info级别以上 -->
        <ThresholdFilter level="info" onMatch="accept" onMismatch="deny"/>
    </Filters>

    <!-- 输出格式 -->
    <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/>

    <!-- 封存策略 -->
    <Policies>
        <!-- 文件大小 超出后自动封存 -->
        <SizeBasedTriggeringPolicy size="5MB"/>
        <!-- 时间间隔 -->
        <TimeBasedTriggeringPolicy modulate="true" interval="1"/>
    </Policies>
</RollingFile>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

独夜无伴 2022-09-19 03:39:05

这里配置起作用的是

 <!-- 文件大小 超出后自动封存 -->
        <SizeBasedTriggeringPolicy size="5MB"/>

不是按时间,所以出现了你说的情况。

试试把上面的配置换成

<TimeBasedTriggeringPolicy filePattern=
"${LOG_HOME}/${date:yyyy-MM-dd}/info-${date:yyyy-MM-dd}-%i.log.gz"
 />
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文