我有一个关于在Java作为Spark作业使用log4j
及其配置文件log4j.properties
的问题。
我已将log4j.properties
与我的Spark工作联系起来" jar"文件,在提交到EMR集群后,我的应用程序将初始化log4j.properties文件。
这是我的示例代码:
public static void initializeLogger() {
try {
Properties logProperties = new Properties();
logProperties.load(RddReadUtils.class.getClassLoader()
.getResourceAsStream("resources/log4j.properties"));
PropertyConfigurator.configure(logProperties);
} catch (IOException e) {
e.printStackTrace();
}
}
在我的本地计算机上它可以工作,在EMR集群中不起作用。任何人都可以帮忙吗?
非常感谢
答案 0 :(得分:0)
在群集上运行作业时,log4j将使用群集内配置的属性文件。这是有道理的,因为你的工作可以更加独立于环境。
但是,如果要使用特定属性文件,可以执行以下操作:
假设您使用spark-submit运行您的作业,您可以按如下方式执行:
AngularJS