我正在为我的spark应用程序使用logback。我遇到的问题是,当我通过智能j本地运行时,我的spark应用程序正在使用logback并遵守logback.xml配置,但是在生产服务器上使用spark-submit运行时,使用相同的代码使用log4j进行日志记录而不是logback。>
我通过运行以下命令解决了此问题(在此处提供示例)
/root/spark/bin/spark-submit
--driver-java-options "-Dlogback.configurationFile=/path/to/logback.xml"
--conf "spark.driver.extraClassPath=/path/to/logback-jars/*"
--conf "spark.executor.extraClassPath=/path/to/logback-jars/*"
--master spark://x.x.x.x:7077
--class com.myorg.Application app.jar
使用上述方法,日志记录可以正常工作,并使用logback进行日志记录。
如何给-Dlogback.configurationFile路径,以便它从应用程序(位于我的应用程序的资源文件夹中的logback.xml捆绑在jar文件app.jar中)中选择,而不给出路径到服务器上的外部登录文件