有人知道如何禁用日志记录或降低 Hive JDBC 驱动程序的冗长程度吗?
我正在使用 hive-jdbc-0.8.1.jar 并且我也在远程调试,因此,当查询一个巨大的数据集时,控制台消息的日志记录需要永远。
我试图将我的 log4java 属性设置为仅错误级别:
Properties log4jProperties = new Properties();
log4jProperties.setProperty("log4j.rootLogger", "DEBUG, myConsoleAppender");
log4jProperties.setProperty("log4j.appender.myConsoleAppender", "org.apache.log4j.ConsoleAppender");
log4jProperties.setProperty("log4j.appender.myConsoleAppender.layout", "org.apache.log4j.PatternLayout");
log4jProperties.setProperty("log4j.appender.myConsoleAppender.layout.ConversionPattern", "%-5p %c %x - %m%n");
PropertyConfigurator.configure(log4jProperties);
log.setLevel(Level.ERROR);
但是hive jdbc好像忽略了这些设置。
这家伙在这 link建议进行一些修改,但他使用 Jython,所以我不知道如何复制他正在做的事情……有什么线索吗?
谢谢!
最佳答案
做什么Dilip Joseph did in the link您提到过,这是您将在 Java 中执行的操作:
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
public class Jdbc {
public static void main(String[] args) {
Logger rootLogger = Logger.getRootLogger();
rootLogger.setLevel(Level.ERROR);
// the rest of your code below ...
}
}
如果您将其设置为 Maven 项目,请确保 include log4j as a dependency :
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
关于java - 如何在 Hive JDBC 中禁用详细日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20622229/