dataproc上spark/hive中的意外日志条目

ddrv8njm  于 2021-07-14  发布在  Spark
关注(0)|答案(0)|浏览(206)

我在dataproc中运行一个spark任务。我正在使用作业的Hive连接。
出于我自己的需要,我希望以json格式输出所有日志,并且在我配置的当前测试中 /etc/spark/conf/log4j.properties 使用:

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.hadoop.log.Log4Json

这将以json格式输出spark日志。
现在我在输出中看到一些奇怪的行:

...
ivysettings.xml file not found in HIVE_HOME or HIVE_CONF_DIR,/etc/hive/conf.dist/ivysettings.xml will be used
{"name":"DependencyResolver","time":1618431755337,"date":"2021-04-14 20:22:35,337","level":"INFO","thread":"nioEventLoopGroup-2-2","message":"ivysettings.xml file not found in HIVE_HOME or HIVE_CONF_DIR,/etc/hive/conf.dist/ivysettings.xml will be used"}

我的假设是,非json行是配置单元日志输出,实现为:

// If HIVE_HOME is not defined or file is not found in HIVE_HOME/conf then load default ivysettings.xml from class loader
    if (ivysettingsPath == null || !(new File(ivysettingsPath).exists())) {
      ivysettingsPath = ClassLoader.getSystemResource("ivysettings.xml").getFile();
      _console.printInfo("ivysettings.xml file not found in HIVE_HOME or HIVE_CONF_DIR," + ivysettingsPath + " will be used");
    }

问题是我看不出这个输出是在哪里配置的。我找到了两个文件:
/etc/hive/conf/hive-log4j2.properties文件
/etc/hive/conf/hive-exec-log4j2.properties文件
其中没有一个包含信息输出的配置。
有没有一种方法可以集中配置spark/hadoop/hive或者实现统一的日志记录?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题