

# 监控 Amazon Glue Spark 作业
<a name="monitor-spark"></a>

**Topics**
+ [Amazon Glue Studio 中可用的 Spark 指标](#console-jobs-details-metrics-spark)
+ [使用 Apache Spark Web UI 监控作业](monitor-spark-ui.md)
+ [通过 Amazon Glue 任务运行洞察进行监控](monitor-job-insights.md)
+ [使用 Amazon CloudWatch 监控](monitor-cloudwatch.md)
+ [作业监控和调试](monitor-profile-glue-job-cloudwatch-metrics.md)

## Amazon Glue Studio 中可用的 Spark 指标
<a name="console-jobs-details-metrics-spark"></a>

**Metrics (指标)** 选项卡显示启用任务运行和分析时收集的指标。Spark 作业显示了以下图表：
+ ETL 数据移动
+ 内存配置文件：驱动程序和执行程序

选择 **View additional metrics (查看其他指标)** 显示以下图表：
+ ETL 数据移动
+ 内存配置文件：驱动程序和执行程序
+ 执行程序之间的数据随机排序
+ CPU 负载：驱动程序和执行程序
+ 作业执行：活动执行程序、已完成的阶段和需求最大的执行程序

如果已启用任务以收集指标，系统则会将这些图表的数据推送到 CloudWatch 指标。有关如何启用指标和解释图表的更多信息，请参阅[作业监控和调试](monitor-profile-glue-job-cloudwatch-metrics.md)。

**Example ETL 数据移动图表**  
ETL 数据移动图表会显示以下指标：  
+ 所有执行程序从 Amazon S3 读取的字节数 – [`glue.ALL.s3.filesystem.read_bytes`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.ALL.s3.filesystem.read_bytes)
+ 所有执行程序写入 Amazon S3 的字节数 – [`glue.ALL.s3.filesystem.write_bytes`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.ALL.s3.filesystem.write_bytes)

![\[Amazon Glue 控制台的 Metrics (指标) 选项卡中显示 ETL 数据移动的图表。\]](http://docs.amazonaws.cn/glue/latest/dg/images/job_detailed_etl.png)


**Example 内存配置文件图表**  
内存配置文件图表会显示以下指标：  
+ 驱动程序的 JVM 堆用于此驱动程序的内存量（比例：0-1），用 *executorId* 标识的执行程序，或所有执行程序 –
  + [`glue.driver.jvm.heap.usage`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.driver.jvm.heap.usage)
  + [`glue.executorId.jvm.heap.usage`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.executorId.jvm.heap.usage)
  + [`glue.ALL.jvm.heap.usage`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.ALL.jvm.heap.usage)

![\[Amazon Glue 控制台的 Metrics (指标) 选项卡中显示内存配置文件的图表。\]](http://docs.amazonaws.cn/glue/latest/dg/images/job_detailed_mem.png)


**Example 执行程序之间的数据随机排序图表**  
执行程序之间的数据随机排序图表显示了以下指标：  
+ 所有执行程序用于在它们之间对数据进行随机排序所读取的字节数 -[`glue.driver.aggregate.shuffleLocalBytesRead`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.driver.aggregate.shuffleLocalBytesRead)
+ 所有执行程序用于在它们之间对数据进行随机排序所写入的字节数 -[`glue.driver.aggregate.shuffleBytesWritten`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.driver.aggregate.shuffleBytesWritten)

![\[Amazon Glue 控制台的 Metrics (指标) 选项卡中显示执行程序之间的数据随机排序图表。\]](http://docs.amazonaws.cn/glue/latest/dg/images/job_detailed_data.png)


**Example CPU 负载图表**  
CPU 负载图表显示以下指标：  
+ 驱动程序使用的 CPU 系统负载量（比例：0-1），用 *executorId* 标识的执行程序，或所有执行程序 –
  + [`glue.driver.system.cpuSystemLoad`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.driver.system.cpuSystemLoad)
  + [`glue.executorId.system.cpuSystemLoad`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.executorId.system.cpuSystemLoad)
  + [`glue.ALL.system.cpuSystemLoad`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.ALL.system.cpuSystemLoad)

![\[Amazon Glue 控制台的 Metrics (指标) 选项卡中显示 CPU 负载的图表。\]](http://docs.amazonaws.cn/glue/latest/dg/images/job_detailed_cpu.png)


**Example 作业执行图表**  
作业执行图表显示以下指标：  
+ 主动运行的执行程序的数量 -[`glue.driver.ExecutorAllocationManager.executors.numberAllExecutors`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.driver.ExecutorAllocationManager.executors.numberAllExecutors)
+ 已完成的阶段数量 -[`glue.aggregate.numCompletedStages`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.driver.aggregate.numCompletedStages)
+ 需求最大的执行程序的数量 -[`glue.driver.ExecutorAllocationManager.executors.numberMaxNeededExecutors`](monitoring-awsglue-with-cloudwatch-metrics.md#glue.driver.ExecutorAllocationManager.executors.numberMaxNeededExecutors)

![\[Amazon Glue 控制台的 Metrics (指标) 选项卡中显示任务执行的图表。\]](http://docs.amazonaws.cn/glue/latest/dg/images/job_detailed_exec.png)
