【问题标题】:Limit log level from servlet that's written to Tomcat's catalina.out log level限制写入 Tomcat 的 catalina.out 日志级别的 servlet 日志级别
【发布时间】:2016-05-07 21:39:20
【问题描述】:

我有一个无法修改的网络应用 WAR 文件。 WAR 文件中的代码使用 Log4j,还包含显式加载的 log4j 配置文件logging.properties。此文件将rootLogger 级别设置为DEBUG。 Web 应用程序在启动时会将近 50G 的 DEBUG 日志写入 catalina.out。

我需要将来自 servlet 到 catalina.out 的消息的日志级别限制为 INFO。我怎样才能做到这一点?

Tomcat 版本是 5.5

【问题讨论】:

    标签: java tomcat servlets logging log4j


    【解决方案1】:

    我想只要在logging.properties 中添加这样的内容就可以解决问题。

    log4j.logger.org.apache.catalina=INFO
    

    尽管Apache Tomcat documentation 建议了这一点。

    log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO
    log4j.logger.org.apache.catalina.core=WARN
    log4j.logger.org.apache.catalina.session=ERROR
    

    【讨论】:

    • 我仍然看到来自 servlet 的所有 DEBUG 消息。 Tomcat的common/lib中需要log4j.jar和commons-logging.jar吗?
    • 看到您使用 Tomcat 版本更新的问题。试试this out。提供使用 Tomcat 5.5 和 Catalina 配置 log4j 的详细示例。
    • 我之前试过这个,但它仍然将 DEBUG 条目写入 catalina.out,即使在 log4j 配置中我只有一个附加程序 - tomcat.log
    • 你确定输出来自 log4j 而不是 Tomcat 的 JULI?你能用你的 log4j 属性更新你的问题吗?
    猜你喜欢
    • 1970-01-01
    • 2017-08-01
    • 2020-06-25
    • 1970-01-01
    • 2015-06-23
    • 2016-08-19
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    相关资源
    最近更新 更多