gpt4 book ai didi

java - 查找 log4j 日志记录语句的来源/起源?

转载 作者:太空宇宙 更新时间:2023-11-04 08:25:58 26 4
gpt4 key购买 nike

我有一个在 Glassfish 下运行的 Java EE 应用程序。

经过最近的一些更改,我们开始在日志中看到大量语句:

[#|2011-12-16T11:20:27.007-0800|INFO|sun-appserver9.1|javax.enterprise.system.stream.out|_ThreadID=19;_ThreadName=Thread-62;|2011-12-16 11:20:27,007 DEBUG org.apache.commons.httpclient.HttpConnection[Thread-62] - enter HttpConnection.closeSockedAndStreams()
|#]

[#|2011-12-16T11:20:32.007-0800|INFO|sun-appserver9.1|javax.enterprise.system.stream.out|_ThreadID=19;_ThreadName=Thread-62;|2011-12-16 11:20:32,007 DEBUG org.apache.commons.httpclient.HttpConnection[Thread-62] - enter HttpConnection.close()

我们设置了 log4j.properties 试图阻止这些

log4j.logger.org.apache.commons.httpclient=WARN

但这行不通。我怎样才能找到这些日志语句的来源或起源?我认为我想要的是一个堆栈跟踪,它向我显示正在调用哪些代码来导致此日志语句。

也许这里的东西会有帮助? http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html

更重要的是,我怎样才能让这些言论闭嘴?他们污染了我们的日志。

最佳答案

由于您的类路径上显然有其他东西覆盖了您的设置,因此您可以捕获记录器并将其设置回来。像这样的东西:

import org.apache.log4j.*;
...
Logger offendingLogger = Logger.getLogger("org.apache.commons.httpclient.HttpConnection");
offendingLogger.setLevel(Level.WARN);

关于java - 查找 log4j 日志记录语句的来源/起源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8539136/

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