我正在使用log4j(1.2.14)记录外部数据。它是无法通过网络发送到其他应用程序的信息。
我有一个带有maxSize和maxBackupIndex的RollingFileAppender。
日志记录过程正常。该过程将文件创建为:
file.out
file.out1
file.out2
..
..
file.out[maxBackupIndex]
问题是我定期有另一个进程(当日志记录过程关闭时)发送和删除(本地)某个文件到另一个位置。
例如: 原始文件列表:
file.out
file.out1
file.out2
file.out3
file.out4
进程发送和删除file.out1,file.out2。
新文件列表:
file.out
file.out3
file.out4
现在,日志记录过程再次启动..然后log4j维护2个文件的“间隙”... log4j创建:
file.out
file.out1
file.out4 (content of file.out3)
file.out5 (content of file.out4)
问题是何时达到maxBackupIndex。 Log4j没有完成与可用空间的差距,并开始覆盖旧文件的内容。