使用 X-Ray 洞察 - AWS X-Ray

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 X-Ray 洞察

AWS X-Ray 持續分析帳戶中的追蹤資料,以識別應用程式中的緊急問題。當故障率超過預期範圍時,它會創建一個洞察力,以記錄問題並跟踪其影響,直到解決為止。透過深入解析,您可以:

  • 識別應用程式問題發生的位置、問題的根本原因以及相關影響。深入解析提供的影響分析可讓您衍生問題的嚴重性和優先順序。

  • 在問題隨時間變化時接收通知。洞察通知可以使用 Amazon EventBridge 與您的監控和警示解決方案整合。此整合可讓您根據問題的嚴重性傳送自動電子郵件或警示。

X-Ray 主控台可識別追蹤圖中有持續發生事件的節點。若要查看見解摘要,請選擇受影響的節點。您也可以從左側的導覽窗格中選擇 [深入解析],以檢視和篩選深入解析。

帶有洞察力摘要的跟踪映射節點。

X-Ray 會在偵測到服務對應的一或多個節點中的異常時建立洞察。此服務會使用統計模型來預測應用程式中服務的預期故障率。在前面的例子中,異常是從 AWS Elastic Beanstalk中增加故障。Elastic Beanstalk 伺服器遇到多個 API 呼叫逾時,造成下游節點異常。

在 X-Ray 主控台中啟用深入解

必須針對您想要使用深入解析功能的每個群組啟用深入解析。您可以從「群組」頁面啟用深入解析。

  1. 開啟 X-Ray 主控台

  2. 選取現有群組或透過選擇建立群組建立新群組,然後選取啟用深入解析。如需有關在 X-Ray 主控台中設定群組的更多資訊,請參閱設定群組

  3. 在左側的導覽窗格中,選擇 [深入解析],然後選擇要檢視的深入解析。

    X-Ray 主控台中的深入解析清單。
注意

X-Ray 使用 GetInsightSummaries GetInsight GetInsightEvents、和 GetInsightImpactGraph API 操作從見解中擷取資料。若要檢視見解,請使用 AWSXrayReadOnlyAccess IAM 受管政策,或將下列自訂政策新增至您的 IAM 角色:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:GetInsightSummaries", "xray:GetInsight", "xray:GetInsightEvents", "xray:GetInsightImpactGraph" ], "Resource": [ "*" ] } ] }

如需詳細資訊,請參閱 如何 AWS X-Ray 使用 IAM

啟用見解通知

透過深入解析通知,系統會針對每個見解事件建立通知,例如深入解析建立、發生重大變更或關閉時。客戶可以透過 Amazon EventBridge 事件接收這些通知,並使用條件規則執行 SNS 通知、Lambda 叫用、將訊息發佈到 SQS 佇列或任何目標 EventBridge 支援等動作。我們會盡力發出見解通知,但不能保證。如需有關目標的詳細資訊,請參閱 Amazon EventBridge 目標

您可以從「群組」頁面為任何啟用見解的群組啟用見解通知。

啟用 X-Ray 群組的通知
  1. 開啟 X-Ray 主控台

  2. 選取現有群組或透過選擇建立群組建立新群組,確定已選取 [啟用深入解析],然後選取 [啟用通知]。如需有關在 X-Ray 主控台中設定群組的更多資訊,請參閱設定群組

若要設定 Amazon EventBridge 條件規則
  1. 打開 Amazon EventBridge 控制台

  2. 導覽至左側導覽列中的「規則」,然後選擇「建立規則」。

  3. 提供規則的名稱和說明。

  4. 選擇 [事件模式],然後選擇 [自訂模式]。提供包含"source": [ "aws.xray" ]和的模式"detail-type": [ "AWS X-Ray Insight Update" ]。以下是一些可能模式的範例。

    • 事件模式,以匹配所有來自 X-Ray 見解的傳入事件:

      { "source": [ "aws.xray" ], "detail-type": [ "AWS X-Ray Insight Update" ] }
    • 要與指定的和相符的事件模statecategory

      { "source": [ "aws.xray" ], "detail-type": [ "AWS X-Ray Insight Update" ], "detail": { "State": [ "ACTIVE" ], "Category": [ "FAULT" ] } }
  5. 選取並設定當事件符合此規則時要呼叫的目標。

  6. (選擇性) 提供標籤,以便更輕鬆地識別並選取此規則。

  7. 選擇建立

