

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 特征和功能
<a name="spark-troubleshooting-features"></a>

## 支持的平台
<a name="supported-platforms"></a>
+ **语言**：Python 和 Scala Spark 应用程序
+ **目标平台**：EC2 上的亚马逊 EMR、无服务器上的 EMR、EKS 上的 EMR 和 Glue AWS 

## 工作方式
<a name="how-it-works"></a>

当你的 Spark 应用程序失败时，你可以使用故障排除代理自动调查出了什么问题。它会分析您的 Spark 事件日志、错误消息和资源使用情况，以查明确切的问题——无论是 Spark 执行器内存不足、配置错误还是代码错误。

当你要求自然语言提示分析你的 Spark 工作负载时，代理会连接到你平台的资源并提取功能（包括 Spark 事件日志、查询计划、执行者时间表、日志跟踪、配置和指标）：
+ 开启 EMR-EC2：它连接到集[群的 EMR 持久用户界面](https://docs.aws.amazon.com/emr/latest/ManagementGuide/app-history-spark-UI.html)
+ On Glue：它从 Glue Studio 的 [Spark 用户界面](https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-jobs.html)中为这项工作构建上下文
+ 开启 EMR-Serverless：它会连接到 EMR-Serverless [Spark 历史服务器](https://docs.aws.amazon.com/emr-serverless/latest/APIReference/API_GetDashboardForJobRun.html)以完成作业
+ 在 EKS 上的 EMR 上：它会连接到任务的 EMR 持久用户界面。
+ 代理还会分析您的错误堆栈跟踪和配置详细信息，为您提供切实可行的见解。

对于失败的工作负载，您将获得明确的根本原因说明和修复该问题的具体步骤。如果代理检测到与代码相关的问题，它会自动提供代码建议，以显示要在代码中更改的确切内容。您也可以随时直接请求代码级建议，无需进行全面分析。

## 可用区
<a name="available-regions"></a>

Spark 故障排除代理可在以下区域使用：
+ **亚太地区**：东京（ap-northeast-1）、首尔（ap-northeast-2）、新加坡（ap-southeast-1）、悉尼（ap-southeast-2）和孟买（ap-southeast-1）和孟买（ap-southeast-1）
+ **北美洲**：加拿大（ca-central-1）
+ **欧洲**：斯德哥尔摩（eu-north-1）、爱尔兰（eu-west-1）、伦敦（eu-west-2）、巴黎（eu-west-3）和法兰克福（eu-central-1）
+ **南美洲**：圣保罗（sa-east-1）
+ **美国**：弗吉尼亚州北部（us-east-1）、俄亥俄州（us-east-2）和俄勒冈州（us-west-2）

## Spark 故障排除范围和用户要求
<a name="scope-requirements"></a>
+ **支持的 Spark 工作负载状态**：这些工具将仅支持对失败的 Spark 工作负载的响应。
+ **EMR 持久用户界面：**在 EC2 上分析 Amazon EMR 和在 EKS 工作负载上分析 EMR 时，分析工具将尝试连接到 EMR 持久用户界面以检索关键的 Spark 信息。[此处记录了 EMR 持久用户界面的注意事项。](https://docs.aws.amazon.com/emr/latest/ManagementGuide/app-history-spark-UI.html#app-history-spark-UI-limitations)
+ **Glue Studio Spark 用户界面**：在分析 AWS Glue 工作负载时，分析工具将尝试通过解析亚马逊 S3 中用户的 Spark 事件日志来检索 Spark 的关键信息。[此处](https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-jobs.html)记录了允许的最大 Spark 事件日志大小：512 MB，滚动日志为 2 GB。
+ **代码建议：**仅支持 EC2 上的 Amazon EMR、无服务器 EMR、EKS 上的 EMR 和 Glue 工作负载 AWS PySpark 
+ **区域资源：**Spark 故障排除代理是区域性的，使用该区域的底层 EMR 资源进行故障排除。 Cross-region 不支持故障排除。