Tomcat记录压缩和旋转

时间:2015-07-23 19:04:49

标签: java tomcat logging

我对Tomcat很新。

我在寻找的是:
对于Tomcat根据大小旋转文件,压缩&压缩后删除旧文件。

我的当前日志文件在不同位置配置,如下所述。我不确定这是否是在Tomcat中处理这些日志的正确方法。

localhost_access_log   /var/lib/tomcatmulti/frontend/conf/server.xml  
netbiscuits-perf.log   /var/lib/tomcatmulti/frontend/webapps/ROOT/WEB-INF/classes/log4j.xml 
catalina.out           /usr/share/tomcat7/bin/catalina.sh
  • 如何找到使用Tomcat的日志引擎?
  • 这是否意味着我的tomcat启用了log4j?
  • 如何旋转上述文件的日志?

请不要建议logrotate。如果你愿意的话,我想了解为什么Tomcat WONT会旋转它,因为我认为这是应用程序应该能够做的事情。

1 个答案:

答案 0 :(得分:1)

  

如何找到使用Tomcat的日志引擎?

我会看一下manual。从左侧的“文档”中选择一个。在默认状态下,Tomcat使用“JULI”混合使用Java Util Logging(JUL)和Apache Commons Logging。

  

这是否意味着我的tomcat启用了log4j?

不,你的申请没有。当然你也可以让Tomcat使用Log4j,另请参阅docs

  

如何旋转上述文件的日志? ...请不要建议logrotate。

好的,我不会。使用RollingFileAppender。我的Tomcat默认是在旋转日志。你有没有检查轮换规则?

为了简短起见:“localhost_access_log”和“catalina.out”由Tomcat的Juli框架创建,“netbiscuits-perf.log”由Log4J创建。这些是不同的框架,如果没有明确地做一些工作,就不能一起工作。

我建议您将SLF4j添加到您的应用中。它是一个外观,它从其他框架(Log4j2除外)收集日志,并将它们重定向到您选择的框架。这样您就可以使用像Logback这样的现代框架来完成最后的工作,比如使用RollingFileAppender创建文件。