java – 如何在HBase客户端应用程序中禁止INFO日志?

前端之家收集整理的这篇文章主要介绍了java – 如何在HBase客户端应用程序中禁止INFO日志?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在编写一个访问HBase的 Java控制台应用程序,我无法弄清楚如何摆脱所有烦人的INFO消息:
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

等等…

我已经从客户端代码本身尝试了几个不同的东西,但没有一个明显的方法对我有用.

这是一个不起作用的例子:

Logger log = 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上进行测试

猜你在找的Java相关文章