gpt4 book ai didi

log4j - log4j-DailyRollingFileAppender,文件不按小时滚动

转载 作者:行者123 更新时间:2023-12-04 11:44:44 25 4
gpt4 key购买 nike

对于DailyRollingFileAppender,我具有以下简单的Test类,以便每小时滚动日志文件。我面临的问题是,即使我将其设置为“ .'yyyy-MM-dd-HH”,它似乎也不每小时都会滚动到新的日志文件。知道我在代码中做错了什么吗?

public class Test {
static Logger logger = Logger.getLogger(Test.class);

public static void main(String args[]) throws Exception {
String pattern = "%-20d{dd MMM yyyy HH:mm:ss} [%-5p] - %m%n";

PatternLayout patternLayout = new PatternLayout(pattern);

//CREATE APPENDER.
DailyRollingFileAppender myAppender = new DailyRollingFileAppender(patternLayout, "TestOrig.log", "'.'yyyy-MM-dd-HH");

//ADD APPENDER & LEVEL.
logger.addAppender(myAppender);
logger.setLevel ((Level) Level.DEBUG);


//WRITE MESSAGES.
logger.debug("Successful");
logger.info ("Failed" );
logger.warn ("Failed" );
logger.error("Successful");
logger.fatal("Failed");

while(true)
{
Thread.sleep(1000);
}
}
}

最佳答案

使用@Singleton和@Schedule为您的计时器服务创建一个类似于ejb cron的时间表。

import javax.ejb.Schedule;
import javax.ejb.Singleton;


@Singleton
public class Cron {
static Logger logger = Logger.getLogger(Test.class);
@Schedule(second="0", minute="0", hour="0", dayOfWeek="*", persistent=false)
public void rollLogs() {
logger.info("midnight");
}
}

关于log4j - log4j-DailyRollingFileAppender,文件不按小时滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7762583/

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