我如何在HBase客户端应用程序中禁止INFO日志? [英] How can I suppress INFO logs in an HBase client application?
本文介绍了我如何在HBase客户端应用程序中禁止INFO日志?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在编写一个访问HBase的Java控制台应用程序,但我无法弄清楚如何摆脱所有令人讨厌的INFO消息:
13/05/24 11:01:12信息zookeeper.ZooKeeper:客户端环境:zookeeper.version = 3.4.5-1392090,构建于09/30/2012 17:52 GMT
13/05/24 11:01:12信息zookeeper.ZooKeeper:客户端环境:host.name = 10.1.0.110
13/05/24 11:01:12信息zookeeper.ZooKeeper:客户端环境:java.version = 1.7.0_15
13/05/24 11:01:12信息zookeeper.ZooKeeper:客户端环境:java.vendor = Oracle Corporation
13/05/24 11:01:12信息zookeeper.ZooKeeper :客户端环境:java.home = / Library / Java / JavaVirtualMachines / jdk1.7.0_15.jdk / Contents / Home / jre
etc ...
我从客户端代码本身尝试了几个不同的东西,但没有一个明显的方法适用于我。 p>
这是一个不起作用的例子:
Logger日志= Logger.getLogger(log4j.logger.org.apache.zookeeper);
log.setLevel(Level.WARN);
解决方案
,例如:
Logger.getLogger(org.apache.zookeeper)。setLevel(Level.WARN);
Logger.getLogger(org.apache.hadoop.hbase.zookeeper).setLevel(Level.WARN);
Logger.getLogger(org.apache.hadoop.hbase.client)。setLevel(Level.WARN);
或者只是简单地操作rootlogger:
Logger.getRootLogger()setLevel(Level.WARN)。
注:在HBase 0.94.5上测试
I'm writing a Java console application that accesses HBase, and I can't figure out how to get rid of all the annoying INFO messages:
13/05/24 11:01:12 INFO zookeeper.ZooKeeper: Client environment:zookeeper.version=3.4.5-1392090, built on 09/30/2012 17:52 GMT
13/05/24 11:01:12 INFO zookeeper.ZooKeeper: Client environment:host.name=10.1.0.110
13/05/24 11:01:12 INFO zookeeper.ZooKeeper: Client environment:java.version=1.7.0_15
13/05/24 11:01:12 INFO zookeeper.ZooKeeper: Client environment:java.vendor=Oracle Corporation
13/05/24 11:01:12 INFO zookeeper.ZooKeeper: Client environment:java.home=/Library/Java/JavaVirtualMachines/jdk1.7.0_15.jdk/Contents/Home/jre
etc...
I have tried several different things from the client code itself, but none of the obvious ways have worked for me.
This is an example of something that didn't work:
Logger log = Logger.getLogger("log4j.logger.org.apache.zookeeper");
log.setLevel(Level.WARN);
解决方案
You may get rid of logging the packages one by one, e.g:
Logger.getLogger("org.apache.zookeeper").setLevel(Level.WARN);
Logger.getLogger("org.apache.hadoop.hbase.zookeeper").setLevel(Level.WARN);
Logger.getLogger("org.apache.hadoop.hbase.client").setLevel(Level.WARN);
Or just simply manipulate the rootlogger:
Logger.getRootLogger().setLevel(Level.WARN);
Note: tested on HBase 0.94.5
这篇关于我如何在HBase客户端应用程序中禁止INFO日志?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文