gpt4 book ai didi

java - log4j2:TimeBasedTriggeringPolicy 未触发文件翻转

转载 作者:太空宇宙 更新时间:2023-11-04 07:02:32 25 4
gpt4 key购买 nike

我正在使用 log4j 2.0-rc1、StructuredDataMessage 和 EventLogger 来执行动态日志记录。

下面的 log4j2.xml 配置的含义是:

  • 每小时或在文件达到 64 MB 后轮换日志文件(以先到者为准)
  • 归档不满足文件模式的日志

    <Routing name="Routing">
    <Routes pattern="$${sd:type}">
    <Route>
    <RollingFile name="RollingFile-${sd:type}"
    fileName="${log.path}/${date:yyyyMMdd}/${date:yyyyMMddHH}-${sd:type}-${hostName}.log"
    filePattern="${log.path}/%d{yyyyMMdd}/%d{yyyyMMddHH}-${sd:type}-${hostName}.%i.log.gz">
    <PatternLayout>
    <!-- %K{v} stands for the message passed in StructuredDataMessage map with key "v" -->
    <!-- %n stands for new line -->
    <Pattern>%K{v}%n</Pattern>
    </PatternLayout>
    <Policies>
    <TimeBasedTriggeringPolicy interval="1"/>
    <SizeBasedTriggeringPolicy size="64 MB"/>
    </Policies>
    <DefaultRolloverStrategy max="999"/>
    </RollingFile>
    </Route>
    </Routes>
    </Routing>

    <Root level="warn">
    <AppenderRef ref="STDOUT"/>
    </Root>

有两个问题:

  1. 在新的时间触发后几分钟,在“旧”日志文件上执行日志记录:

    2 月 19 日 20:13 2014021919-planoperator-mdmlocal.mobidia.com.log
    2 月 19 日 20:13 2014021919-planprogress-mdmlocal.mobidia.com.log
    2 月 19 日 20:13 2014021919-planstats-mdmlocal.mobidia.com.log
    2月19日20:08 2014021919-sim-mdmlocal.mobidia.com.log

  2. 每当 JVM 重新启动时,log4j 就会放弃未归档的“旧”文件

    2 月 19 日 20:13 2014021919-planstats-mdmlocal.mobidia.com.log
    2 月 19 日 20:29 2014021920-planstats-mdmlocal.mobidia.com.log

最佳答案

您提到的第一个问题可能是已知问题:https://issues.apache.org/jira/browse/LOG4J2-520 - 但如果这不包括您所看到的内容,请随时添加另一张票。 (在这种情况下,请说明重现的步骤、实际发生的情况以及您期望发生的情况。越详细越好。)

关于第二个问题(log4j放弃未归档的旧文件),您可以在Log4J2问题跟踪器中为此创建一个票证吗?

关于java - log4j2:TimeBasedTriggeringPolicy 未触发文件翻转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21891754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com