LOG4J日志记录不适用于Spark纱簇模式

问题描述 投票:0回答:1

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

问题是当我在yarn-client模式下运行spark应用程序时,正在发生日志记录,但是当我在yarn-cluster模式下运行该应用程序却没有。

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

已尝试

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
apache-spark logging pyspark log4j yarn
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.