【问题标题】:Sometime, Log4j write to old file, doesn't write to current file?有时,Log4j 写入旧文件,不写入当前文件?
【发布时间】:2016-01-30 19:25:34
【问题描述】:

我有一个使用 log4j (log4j-1.2.17.jar) 进行日志记录的应用程序。我每天使用 DailyRollingFileAppender 轮换我的日志。

这是我的 log4j 配置:

og4j.rootLogger=INFO, MM_SOCK, R, A1

log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%t] %d{dd/MM/yyyy HH:mm:ss} %5p %c{1}: %m%n

log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.DatePattern='.'yyyy-MM-dd 
log4j.appender.R.File=../log/charging.log
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=[%t] %d{dd/MM/yyyy HH:mm:ss} %5p %c{1}: %m%n

log4j.logger.10.55.53.157-Charging01=INFO, logAgent, FILE
log4j.appender.logAgent=com.mm.logagent.LogAgentAppender
log4j.appender.logAgent.mmIp=10.55.53.157

log4j.appender.logAgent.bufferSize=5000
log4j.appender.logAgent.retryConnect=1
log4j.appender.logAgent.retryInterval=15000
log4j.appender.logAgent.sleep=10000
log4j.appender.logAgent.Threshold=INFO

log4j.appender.MM_SOCK=com.mmserver.log.appender.AdvanceSocketHubAppender
log4j.appender.MM_SOCK.port=8004
log4j.appender.MM_SOCK.maxConnection=3
log4j.appender.MM_SOCK.maxQueue=5000
log4j.appender.MM_SOCK.offlineMaxQueue=100

这个问题有时是 Log4j 将新日志附加到旧文件中,而不是当前文件中。

例如,今天是 30/10/2015,当前文件是 app.log,但有时日志会附加到旧文件中,例如 app.log.2015-10-25。

【问题讨论】:

    标签: logging log4j


    【解决方案1】:

    尝试添加

    log4j.appender.R.Append=true
    

    【讨论】:

    • 感谢您的回复!我试试看,有什么问题?
    猜你喜欢
    • 2014-08-15
    • 1970-01-01
    • 2014-09-26
    • 2017-08-27
    • 1970-01-01
    • 1970-01-01
    • 2012-01-16
    • 1970-01-01
    • 2013-09-09
    相关资源
    最近更新 更多