如何在使用 Spark 提交时查看更多实时日志



>我正在使用带有配置文件和包选项的"spark-submit",运行需要很长时间。

如何"打开"更多日志记录(实时(,以便可以看到瓶颈在哪里(例如,也许正在向我无法访问的特定服务器发出请求等(。

理想情况下,我希望看到所有内容 - 从哪个库被加载到哪个请求以及正在发出哪个服务器。

谢谢。

在大多数情况下,可以在 Spark UI 上查看当前正在运行的作业的所有相关信息(通常,此服务可通过驱动程序的端口 4040 访问(,也可以(如果系统有(在 Spark 历史记录服务器上查看。

YARN 上使用 Spark 时,可以使用以下参数。

--driver-java-options "-Dlog4j.error=true" --verbose

您可以随时执行以下操作以从 YARN 获取日志

使用以下命令格式查看正在运行的应用程序的特定类型的所有日志:

yarn logs -applicationId <Application ID> -log_files <log_file_type>

例如,要仅查看 stderr 错误日志,请执行以下操作:

yarn logs -applicationId <Application ID> -log_files stderr

-logFiles 选项还支持 Java 正则表达式,因此以下格式将返回所有类型的日志文件:

yarn logs -applicationId <Application ID> -log_files .* 

最新更新