我們已經嘗試了各種解決方案,包括更改log4j.properties文件,通過--file將文件複製到執行程序,然後告訴它們將其用作通過--conf傳遞的參數,並嘗試更新EMR集羣本身的配置。來自非主類的調試,警告和信息消息在火花執行器日誌中不可見
來自系統的警告消息在執行程序日誌中可見。來自主類的警告消息是可見的,但沒有任何其他類的消息通過以太網傳遞,我們不確定問題可能是什麼。
日誌記錄級別很好,如Spark生成的消息所示,但其他類消息沒有通過。
驅動程序日誌(來自EMR控制檯中的主頁)顯示來自其他類的調試消息,執行程序日誌(通過Spark UI執行程序選項卡)未顯示。
任何幫助非常感謝,謝謝。
這是一個在spark 1.6上運行的流式應用程序。以下是我們嘗試過的一些選項。
運行正常步驟:Arguments: spark-submit --deploy-mode client --master yarn --class main jarLoc
額外的火花記錄配置設置爲集羣配置級別:
{"classification":"spark-log4j", "properties":{"log4j.logger.MainClass$":"DEBUG",
"log4j.logger.org.apache.spark":"WARN", "log4j.logger.org.apache.hadoop":"WARN", "log4j.logger.com.amazonaws.services":"WARN", "log4j.logger.com.companyName":"INFO", "log4j.logger.org.spark-project":"WARN"}, "configurations":[]}
當前log4j的屬性文件:
log4j.rootLogger=INFO, STDOUT
log4j.logger.deng=DEBUG
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss} %t %x %-5p %-10c:%m%n
log4j.logger.MainClass$=DEBUG
log4j.logger.com.sessioncam=INFO
log4j.logger.org.apache.spark=WARN
log4j.logger.com.amazonaws.services=WARN
log4j.logger.org.spark-project=WARN
log4j.logger.org.apache.hadoop=WARN
事情我已經嘗試:
spark-submit --deploy-mode client --master yarn --class MainClass--conf spark.executor.extraJavaOptions=-Dlog4j.configuration=file:/tmp/files/log4j.properties /tmp/files/jar.jar
Arguments: spark-submit --deploy-mode client --master yarn --class MainClass--files /tmp/files/log4j.properties /tmp/files/jar.jar
做了嘗試: 火花提交 --master紗線集羣 --files /path/to/log4j-spark.properties --conf「spark.driver.extraJavaOptions = -Dlog4j.configuration = log4j- spark.properties「 --conf」spark.executor.extraJavaOptions = -Dlog4j.configuration = log4j-spark.properties「 –