监控任务执行状态

监控任务执行

有许多种方式都可以监控Spark任务的状态和查看EMR日志:

  • 使用命令行查看Spark任务日志
  • 在EMR控制台查看YARN 应用程序日志
  • 使用Spark UI查看日志及状态

命令行查看日志

当Spark任务通过spark-submit提交后,日志会显示在控制台。可以将这些输出保存到一个文件中,通过查看该文件来检查执行的状态。例如,上一节提交的任务中,在控制台输出了原始数据的schema:

image-20240305093517253

在任务执行的最后,打印出了数据的总行数:

image-20240305093639396

之所以在控制台上能看到任务的日志输出,是因为spark-submit默认是client模式:

image-20240305093621187

YARN应用程序日志

EMR集群上提交的Spark集群以YARN应用程序的形式运行,可以通过YARN timeline server查看:

image-20240305093941889

页面展示了EMR集群上运行过的所有应用:

image-20240305094020227

使用Spark UI

Spark history UI提供了任务执行过程中的详细信息。点击Spark history server, 以打开Spark UI:

image-20240305094826685

选择最近运行任务的APP ID,可以查看不同阶段的日志和DAG:

image-20240305100247466

image-20210430202949299