>我正在使用带有配置文件和包选项的"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 .*