我正在通过spark2-shell -i
选项运行Spark脚本之一。
我想使用Log4J Framework将生成的日志重定向。
我过去运行的命令:
spark2-shell --master yarn --deploy-mode client -i audit.scala --conf spark.driver.args="PROD sample.txt" --files /bigdata/datalakes/app/log/log4j.properties#log4j.properties --conf spark.driver.extraJavaOptions='-Dlog4j.configuration=file:/bigdata/datalakes/app/log/log4j.properties'
这是/bigdata/datalakes/app/log/log4j.properties
的内容:
# Root logger option
log4j.rootLogger=INFO, file
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
#Redirect to Tomcat logs folder
#log4j.appender.file.File=/bigdata/datalakes/app/log/spark.log
log4j.appender.file.File=/bigdata/datalakes/app/log/spark.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{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
您可以将其作为配置选项提供。
--conf "spark.executor.extraJavaOptions=-Dlog4j.configuration=/bigdata/datalakes/app/log/log4j.properties"
--conf "spark.executor.extraJavaOptions=-Dlog4j.configuration=/bigdata/datalakes/app/log/log4j.properties"
希望这会有所帮助。
欢呼!