首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何覆盖每个驱动程序的log4j.properties?

如何覆盖每个驱动程序的log4j.properties?
EN

Stack Overflow用户
提问于 2015-03-04 03:36:27
回答 3查看 19.2K关注 0票数 22

我正在尝试覆盖Spark的默认log4j.properties,但一直没有任何成功。我尝试在spark-submit中添加以下内容:

--conf "spark.executor.extraJavaOptions=Dlog4j.configuration=/tmp/log4j.properties"  
--conf "spark.driver.extraJavaOptions=-Dlog4j.configuration=/tmp/log4j.properties"

但这似乎并不管用。我也尝试在spark-submit中使用--files选项,但似乎也不起作用。有没有人设置了日志记录,所以每个驱动程序都有一个log4j.properties文件,而不是使用默认的文件?

我使用Mesos和Marathon来运行Spark驱动程序。我不确定--files选项,也找不到任何示例来说明它是如何使用的,以及它到底做了什么。

我还想提一下,我手动将log4j.properties文件上载到所有具有我的更改的节点上进行测试。

目前Spark的版本是1.1.0。

EN

回答 3

Stack Overflow用户

发布于 2015-06-12 09:26:08

对于驱动程序/外壳程序,您可以在运行spark-shellspark-submit脚本时使用--driver-java-options进行设置。

在Spark中,您不能设置--conf spark.driver.extraJavaOptions,因为它是在启动JVM之后设置的。在使用spark提交脚本时,--driver-java-options会在启动运行驱动程序的JVM (例如java -Dblah MyClass)时使用这些选项。

请注意,-Dlog4j.configuration属性应该是一个有效的URL,因此如果它来自文件系统中的某个位置,请使用file: URL。如果资源变量无法转换为URL,例如由于MalformedURLException,那么log4j将从类路径中搜索资源。

例如,使用自定义的log4j.properties文件;

./spark-shell --driver-java-options "-Dlog4j.configuration=file:///etc/spark/my-conf/log4j.warnonly.properties"
票数 17
EN

Stack Overflow用户

发布于 2017-03-03 03:57:56

只有几个细节被忽略了。

conf标志应如下所示:

--conf spark.executor.extraJavaOptions="-Dlog4j.configuration=log4j.properties" --conf spark.driver.extraJavaOptions="-Dlog4j.configuration=/tmp/log4j.properties" --files /tmp/log4j.properties

您还需要使用--files参数将log4j.properties文件上传到集群,执行者可以在集群中访问该文件。此外,正如上面所述的配置,假设您使用的是client模式,在cluster中,两个配置将使用相同的相对路径:-Dlog4j.configuration=log4j.properties

备注:如果您的日志覆盖还需要额外的依赖项,您可能还需要提供它们:--conf spark.driver.extraClassPath=custom-log4j-appender.jar请参阅:custom-log4j-appender-in-spark-executor

祝好运

票数 4
EN

Stack Overflow用户

发布于 2015-03-14 08:21:07

我不相信spark.driver.extraJavaOptions参数存在。对于spark.executor.extraJavaOptions,你似乎有一个拼写错误。试试这个:

--conf "spark.executor.extraJavaOptions=-Dlog4j.configuration=/tmp/log4j.properties"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28840438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档