spymemcached 日志管理

在项目中使用memcached,用到了spymemcached

但是发现他默认的日志管理不受log4j的控制,而是直接在stderr里输出所有信息:

"Compressed %s from %d to %d"

时间长了,stderr的文件很恐怖,显然不行

查了下wiki,方法是:
Using log4j
Set the logger impl to net.spy.log.Log4JLogger. For example: 
  -Dnet.spy.log.LoggerImpl=net.spy.memcached.compat.log.Log4JLogger Using Java's Built-in Logging
Set the logger impl to net.spy.memcached.compat.log.SunLogger. For example: 
  -Dnet.spy.log.LoggerImpl=net.spy.memcached.compat.log.SunLogger

没看懂,不知道在哪里设置

看源码:
  Class<? extends Logger> c=DefaultLogger.class;
  String className=System.getProperty("net.spy.log.LoggerImpl");

终于懂了,要设置一个jvm变量!
如果没设置的话,默认的DefaultLogger:
  if(level == Level.INFO
   || level == Level.WARN
   || level == Level.ERROR
   || level == Level.FATAL) {
   System.err.printf("%s %s %s:  %s/n",
     df.format(new Date()), level.name(), getName(), message);

怪不得...

在resin.conf里增加:
<jvm-arg>-Dnet.spy.log.LoggerImpl=net.spy.memcached.compat.log.Log4JLogger</jvm-arg>
后正常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值