繁体   English   中英

LOG4J 日志记录不适用于 Spark 纱线集群模式

[英]LOG4J logging is not working on Spark yarn cluster mode

我已经构建了一个 pyspark 应用程序并使用 log4j 进行日志记录。

问题是当我在纱线客户端模式下运行 spark 应用程序时,日志正在发生,但是当我在纱线集群模式下运行应用程序时,它没有。

我也希望在集群模式下打印日志消息并将其保存为文件。

已经试过了

Spark-submit —-files option
and setting spark.executor.extrajavaoptions and spark.driver.extrajavaoptions.

My log4j.properties

log4j.rootCategory=INFO,FILE
log4j.appender.FILE=org.apache.log4j.RollingFileAppender


log4j.appender.FILE.File=/some/path/to/edgeNode/SparkDriver.log

log4j.appender.FILE.Append=false
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n

当您希望提供自定义 log4j 文件时,请通过在 spark-submit 命令中提供它来实现。 这是因为一旦 spark 启动,它自己的 log4j 文件优先于其他 log4j 配置。 提供您的 log4j 文件作为driver.java.options标志的一部分。 如果您以集群模式而不是客户端运行您的作业,请提及spark.executors.extraJavaOptions 中的 log4j 文件。 请记住,应该写入日志的位置必须可由驱动程序节点以及您的计算节点访问。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM