gpt4 book ai didi

java - Log4j RollingFileAppender 每分钟

转载 作者:行者123 更新时间:2023-11-30 10:41:05 25 4
gpt4 key购买 nike

我正在使用 log4j 2.6.2 测试 Log4j RollingFileAppender。

我想每分钟轮换一次日志,所以我有一个 log4j2.xml 与此处的一个示例非常相似 https://logging.apache.org/log4j/2.x/manual/appenders.html#RollingFileAppender .这是我的 log4j2.xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="testlog4j2" packages="">
<Properties>
<Property name="baseDir">C:/tmp/testlog4</Property>
</Properties>
<Appenders>
<RollingFile name="RollingFile" fileName="${baseDir}/app.log"
filePattern="${baseDir}/$${date:yyyy-MM}/app-%d{yyyy-MM-dd-HH-mm}.log.gz">
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
<CronTriggeringPolicy schedule="0 0/1 * * * ?"/>
<DefaultRolloverStrategy>
<Delete basePath="${baseDir}" maxDepth="2">
<IfFileName glob="*/app-*.log.gz" />
<IfLastModified age="60d" />
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
</Appenders>
<Loggers>
<Root level="ALL">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>

这是一个我每秒写日志的应用程序。

package testlog4j2;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class TestLog4j {

private final static Logger logger = LogManager.getLogger(TestLog4j.class);

public static void main(String[] args) {
try {
for (int i=1; i<=240; i++) {
logger.info("Hello");
Thread.sleep(1*1000);
}
} catch (Exception e) {
//e.printStackTrace();
logger.error("Excepcion general", e);
}
}
}

发生的事情是:

  • 一旦系统在第一分钟轮转日志,就会不断出现这样的错误

    2016-07-28 15:10:02,015 Log4j2-Log4j2Scheduled-1 错误无法将文件 C:\tmp\teSTLog4\2016-07\app-2016-07-28-15-10.log.gz 移动到C:\tmp\teSTLog4\2016-07\app-2016-07-28-15-10.log.gz: java.nio.file.NoSuchFileException C:\tmp\teSTLog4\2016-07\app-2016-07 -28-15-10.log.gz -> C:\tmp\teSTLog4\2016-07\app-2016-07-28-15-10.log.gz

  • 不是每分钟都有一个gz

  • 结果 gz 没有 60 行的日志。相反,他们有 1、2 或 3 行日志。
  • 主日志C:\tmp\teSTLog4\app.log没有内容

我做错了什么?

谢谢

最佳答案

您可能发现了一个错误。请在 Jira issue tracker 上提交错误报告以及您在此处描述的所有详细信息。

关于java - Log4j RollingFileAppender 每分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38638105/

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