log4j rollingfileappender旋转catalina.out文件,但一直写在catalina.out.1文件中

时间:2014-03-04 10:55:18

标签: logging log4j rollingfileappender

我想在alfresco 4.0.1中配置log4j rollingFileAppender,因为我想在每次大小达到10MB时继续旋转catalina.out文件。所以我使用下面的链接用tomcat配置了log4j。

http://tomcat.apache.org/tomcat-6.0-doc/logging.html#Using_Log4j

要配置rollingFileAppender,我在tomcat / lib / log4j.properties文件中写了以下几行。

  

log4j.rootLogger = INFO,文件

     控制台appender定义      

log4j.appender.File = org.apache.log4j.RollingFileAppender进行   log4j.appender.File.File = $ {} catalina.base /logs/catalina.out   log4j.appender.File.MaxFileSize = 10MB log4j.appender.File.Append = true   log4j.appender.File.MaxBackupIndex = 10   log4j.appender.File.layout = org.apache.log4j.PatternLayout

     

log4j.appender.File.layout.ConversionPattern =%d {ISO8601} [%x] [%p]   [%c {3}] [%t] [%r]%m%n

     

log4j.logger.org.apache.catalina.core.ContainerBase。[卡塔利娜]。[本地主机] = INFO   log4j.logger.org.apache.catalina.core = INFO   log4j.logger.org.apache.catalina.session = INFO

当我开始露天并监视日志时,我可以看到当catalina.out文件达到10MB时,log4j将其重命名为catalina.out.1文件并创建新的catalina.out文件。但问题是,tocmat不断登录catalina.out.1文件。它应该始终写入catalina.out文件,对吗?

我该如何解决?

1 个答案:

答案 0 :(得分:2)

我尝试了很多,然后在Alfresco的支持下问道。他们建议使用linux的工具 logrotate 进行日志轮换。我已经配置了,似乎旋转正常工作。我的logrotate配置如下。

/path/to/log/file/catalina.out { 
copytruncate 
rotate 7 
compress 
missingok 
size 10M 
}

希望这会有所帮助。