Log4j2覆盖过去的日志文件

我正在使用Log4j2 ver 2.3

log4j2.xml看起来像:

<?xml version="1.0" encoding="UTF-8"?>

<Configuration>

<Appenders>

<RollingFile name="RollingFile"

fileName="${sys:catalina.base}/logs/catalina.${date:yyyy-MM-dd}.log"

filePattern="${sys:catalina.base}/logs/catalina.%d{yyyy-MM-dd}.log">

<PatternLayout pattern="[TID=%X{TId}] %d{MMM dd, yyyy HH:mm:ss,SSS} %c %M:%L %p: %m%n"/>

<TimeBasedTriggeringPolicy modulate="true" />

</RollingFile>

</Appenders>

<Loggers>

<Root level="DEBUG" >

<AppenderRef ref="RollingFile" />

</Root>

</Loggers>

</Configuration>

当前一天的日志被当天的某些日志覆盖时,所有方法都可以正常工作到第二天。

示例:catalina.2018-03-21.log昨天(3月21日)很好,但是今天被2018-03-22的某些日志覆盖,当时catalina.2018-03-22.log包含了今天(3月22日)的其余日志)

有什么想法吗?

回答:

Log4j 2.3有点旧,于2015年5月9日发布,已将近3年了。因此,请尝试使用更新的版本;2.11.0版本是截至2018-03-11的最新版本。

要继续使用Log4j 2.3,可以 降低要求

。选项之一可能是对fileName属性使用静态值。例如.../catalina.log.../catalina.current.log等等。

以上是 Log4j2覆盖过去的日志文件 的全部内容, 来源链接: utcz.com/qa/422138.html

回到顶部