gpt4 book ai didi

java - Log4j2 如果不存在则创建新的日志文件

转载 作者:行者123 更新时间:2023-12-02 09:13:46 24 4
gpt4 key购买 nike

我正在使用 RollingRandomAccessFile 附录进行 log4j 日志记录,一切正常,

    <RollingRandomAccessFile name="xxx.FLT" fileName="${sys:xxx.log.path}FLT.log" filePattern="${sys:xxx.log.path}FLT.log.%i" append="true" immediateFlush="true" bufferSize="262144">
<PatternLayout pattern="%d{MM-dd-yyyy HH:mm:ss,SSS} [%t] %level{WARN=WARNING, DEBUG=FINE, ERROR=SEVERE} %logger{36} - %convInfo %msg%n"/>
<Policies>
<SizeBasedTriggeringPolicy size="100MB"/>
</Policies>
<DefaultRolloverStrategy fileIndex="max" min="1" max="5" compressionLevel="3"/>
</RollingRandomAccessFile>

在应用程序启动时,将创建所有日志文件。我有另一个进程,如果日志文件在一段时间后没有得到更新,则从光盘中删除日志文件。

如果此进程删除了日志文件,它将不会在新的日志事件中再次创建。

如果新日志事件发生时给定位置不存在,我想创建新的日志文件

我知道应用程序重新启动时将再次创建丢失的文件,但我想在发生日志事件时创建日志文件。

我更愿意进行配置级别更改而不是代码级别更改。

最佳答案

您需要做的就是确保日志文件的删除仅由 log4j 处理。这样您就永远不会丢失当前的日志文件。

关于java - Log4j2 如果不存在则创建新的日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44922640/

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