gpt4 book ai didi

java - 每天根据 log4j2 中的每小时在新目录中生成日志?

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

我想创建一个目录 {date}.dir ,在这个目录中,我需要将每小时的日志记录在一个新的单独文件中,例如 0000.log、0100.log ...2300.log。

我使用了滚动文件附加器,但它只能创建一个日志文件并压缩最后一个日志文件。我使用基于时间的触发策略,间隔 = 1,这每天都会给我一个新文件并压缩最后一天的文件。

<RollingFile name="eventLogger" fileName="/Log/webservices/linpub.log" filePattern="/Log/webservices/linpub-%d{MM-dd-yyyy}.log.gz">
<PatternLayout>
<Pattern>%d{MM/dd/yy HH:mm:ss.SSS} %-5p [%t] %c{1} %X{trioOperation} - %m %throwable %n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
</Policies>
</RollingFile>

我想创建一个名为 linpub-{date}.dir 的新文件,并且在该文件内,每个小时应该有一个日志文件。

我使用的是 log4j2 2.3 版本。

最佳答案

如果是<TimeBasedTriggeringPolicy interval="1" modulate="true"/> ,这里的interval=“1”表示1天而不是1小时。如果你想实现1小时基准,你必须使用CronTrigger基准策略。找到下面的代码。

<CronTriggeringPolicy schedule="0 0 0/1 1/1 * ? *" evaluateOnStartup="true"/> 

将下面的行替换为上面的行。

<TimeBasedTriggeringPolicy interval="1" modulate="true"/>

还可以使用此 yyyy-MM-dd-HH 更改文件名 patten这样你就能了解每小时的基本情况。请检查并测试。

关于java - 每天根据 log4j2 中的每小时在新目录中生成日志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56316179/

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