未创建Spark应用程序log4j日志文件

时间:2017-05-07 20:11:15

标签: apache-spark log4j

我正在运行一个spark应用程序。我的应用程序有一些日志声明。

我想将日志存储为Linux目录中的文件。

下面是我的log4j文件

当我运行spark作业时,它会被启动并成功完成,但是日志不会存储为文件,我看到在/ home / cloudera中创建了一个目录日志。但我没有看到omega.log创建

log4j.properties

# Set everything to be logged to the console
log4j.rootCategory=INFO, console, file
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n


# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/home/cloudera/logs/omega.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
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

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您需要确保/ home / cloudera / logs存在于每个节点中,然后尝试将下一个属性添加到spark-submit cmd

spark-submit
  --master yarn-cluster
  --files /path/to/log4j-spark.properties
  --conf "spark.driver.extraJavaOptions=-Dlog4j.configuration=log4j-spark.properties"
  --conf "spark.executor.extraJavaOptions=-Dlog4j.configuration=log4j-spark.properties"
  ...