注意

X-Ray 洞察通知會將事件傳送至 Amazon EventBridge,而 Amazon 目前不支援客戶受管金鑰。如需詳細資訊,請參閱 AWS X-Ray 中的資料保護

洞察概述

深入解析的概觀頁面會嘗試回答三個關鍵問題:

  • 根本問題是什麼?

  • 根本原因是什麼?

  • 有什麼影響?

異常服務」區段會顯示每個服務的時間表,說明事件期間的故障率變化。時間表會顯示實體頻帶上覆蓋故障的追蹤數目,根據記錄的流量指出預期的錯誤數目。洞察力的持續時間由「事件」窗口可視化。當 X-Ray 觀察到量度變得異常並在洞察活動時持續存在,事件窗口就會開始。

下列範例顯示造成事件的錯誤增加:

X-Ray 洞察的概述頁面。

根本原因」區段會顯示針對根本原因服務和受影響路徑的追蹤對應。您可以選取「根本原因」對映右上角的眼睛圖示,以隱藏未受影響的節點。根本原因服務是 X-Ray 識別異常的最遠下游節點。它可以代表您已檢測的服務或您的服務使用已檢測的用戶端呼叫的外部服務。例如,如果您使用已檢測的 AWS SDK 用戶端呼叫 Amazon DynamoDB,DynamoDB 的錯誤增加會導致使用 DynamoDB 做為根本原因的洞察。

若要進一步調查根本原因,請選取根本原因圖表上的檢視根本原因詳細資訊。您可以使用「分析」頁面來調查根本原因和相關訊息。如需詳細資訊,請參閱 與 Analytics 主控台互動

X-Ray 洞察的概述頁面。

在地圖中繼續上游的錯誤可能會影響多個節點並導致多個異常。如果故障一路傳回提出要求的使用者,結果就是用戶端錯誤。這是跟踪映射的根節點的錯誤。「影響」圖表提供整個群組的用戶端體驗時間表。此體驗是根據下列狀態的百分比計算:「錯誤」、「錯誤」、「節流」和「常」。

X-Ray 事件的影響圖。

此範例顯示發生事件期間根節點發生錯誤的追蹤增加。下游服務中的事件並不總是與用戶端錯誤的增加相對應。

選擇「分析洞察」會在視窗中開啟 X-Ray Analytics 主控台,您可以在其中深入瞭解產生深入分析的追蹤集。如需詳細資訊,請參閱 與 Analytics 主控台互動

了解影響

AWS X-Ray 衡量由持續問題引起的影響,作為生成見解和通知的一部分。影響的測量方式有兩種:

  • 對 X-Ray 的影響

  • 對根本原因服務的影響

此影響是由指定時間段內失敗或導致錯誤的要求百分比決定。此影響分析可讓您根據特定情況推導問題的嚴重性和優先順序。除了深入解析通知之外,這項影響還可作為主控台體驗的一部分。

重複資料刪

AWS X-Ray 洞察解決跨多個微服務的重複問題。它會使用異常偵測來判斷問題根本原因的服務,判斷其他相關服務是否因為相同的根本原因而呈現異常行為,並將結果記錄為單一分析。

查看洞察力的進度

X-Ray 會定期重新評估見解,直到解決為止,並將每個重要的中間變更記錄為通知,並以 Amazon EventBridge 事件的形式傳送。這可讓您建立程序和工作流程,以判斷問題在一段時間內如何變更,並採取適當的動作,例如傳送電子郵件或使 EventBridge用與警示系統整合。

您可以在「檢查」頁面的「影響時間表」中檢閱事件事件。依預設,時間表會顯示受影響最嚴重的服務,直到您選擇不同的服務為止。

檢查頁面與影響時間軸。

若要查看事件的追蹤對應和圖表,請從影響時間軸選擇它。追蹤對應會顯示應用程式中受事件影響的服務。在「影響分析」下,圖表會顯示所選節點和群組中從屬端的錯誤時間表。

X-Ray 洞察的影響分析圖。

若要深入查看事件所涉及的追蹤,請選擇「檢查」頁面上的「分析事件」。您可以使用「分析」頁面來精簡追蹤清單,並識別受影響的使用者。如需更多詳細資訊,請參閱 與 Analytics 主控台互動