我们正在使用 spymemcached memcached 客户端,但我们没有发现如何禁用日志系统。
我们如何在运行时将当前的日志系统更改为 log4j 或 sl4j 之类的系统?
注意:我们可以传递一些 VM 参数,但问题是:我们不能更改我们的服务器配置。是否可以在运行时传递这些 VM 参数?如果可能的话,我们怎么能做到这一点?
我们正在使用 spymemcached memcached 客户端,但我们没有发现如何禁用日志系统。
我们如何在运行时将当前的日志系统更改为 log4j 或 sl4j 之类的系统?
注意:我们可以传递一些 VM 参数,但问题是:我们不能更改我们的服务器配置。是否可以在运行时传递这些 VM 参数?如果可能的话,我们怎么能做到这一点?
I stopped excessive Tomcat logging to catalina.out
by doing this before creating the MemcachedClient
object:
System.setProperty("net.spy.log.LoggerImpl",
"net.spy.memcached.compat.log.SunLogger");
Logger.getLogger("net.spy.memcached").setLevel(Level.WARNING);
我知道这是一个老问题,这个解决方案在运行时不起作用,但我有一个类似的问题,只发现了这个问题。您可以在此处找到通过 tomcat 配置文件设置 spymemcached 日志记录级别的方法。
重要部分:
一个简短的总结如何让 spymemcached 更加安静:
将以下内容添加到$CATALINA_HOME/bin/catalina.sh
:
CATALINA_OPTS="-Dnet.spy.log.LoggerImpl=net.spy.memcached.compat.log.SunLogger"
将此添加到$CATALINA_HOME/conf/logging.properties
:
(可以使用 SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST 或 ALL 设置处理程序的日志级别阈值)
net.spy.memcached.level = WARNING
仅使 MemcachedConnection 不那么冗长:
net.spy.memcached.MemcachedConnection.level = WARNING