gpt4 book ai didi

java - 从 LoggerFactory 获取日志

转载 作者:行者123 更新时间:2023-12-02 05:38:52 25 4
gpt4 key购买 nike

这可能很简单,但我已经浪费了很多时间来寻找解决方案。

我有

package net.rubyeye.xmemcached;

...
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
...

public class XMemcachedClient implements XMemcachedClientMBean, MemcachedClient {

private static final Logger log = LoggerFactory
.getLogger(XMemcachedClient.class);
....

使用 Log4j,我从 apache-servicemix 获取所有日志。

我尝试过类似的方法

log4j.logger.net.rubyeye.xmemcached.XMemcachedClient=All, xmemcachedLog

log4j.appender.xmemcachedLog=org.apache.log4j.RollingFileAppender
log4j.appender.xmemcachedLog.File=${karaf.data}/log/spring/xmemcachedLog.log
log4j.appender.xmemcachedLog.ImmediateFlush=true
log4j.appender.xmemcachedLog.maxFileSize = 10MB
log4j.appender.xmemcachedLog.maxBackupIndex = 10
log4j.appender.xmemcachedLog.layout=org.apache.log4j.PatternLayout
log4j.appender.xmemcachedLog.layout.ConversionPattern=%d{dd-MM-yyyy_HH:mm:ss} %-5p [%t] - %m%n

但我什么也没得到。我想获取有关第 1335 行的异常的信息

key = this.preProcessKey(key);

实际上,我想准确记录该类并不重要。在我的应用程序中,我还有其他具有 LoggerFactory.getLogger(...); 的类;

主要问题是如何从Logger log = LoggerFactory获取日志 .getLogger(SomeClass.class);

现在,我的 rootLogger 看起来像

# Root logger 
log4j.rootLogger=info, out, sift, osgi:VmLogAppender
log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer

最佳答案

如果您使用的是 Java EE 应用程序,您应该在某个地方有一个 logback.xml 来决定是否显示您的日志。

尝试将这行代码添加到其中:

<logger name="net.rubyeye.xmemcached" level="DEBUG"/>

它将激活此包中所有类的调试日志。如果它仍然不起作用,可能您的类路径中没有该文件,您可能必须将其添加到 jvm 参数中。

关于java - 从 LoggerFactory 获取日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56150574/

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