spymemcached - 是否可以禁用日志系统?

时间:2010-04-09 18:55:12

标签: java logging memcached spymemcached

我们正在使用spymemcached memcached客户端,但我们没有发现如何禁用日志记录系统。

我们如何在运行时将当前的日志记录系统更改为log4j或sl4j?

注意:我们可以传递一些VM参数,但问题是:我们无法更改服务器配置。是否可以在运行时传递这些VM参数?如果可能的话,我们怎么能这样做?

2 个答案:

答案 0 :(得分:7)

通过在创建catalina.out对象之前执行此操作,我停止了过多的Tomcat记录到MemcachedClient

System.setProperty("net.spy.log.LoggerImpl",
  "net.spy.memcached.compat.log.SunLogger");
Logger.getLogger("net.spy.memcached").setLevel(Level.WARNING);

答案 1 :(得分:2)

我知道这是一个老问题,这个解决方案在运行时不起作用,但我遇到了类似的问题,只发现了这个问题。您可以通过tomcat配置文件here找到设置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