

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

# 使用 X-Ray 见解
见解

Amazon X-Ray 会持续分析您账户中的跟踪数据，以识别应用程序中出现的紧急问题。当错误率超出预期范围时，它会创建*见解*来记录问题并跟踪问题产生的影响，直到问题被解决。借助见解，您可以：
+ 确定应用程序哪里出现了问题，问题的根本原因，以及关联的影响。您可以从见解提供的影响分析中获取到某个问题的严重性和优先级。
+ 随着时间推移，当问题发生变化时收到通知。见解通知可以与使用 Amazon EventBridge 的监控和警报解决方案相集成。这种集成让您可以根据问题的严重性发送自动化电子邮件或警报。

X-Ray 控制台可识别跟踪地图中正在发生事件的节点。若要查看见解摘要，请选择受影响的节点。还可以从左侧导航窗格中选择**见解**，查看和筛选见解。

![\[带有见解摘要的跟踪地图节点。\]](http://docs.amazonaws.cn/xray/latest/devguide/images/console-insights-servicemap.png)


当 X-Ray 在服务地图的一个或多个节点中检测到*异常*时，便会创建见解。该服务使用统计建模来预测应用程序中服务的预期故障率。前述示例中存在的异常为 Amazon Elastic Beanstalk 中的故障数量增多。Elastic Beanstalk 服务器经历了多次 API 调用超时，导致下游节点出现异常。

## 在 X-Ray 控制台中启用见解


必须为希望使用见解功能的每个组都启用见解。可以从**组**页面启用见解。

1. 打开 [X-Ray 控制台](https://console.amazonaws.cn/xray/home#)。

1. 选择现有组或通过选择**创建组**创建一个新组，然后选择**启用见解**。有关如何在 X-Ray 控制台中配置组的更多信息，请参阅[配置组](xray-console-groups.md)。

1. 在左侧导航窗格中选择**见解**，然后选择要查看的见解。  
![\[X-Ray 控制台中的见解列表。\]](http://docs.amazonaws.cn/xray/latest/devguide/images/console-insights.png)

**注意**  
X-Ray 使用 GetInsightSummarts、GetInsightEvents 和 GetInsightImpactGraph API 操作从见解中检索数据。  
有关更多信息，请参阅 [如何 Amazon X-Ray 与 IAM 配合使用](security_iam_service-with-iam.md)。

## 启用见解通知


可以使用见解通知为每个见解事件创建一则通知，例如，当创建见解、发生重大更改，或关闭见解时。客户可以通过 Amazon EventBridge 接收此类通知，并使用条件规则采取行动，例如 SNS 通知、Lambda 调用、将消息发布到 SQS 队列，或任意的目标 EventBridge 支持。我们会尽可能发送见解通知，但并不保证。有关目标的更多信息，请参阅 [Amazon EventBridge 目标](https://docs.amazonaws.cn/eventbridge/latest/userguide/eventbridge-targets.html)。

您可以从**组**页面为任意已启用见解的组启用见解通知。

**为 X-Ray 组启用通知**

1. 打开 [X-Ray 控制台](https://console.amazonaws.cn/xray/home#)。

1. 选择现有组或通过选择**创建组**创建一个新组，确保选中**启用见解**，然后选择**启用通知**。有关如何在 X-Ray 控制台中配置组的更多信息，请参阅[配置组](xray-console-groups.md)。

**配置 Amazon EventBridge 条件规则**

1. 打开 [Amazon EventBridge 控制台](https://console.amazonaws.cn/events/home)。

1. 导航到左侧导航栏中的**规则**，然后选择**创建规则**。

1. 提供规则的名称和描述。

1. 选择**事件模式**，然后选择**自定义模式**。提供一个包含 `"source": [ "aws.xray" ]` 和 `"detail-type": [ "AWS X-Ray Insight Update" ]` 的模式。以下是可能的一些示例模式。
   + 事件模式要匹配 X-Ray 见解中的所有传入事件：

     ```
     {
     "source": [ "aws.xray" ],
     "detail-type": [ "AWS X-Ray Insight Update" ]
     }
     ```
   + 事件模式要匹配指定的 **state** 和 **category**：

     ```
              
     {
     "source": [ "aws.xray" ],
     "detail-type": [ "AWS X-Ray Insight Update" ],
     "detail": {
             "State": [ "ACTIVE" ],
             "Category": [ "FAULT" ]
       }
     }
     ```

1. 选择并配置当某个事件匹配此规则时，您想要调用的目标。

1. （可选）提供标签以便更轻松地识别和选择此规则。

1. 选择**创建**。

**注意**  
 X-Ray 见解通知将事件发送到 Amazon EventBridge，后者暂不支持客户托管密钥。有关更多信息，请参阅 [Amazon X-Ray 中的数据保护](xray-console-encryption.md)。

## 见解
<a name="anomalous-service"></a>

见解概述页面试图回答以下三个关键问题：
+ 什么是潜在问题？
+ 什么是根本原因？
+ 什么是影响？

**异常服务**一节介绍了每个服务的时间表，展示了事件过程中故障率的变化情况。时间表显示了出现故障的跟踪数量，根据记录的流量，以实心条带指明预计的故障数量。*事件窗口*将见解的持续时间可视化。当 X-Ray 观察到指标出现异常并且启用见解后依旧存在的时候，事件窗口启动。

以下示例显示的是导致某个事件的故障出现增加：

![\[X-Ray 见解的概述页面。\]](http://docs.amazonaws.cn/xray/latest/devguide/images/console-insights-overview.png)
<a name="root-cause"></a>

**根本原因**一节显示了聚焦根本原因服务和受影响路径的跟踪地图。可以选择根本原因地图右上角的眼睛图标，以隐藏未受影响的节点。根本原因服务是 X-Ray 识别到异常的最远的下游节点。它可以代表您检测的某项服务，或是您服务使用检测客户端调用过的外部服务。例如，如果您调用带有检测的 Amazon SDK 客户端的 Amazon DynamoDB，DynamoDB 中的故障数量会增强，从而导致将 DynamoDB 作为根本原因的见解。

若要进一步调查根本原因，请在根本原因图上选择**查看根本原因详情**。您可以使用**分析**页面来调查根本原因以及相关消息。有关更多信息，请参阅 [与 Analytics 控制台交互](xray-console-analytics.md)。

![\[X-Ray 见解的概述页面。\]](http://docs.amazonaws.cn/xray/latest/devguide/images/console-insights-root-cause.png)
<a name="impact"></a>

在地图中继续上游的故障会影响多个节点，并会导致多种异常。如果某个故障一直传回到发出请求的用户，就会出现*客户端故障*。这是跟踪地图的根节点的一个故障。**影响**示意图为整个组的客户端体验提供了时间表。根据以下状态的比例来计算此体验：**故障**、**错误**、**瓶颈**和**没错**。

![\[X-Ray 事件的影响图。\]](http://docs.amazonaws.cn/xray/latest/devguide/images/console-insights-impact.png)


此示例显示在事件发生过程中，在顶部节点带有故障的跟踪增加了。下游服务中的事件并不总是与客户端错误的增加相对应。

选择**分析见解**会在窗口中打开 X-Ray Analytics 控制台，您可以在其中深入研究产生见解的跟踪集。有关更多信息，请参阅 [与 Analytics 控制台交互](xray-console-analytics.md)。

**了解影响**

Amazon X-Ray 会衡量某个持续问题造成的影响，并作为一部分生成见解和通知。有两种方法来衡量影响：
+ 对 X-Ray [组](xray-console-groups.md)的影响
+ 对根本原因服务的影响

此影响由在给定时间内发生故障或造成错误的请求比例决定。通过这种影响分析，您可以根据自己的特定情况得出问题的严重性和优先级。除了见解通知以外，影响还是控制台体验的一部分。

**重复数据删除**

Amazon X-Ray 见解会重复去除多个微服务中存在的重复问题。它使用异常检测来确定是某个问题根本原因的服务，确定其他相关服务是否由于同一根本原因展现出异常行为，并将结果记录为单个见解。

## 查看见解的进展


X-Ray 会定期重新评估见解直到问题得到解决，并将每个显著的中间变化记录为[通知](#xray-console-insight-notifications)，可以作为 Amazon EventBridge 事件发送。这让您能够构建流程和工作流以确定问题随时间推移如何变化，并采取适当操作，例如发送电子邮件，或与使用 EventBridge 的警报系统相集成。

您可以在**影响**页面上的**影响时间表**中查看事件活动。默认情况下，时间表会显示最受影响的服务，直到您选择另一项服务。

![\[检查包含影响时间表的页面。\]](http://docs.amazonaws.cn/xray/latest/devguide/images/console-insights-inspect.png)
<a name="impact-analysis"></a>

要查看某个事件的跟踪地图和示意图，请从影响时间表中选择该事件。跟踪地图显示应用程序中受事件影响的服务。在“**影响分析**”下，图表显示选定节点和组中客户端的故障时间表。

![\[X-Ray 见解的影响分析图。\]](http://docs.amazonaws.cn/xray/latest/devguide/images/console-insights-inspect-analysis.png)


若要更加深入地了解某个事件中涉及的跟踪，请在**检查**页面上选择**分析事件**。可以使用**分析**页面来优化跟踪列表并确定受影响的用户。有关更多信息，请参阅 [与 Analytics 控制台交互](xray-console-analytics.md)。