gpt4 book ai didi

java - Tomcat 6 和 log4j 应用程序日志记录不产生输出

转载 作者:行者123 更新时间:2023-11-28 22:10:11 26 4
gpt4 key购买 nike

我正在尝试让 log4j 应用程序 (webapp) 日志记录在 Tomcat 6 应用程序中工作。我的 WEB-INF 目录中有 log4j-1.2.15.jar,WEB-INF/classes 中有 log4j.dtd 和 log4j.xml。

我的 log4j.xml 看起来像:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" >
<log4j:configuration>
<appender name="massAppender" class="org.apache.log4j.RollingFileAppender">
<param name="maxFileSize" value="100KB" />
<param name="maxBackupIndex" value="2" />
<param name="File" value="${catalina.home}/logs/mass.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %5p %c{1}: %m%n " />
</layout>
</appender>

<category name="com.company.mass">
<priority value="DEBUG"/>
<appender-ref ref="massAppender"/>
</category>

<root>
<appender-ref ref="massAppender" />
</root>

</log4j:configuration>

我的 servlet 在包中:

package com.company.mass;

记录器声明为:

private static Logger logger = Logger.getLogger(Handler.class);

在我的 doGet(...) 方法的顶部有:

logger.error("foo");

当我在 Tomcat 中部署应用程序并转到 servlet 时,它可以正常工作。我什至得到了一个 mass.log 文件,但里面什么也没有。它也没有出现在任何其他日志中,也没有明显的错误。知道发生了什么事吗?

最佳答案

您确定 log4j 实际上正在使用您的 log4j.xml 进行配置,而不是类路径中的另一个文件吗?

启用系统属性 -Dlog4j.debug 让 log4j 打印出它正在使用的配置文件的确切信息。

关于java - Tomcat 6 和 log4j 应用程序日志记录不产生输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/917442/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com