我们使用HBaseTestingUtility
对HBase相关代码进行单元测试。问题是在执行单元测试时,输出会填充吨org.apache.hadoop.*
DEBUG消息。
HBaseTestingUtility utility = new HBaseTestingUtility();
utility.startMiniCluster();
我尝试了不同的东西(配置log4j等)来将日志记录级别设置为INFO或WARN - 但没有成功。谷歌搜索也没有帮助找到解决方案。
知道如何更改Hadoop clases的日志记录级别吗?
谢谢!
注意:以下是日志中的一些示例调试消息:
...
15:37:14.398 [IPC Server handler 8 on 45239] DEBUG org.apache.hadoop.ipc.Server - IPC Server handler 8 on 45239: responding to org.apache.hadoop.hdfs.protocol.ClientProtocol.getFileInfo from 127.0.0.1:41140 Call#1757 Retry#0
15:37:14.398 [IPC Server handler 8 on 45239] DEBUG org.apache.hadoop.ipc.Server - IPC Server handler 8 on 45239: responding to org.apache.hadoop.hdfs.protocol.ClientProtocol.getFileInfo from 127.0.0.1:41140 Call#1757 Retry#0 Wrote 33 bytes.
...
答案 0 :(得分:0)
解决方案是使用logback.xml
配置。 E.g:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
</Pattern>
</layout>
</appender>
<root level="warn">
<appender-ref ref="STDOUT" />
</root>
</configuration>