【问题标题】:Tomcat logs compression and rotationTomcat 记录压缩和旋转
【发布时间】:2015-10-14 06:28:25
【问题描述】:

我对 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 不会旋转它,因为我觉得这是应用程序应该能够做的事情。

【问题讨论】:

    标签: java tomcat logging


    【解决方案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 创建文件。

    【讨论】:

    • “不,你的应用程序可以。”你说的好像 Tomcat 和应用程序是不同的。你能详细说明一下吗?使用建筑图像或类似的东西?
    • 如何修改 catalina.sh & server.xml 以进行日志轮换?你能指出一个例子或手册资源吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-28
    • 1970-01-01
    • 2020-06-30
    • 2019-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多