【发布时间】:2018-09-01 02:19:33
【问题描述】:
我正在使用 Log4j2 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 日)很好,但是当 catalina.2018-03-22.log 包含今天(3 月 22 日)的其余日志时,今天被 2018-03-22 的一些日志覆盖了
有什么想法吗?
【问题讨论】:
-
您是否有多个应用程序写入同一个日志文件?
-
@FranMontero 是的,我有其他模块使用 JDK14Logger 保存到同一个文件。一切都很好,直到将 Log4j 切换到 Log4j2
-
@FranMontero 可能很简单我不需要
RollingFile,因为当前日期无论如何都会附加到日志文件名?
标签: java log4j2 pattern-layout