

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

# 使用主控台
<a name="aws-xray-interface-console"></a>

如果您想要需要最低編碼的圖形使用者介面 (GUI)，請使用 主控台。初次使用 X-Ray 的使用者可以使用預先建置的視覺化效果快速入門，並執行基本任務。您可以直接從主控台執行下列動作：
+ 啟用 X-Ray。
+ 檢視應用程式效能的高階摘要。
+ 檢查應用程式的運作狀態。
+ 識別高階錯誤。
+ 檢視基本追蹤摘要。

您可以使用位於 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)：// 的 Amazon CloudWatch 主控台或位於 [https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home)：// 的 X-Ray 主控台與 X-Ray 互動。

## 使用 Amazon CloudWatch 主控台
<a name="aws-xray-interface-console-cw"></a>

CloudWatch 主控台包含從 X-Ray 主控台重新設計的新 X-Ray 功能，讓您更輕鬆地使用。如果您使用 CloudWatch 主控台，您可以檢視 CloudWatch 日誌和指標以及 X-Ray 追蹤資料。使用 CloudWatch 主控台來檢視和分析資料，包括下列項目：
+ X-Ray 追蹤 – 檢視、分析和篩選與您的應用程式相關聯的追蹤，因為它可處理請求。使用這些追蹤來尋找高延遲、偵錯錯誤，並最佳化您的應用程式工作流程。檢視追蹤地圖和服務地圖，以查看應用程式工作流程的視覺化呈現。
+ 日誌 – 檢視、分析和篩選應用程式產生的日誌。使用日誌對錯誤進行故障診斷，並根據特定日誌值設定監控。
+ 指標 – 使用資源發出的指標或建立自己的指標，測量和監控您的應用程式效能。在圖形和圖表中檢視這些指標。
+ 監控網路和基礎設施 – 監控主要網路是否有中斷，以及基礎設施的運作狀態和效能，包括容器化應用程式、 AWS 其他服務和用戶端。
+ 下列**使用 X-Ray 主控台區段中列出的 X-Ray 主控台**的所有功能。

如需 CloudWatch 主控台的詳細資訊，請參閱 [Amazon CloudWatch 入門](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/GettingStarted.html)。

登入 Amazon CloudWatch 主控台，網址為 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)。

## 使用 X-Ray 主控台
<a name="xray-console"></a>

X-Ray 主控台提供應用程式請求的分散式追蹤。如果您想要更簡單的主控台體驗或不想更新您的應用程式碼，請使用 X-Ray 主控台。 AWS 不再開發 X-Ray 主控台。X-Ray 主控台包含受檢測應用程式的下列功能：
+ [洞見](xray-console-insights.md) – 自動偵測應用程式效能中的異常，並找出根本原因。Insights 包含在 CloudWatch 主控台的 **Insights** 下。如需詳細資訊，請參閱《》中的**使用 X-Ray Insights**[使用 X-Ray 主控台](#xray-console)。
+ 服務映射 – 檢視應用程式及其與用戶端、資源、服務和相依性的連線的圖形結構。
+ 追蹤 – 查看應用程式在處理請求時所產生的追蹤概觀。使用追蹤資料來了解您的應用程式如何根據基本指標執行，包括HTTP回應和回應時間。
+ 分析 – 使用回應時間分佈圖表來解譯、探索和分析追蹤資料。
+ 組態 – 建立自訂追蹤以變更下列項目的預設組態：
  + 取樣 – 建立規則，定義取樣應用程式以取得追蹤資訊的頻率。如需詳細資訊，請參閱在 [使用 X-Ray 主控台](#xray-console) 中**設定抽樣規則**。
  + [加密](xray-console-encryption.md) – 使用您可以使用 稽核或停用的金鑰來加密靜態資料 AWS Key Management Service。
  + 群組 – 使用篩選條件表達式來定義具有常見功能的追蹤群組，例如 URL 名稱或回應時間。如需詳細資訊，請參閱[設定群組](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray-interface-console.html#xray-console-groups)。

登入位於 https：//[https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home) 的 X-Ray 主控台。

## 探索 X-Ray 主控台
<a name="xray-console-explore"></a>

使用 X-Ray 主控台檢視應用程式提供之請求的服務映射和相關追蹤，以及設定群組和取樣規則，這些規則會影響追蹤傳送至 X-Ray 的方式。

**注意**  
X-Ray Service 映射和 CloudWatch ServiceLens 映射已合併到 Amazon CloudWatch 主控台中的 X-Ray 追蹤映射中。開啟 [CloudWatch 主控台](https://console.aws.amazon.com/cloudwatch/)，然後從左側導覽窗格選擇 **X-Ray 追蹤下的追蹤****映射**。  
 CloudWatch 現在包含 [Application Signals](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html)，可探索和監控您的應用程式服務、用戶端、Synthetics Canary 和服務相依性。使用 Application Signals 查看服務清單或視覺化地圖，根據您的服務等級目標 (SLO) 檢視運作狀態指標，並深入了解相關的 X-Ray 追蹤以取得更詳細的疑難排解。

主要 X-Ray 主控台頁面是追蹤映射，這是 X-Ray 從應用程式產生的追蹤資料產生的 JSON 服務圖形視覺呈現。映射由您帳戶中每個處理請求的應用程式服務節點、代表請求來源的上游用戶端節點，以及代表處理請求過程中應用程式所使用 web 服務及資源的下游服務節點組成。還有其他頁面可檢視追蹤和追蹤詳細資訊，以及設定群組和取樣規則。

檢視 X-Ray 的主控台體驗，並與下列各節中的 CloudWatch 主控台進行比較。

**Topics**
+ [使用 Amazon CloudWatch 主控台](#aws-xray-interface-console-cw)
+ [使用 X-Ray 主控台](#xray-console)
+ [探索 X-Ray 主控台](#xray-console-explore)
+ [使用 X-Ray 追蹤映射](xray-console-servicemap.md)
+ [檢視追蹤和追蹤詳細資訊](xray-console-traces.md)
+ [使用篩選條件表達式](xray-console-filters.md)
+ [跨帳戶追蹤](xray-console-crossaccount.md)
+ [追蹤事件驅動型應用程式](xray-tracelinking.md)
+ [使用延遲長條圖](xray-console-histograms.md)
+ [使用 X-Ray 洞察](xray-console-insights.md)
+ [與 Analytics 主控台互動](xray-console-analytics.md)
+ [設定 群組](xray-console-groups.md)
+ [設定 取樣規則](xray-console-sampling.md)
+ [設定自適應抽樣](xray-adaptive-sampling.md)
+ [主控台深層連結](xray-console-deeplinks.md)

# 使用 X-Ray 追蹤映射
<a name="xray-console-servicemap"></a>

檢視 X-Ray 追蹤映射，以識別發生錯誤的服務、具有高延遲的連線，或失敗請求的追蹤。

**注意**  
 CloudWatch 現在包含 [Application Signals](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html)，可探索和監控您的應用程式服務、用戶端、合成 Canary 和服務相依性。使用 Application Signals 查看服務清單或視覺化地圖，根據您的服務等級目標 (SLO) 檢視運作狀態指標，並深入了解相關的 X-Ray 追蹤以取得更詳細的疑難排解。  
X-Ray 服務映射和 CloudWatch ServiceLens 映射會合併到 Amazon CloudWatch 主控台內的 X-Ray 追蹤映射中。開啟 [CloudWatch 主控台](https://console.aws.amazon.com/cloudwatch/)，然後從左側導覽窗格選擇 **X-Ray 追蹤下的追蹤****地圖**。

## 檢視追蹤映射
<a name="xray-console-servicemap-view"></a>

追蹤映射是應用程式所產生追蹤資料的視覺化呈現。地圖會顯示服務節點，其可處理請求、代表請求來源的上游用戶端節點，以及代表應用程式在處理請求時所使用的 Web 服務和資源的下游服務節點。

追蹤映射會顯示使用 Amazon SQS 和 Lambda 之事件驅動應用程式的追蹤連線檢視。如需詳細資訊，請參閱[追蹤事件驅動的應用程式](xray-tracelinking.md)。追蹤映射也支援[跨帳戶追蹤](xray-console-crossaccount.md)，在單一映射中顯示來自多個帳戶的節點。

------
#### [ CloudWatch console ]

**在 CloudWatch 主控台中檢視追蹤映射**

1. 開啟 [CloudWatch 主控台](https://console.aws.amazon.com/cloudwatch/)。在左側導覽窗格中的 **X-Ray 追蹤區段下，選擇****追蹤地圖**。  
![\[CloudWatch 主控台追蹤映射頁面\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-servicemap-cw.png)

1. 選擇服務節點來檢視該節點的請求，或是兩個節點間的邊緣來檢視在該連線上進行的請求。

1.  其他資訊會顯示在追蹤映射下方，包括指標、提醒和回應時間分佈的標籤。在**指標**索引標籤上，選取每個圖形內的範圍來向下切入以檢視更多詳細資訊，或選擇**錯誤**或**錯誤**選項來篩選追蹤。在**回應時間分佈**索引標籤上，選取圖形內的範圍，以依回應時間篩選追蹤。  
![\[Dashboard showing latency, requests, and faults metrics for an ElasticBeanstalk environment.\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-cw-servicemap-node-detail.png)

1. 選擇檢視追蹤來**檢視追蹤**，或者如果已套用篩選條件，請選擇**檢視篩選的追蹤**。

1.  選擇**檢視日誌**以查看與所選節點相關聯的 CloudWatch 日誌。並非所有追蹤映射節點都支援檢視日誌。如需詳細資訊，請參閱對 [ CloudWatch 日誌進行故障](xray-troubleshooting.md#xray-troubleshooting-Nologs)診斷。

追蹤映射會以顏色概述每個節點內的問題：
+ **紅色**表示伺服器故障 (500 系列錯誤)
+ **黃色**表示用戶端錯誤 (400 系列錯誤)
+ **紫色**表示調節錯誤 (429 請求數太多)

如果您的追蹤映射很大，請使用螢幕控制項或滑鼠來放大和縮小和移動映射。

------
#### [ X-Ray console ]

**檢視服務映射**

1. 開啟 [X-Ray 主控台](https://console.aws.amazon.com/xray/home#)。預設會顯示服務映射。您也可以從左側導覽窗格中選擇**服務地圖**。  
![\[X-Ray 主控台服務映射頁面\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-servicemap-xray.png)

1. 選擇服務節點來檢視該節點的請求，或是兩個節點間的邊緣來檢視在該連線上進行的請求。

1. 使用回應分佈[長條圖](xray-console-histograms.md)依持續時間篩選追蹤，然後選取您要檢視追蹤的狀態碼。然後選擇 **View traces (檢視追蹤)** 來使用套用的篩選條件表達式開啟追蹤清單。  
![\[Response distribution graph showing latency peaks and service details for Scorekeep AWS ECS container.\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-servicemap-nodedetail-xray.png)

服務映射會透過根據成功呼叫與錯誤及故障的比例，將每個節點標上顏色，來指出每個節點的運作狀態。
+ **綠色**表示成功呼叫
+ **紅色**表示伺服器故障 (500 系列錯誤)
+ **黃色**表示用戶端錯誤 (400 系列錯誤)
+ **紫色**表示調節錯誤 (429 請求數太多)

如果您的服務映射很大，請使用螢幕控制項或滑鼠來放大和縮小和移動映射。

------

**注意**  
X-Ray 追蹤映射最多可顯示 10，000 個節點。在服務節點總數超過此限制的罕見情況下，您可能會收到錯誤，無法在主控台中顯示完整的追蹤映射。

## 依群組篩選追蹤映射
<a name="xray-console-servicemap-groups"></a>

使用[篩選條件表達](xray-console-filters.md)式，您可以定義要在群組中包含追蹤的條件。使用下列步驟在追蹤映射中顯示該特定群組。

------
#### [ CloudWatch console ]

從追蹤映射左上角的群組篩選條件中選擇群組名稱。

![\[Search bar for filtering by X-Ray group, with "TestGroup" displayed as an option.\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-servicemap-groups-cw.png)


------
#### [ X-Ray console ]

從下拉式功能表左側的搜尋列，選擇群組名稱。

![\[Drop-down menu showing Default, TestGroup, Create group, and Learn more options.\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-select-console.png)


------

現在將篩選服務映射，以顯示符合所選群組篩選條件表達式的追蹤。

## 追蹤地圖圖例和選項
<a name="xray-console-servicemap-options"></a>

追蹤映射包含圖例和數個選項，用於自訂映射顯示。

------
#### [ CloudWatch console ]

選擇地圖右上角的**圖例和選項**下拉式清單。選擇節點中顯示的內容，包括：
+  **指標**會顯示平均回應時間和在所選時間範圍內每分鐘傳送的追蹤數量。
+  **節點**會顯示每個節點內的服務圖示。

 從**偏好設定**窗格選擇其他地圖設定，可透過地圖右上角的齒輪圖示存取。這些設定包括選取用於判斷每個節點大小的指標，以及哪些 Canary 應顯示在地圖上。

------
#### [ X-Ray console ]

選擇地圖右上角的**地圖圖例**連結，以顯示服務地圖圖例。您可以在追蹤映射的右下角選擇服務映射選項，包括：
+  **服務圖示**會切換每個節點內顯示的內容，顯示服務圖示，或在所選時間範圍內每分鐘傳送的平均回應時間和追蹤數量。
+  **節點大小：無**會將所有節點設為相同大小。
+  **節點大小調整：運作**狀態會依受影響的請求數量來調整節點大小，包括錯誤、故障或限流請求。
+  **節點大小：流量**會依請求總數來調整節點大小。

------

# 檢視追蹤和追蹤詳細資訊
<a name="xray-console-traces"></a>

使用 X-Ray 主控台中的**追蹤**頁面，依 URL、回應碼或追蹤摘要中的其他資料尋找追蹤。從追蹤清單中選取追蹤之後，**追蹤詳細資訊**頁面會顯示與所選追蹤相關聯的服務節點映射，以及追蹤區段的時間軸。

## 檢視追蹤
<a name="xray-console-traces-view"></a>

------
#### [ CloudWatch console ]

**在 CloudWatch 主控台中檢視追蹤**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽窗格中，選擇 **X-Ray 追蹤**，然後選擇**追蹤**。您可以依群組篩選或輸入[篩選條件表達](xray-console-filters.md)式。這會篩選頁面底部的追蹤區段中顯示的**追蹤**。

   或者，您可以使用服務映射導覽至特定服務節點，然後檢視追蹤。這會開啟已套用查詢**的追蹤**頁面。

1. 在查詢**精簡器區段中精簡您的查詢**。若要依常見屬性篩選追蹤，請從**精簡查詢依據**旁的向下箭頭選擇一個選項。選項包括下列項目：
   + 節點 – 依服務節點篩選追蹤。
   + 資源 ARN – 依與追蹤相關聯的資源篩選追蹤。這些資源的範例包括 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體、 AWS Lambda 函數或 Amazon DynamoDB 資料表。
   + 使用者 – 使用使用者 ID 篩選追蹤。
   + 錯誤根本原因訊息 – 依錯誤根本原因篩選追蹤。
   + URL – 依應用程式使用的 URL 路徑篩選追蹤。
   + HTTP 狀態碼 – 依應用程式傳回的 HTTP 狀態碼篩選追蹤。您可以指定自訂回應代碼，或從下列項目中選取：
     + `200` – 請求成功。
     + `401` – 請求缺少有效的身分驗證登入資料。
     + `403` – 請求缺少有效許可。
     + `404` – 伺服器找不到請求的資源。
     + `500` – 伺服器遇到未預期的條件並產生內部錯誤。

   選擇一或多個項目，然後選擇**新增至查詢**，以新增至頁面頂端的篩選條件表達式。

1. 若要尋找單一追蹤，請直接在查詢欄位中輸入[追蹤 ID](xray-api-sendingdata.md#xray-api-traceids)。您可以使用 X-Ray 格式或全球資訊網協會 (W3C) 格式。例如，使用 [AWS Distro for OpenTelemetry](xray-instrumenting-your-app.md#xray-instrumenting-opentel) 建立的追蹤是 W3C 格式。
**注意**  
當您查詢使用 W3C-format追蹤 ID 建立的追蹤時，主控台會以 X-Ray 格式顯示相符的追蹤。例如，如果您`4efaaf4d1e8720b39541901950019ee5`以 W3C 格式查詢 ，主控台會顯示 X-Ray 對等項目：`1-4efaaf4d-1e8720b39541901950019ee5`。

1. 選擇隨時**執行查詢**，以在頁面底部的追蹤區段中顯示相符**的追蹤**清單。

1. 若要顯示單一追蹤的追蹤**詳細資訊**頁面，請從清單中選擇追蹤 ID。

   下圖顯示**追蹤映射**，其中包含與追蹤相關聯的服務節點，以及節點之間的邊緣，代表由構成追蹤的區段所採取的路徑。**追蹤摘要**遵循**追蹤地圖**。摘要包含範例`GET`操作、其**回應碼**、追蹤執行所花費的**持續時間**，以及請求的**存留期**的相關資訊。**客群時間軸**遵循**追蹤摘要**，顯示追蹤客群和子客群的持續時間。  
![\[追蹤映射、摘要和客群時間軸會詳細說明追蹤中服務節點和客群的相關資訊。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/xray-trace-details-cw.png)

   如果您有使用 Amazon SQS 和 Lambda 的事件驅動應用程式，您可以在追蹤**映射中查看每個請求的追蹤**連線檢視。在地圖中，來自訊息生產者的追蹤會連結到來自 AWS Lambda 消費者的追蹤，並以虛線邊緣顯示。如需事件驅動型應用程式的詳細資訊，請參閱 [追蹤事件驅動型應用程式](xray-tracelinking.md)。

   **追蹤**和**追蹤詳細資訊**頁面也支援[跨帳戶追蹤](xray-console-crossaccount.md)，可在追蹤清單中和單一追蹤映射內列出來自多個帳戶的追蹤。

------
#### [ X-Ray console ]

**在 X-Ray 主控台中檢視追蹤**

1. 在 X-Ray 主控台中開啟[追蹤](https://console.aws.amazon.com/xray/home#/traces)頁面。**追蹤概觀**面板會顯示依常見功能分組的追蹤清單，包括**錯誤根本原因**、**ResourceARN** 和 **InstanceId**。

1. 若要選取常見功能以檢視一組分組的追蹤，請展開**分組依據**旁的向下箭頭。下圖顯示依 URL 分組的追蹤概觀[AWS X-Ray 範例應用程式](xray-scorekeep.md)，以及相關聯的追蹤清單。  
![\[依 URL 分組的範例追蹤概觀，後面接著追蹤清單，其中包含 ID、方法和回應等詳細資訊。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/scorekeep-traces.png)

1. 選擇追蹤的 **ID**，以在**追蹤清單**下檢視。您也可以在導覽窗格中選擇**服務映射**，以檢視特定服務節點的追蹤。然後，您可以檢視與該節點相關聯的追蹤。

   **時間軸**索引標籤會顯示追蹤的請求流程，並包含下列項目：
   + 追蹤中每個區段的路徑映射。
   + 區段到達追蹤映射中節點所需的時間。
   + 對追蹤映射中的節點提出了多少請求。

   下圖顯示與對範例應用程式提出之`GET`請求相關聯的**追蹤地圖**範例。箭頭顯示每個區段完成請求所採取的路徑。服務節點會顯示請求期間提出的`GET`請求數量。  
![\[追蹤映射後面接著時間軸，其中包含區段、其持續時間、原始伺服器，以及相對於彼此的結尾。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/xray-trace-details.png)

   如需**時間軸**索引標籤的詳細資訊，請參閱下列**探索追蹤時間軸**區段。

   **原始資料**索引標籤會以 `JSON` 格式顯示追蹤的相關資訊，以及構成追蹤的區段和子區段。此資訊可能包括下列項目：
   + 時間戳記
   + 唯一 ID
   + 與區段或子區段相關聯的資源
   + 區段或子區段的來源或原始伺服器
   + 有關對應用程式請求的其他資訊，例如來自 HTTP 請求的回應

------

## 探索追蹤時間軸
<a name="xray-console-traces-timeline"></a>

**時間軸**區段會在水平長條旁顯示區段和子區段的階層，對應於他們用來完成任務的時間。清單中的第一個項目是區段，代表服務為單一請求記錄的所有資料。子區段會縮排，並列在區段後面。資料欄包含每個區段的相關資訊。

------
#### [ CloudWatch console ]

在 CloudWatch 主控台中，**客群時間軸**會提供下列資訊：
+ 第一欄：列出所選追蹤中的區段和子區段。
+ **區段狀態**欄：列出每個區段和子區段的狀態結果。
+ **回應碼**欄：列出區段或子區段提出的瀏覽器請求的 HTTP 回應狀態碼，當可用時。
+ **持續時間**欄：列出區段或子區段執行的時間長度。
+ **託管於**資料欄：列出執行區段或子區段的命名空間或環境，如適用。如需詳細資訊，請參閱[收集的維度和維度組合](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AppSignals-StandardMetrics.html#AppSignals-StandardMetrics-Dimensions)。
+ 最後一欄：顯示與時間軸中其他區段或子區段相關的區段或子區段執行持續時間對應的水平長條。

若要依服務節點分組區段和子區段清單，請開啟**依節點分組**。

------
#### [ X-Ray console ]

在追蹤詳細資訊頁面中，選擇**時間軸**索引標籤，以查看構成追蹤的每個區段和子區段的時間軸。

在 X-Ray 主控台中，**時間軸**會提供下列資訊：
+ **名稱**欄：列出追蹤中區段和子區段的名稱。
+ Res**.** 欄：列出區段或子區段提出的瀏覽器請求的 HTTP 回應狀態碼，當可用時。
+ **持續時間**欄：列出區段或子區段執行的時間長度。
+ **狀態**欄：列出區段或子區段狀態的結果。
+ 最後一欄：顯示與時間軸中其他區段或子區段相關的區段或子區段執行持續時間對應的水平長條。

若要查看主控台用來產生時間軸的原始追蹤資料，請選擇**原始資料**索引標籤。原始資料會顯示追蹤的相關資訊，以及以 `JSON` 格式編寫追蹤的區段和子區段。此資訊可能包括下列項目：
+ 時間戳記
+ 唯一 ID
+ 與區段或子區段相關聯的資源
+ 區段或子區段的來源或原始伺服器
+ 有關對應用程式提出請求的其他資訊，例如來自 HTTP 請求的回應。

------

當您使用經檢測的 AWS 開發套件HTTP、 或 SQL用戶端呼叫外部資源時，X-Ray 開發套件會自動記錄子區段。您也可以使用 X-Ray SDK 記錄任何函數或程式碼區塊的自訂子區段。自訂子區段開啟時記錄的其他子區段會成為自訂子區段的子區段。

## 檢視區段詳細資訊
<a name="xray-console-segments"></a>

從追蹤**時間軸**中，選擇要檢視其詳細資訊的客群名稱。

**區段詳細資訊**面板會顯示**概觀**、**資源**、**註釋**、**中繼資料**、**例外**狀況和 **SQL** 索引標籤。適用下列情況：
+ **Overview (概觀)** 標籤會顯示請求及回應的相關資訊。資訊包括名稱、開始時間、結束時間、持續時間、請求 URL、請求操作、請求回應碼，以及任何錯誤和故障。
+ 區段**的資源**索引標籤會顯示 X-Ray 開發套件的資訊，以及執行您應用程式 AWS 的資源。使用 X-Ray SDK 的 Amazon EC2 AWS Elastic Beanstalk或 Amazon ECS 外掛程式來記錄服務特定的資源資訊。如需外掛程式的詳細資訊，請參閱《》中的**服務外掛程式**一節[設定適用於 Java 的 X-Ray 開發套件](xray-sdk-java-configuration.md)。
+ 其餘索引標籤會顯示針對區段記錄的**註釋**、**中繼資料**和**例外**狀況。從檢測的請求產生例外狀況時，系統會自動擷取例外狀況。註釋和中繼資料包含您使用 X-Ray SDK 提供的操作記錄的其他資訊。若要將註釋或中繼資料新增至您的客群，請使用 X-Ray 開發套件。如需詳細資訊，請參閱 中使用 AWS X-Ray SDKs 檢測應用程式下列出的特定語言連結[檢測您的應用程式 AWS X-Ray](xray-instrumenting-your-app.md)。

## 檢視子區段詳細資訊
<a name="xray-console-subsegments"></a>

從追蹤時間軸中，選擇子區段的名稱以檢視其詳細資訊：
+ **概觀**索引標籤包含請求和回應的相關資訊。這包括名稱、開始時間、結束時間、持續時間、請求 URL、請求操作、請求回應碼，以及任何錯誤和故障。針對使用受檢測用戶端產生的子區段，**Overview (概觀)** 標籤包含從您應用程式觀點的請求和回應相關資訊。
+ 子區段**的資源**索引標籤會顯示用來執行子區段之 AWS 資源的詳細資訊。例如，資源索引標籤可能包含 AWS Lambda 函數 ARN、DynamoDB 資料表的相關資訊、呼叫的任何操作，以及請求 ID。
+ 其餘索引標籤會顯示子區段上記錄的**註釋**、**中繼資料**和**例外**狀況。從檢測的請求產生例外狀況時，系統會自動擷取例外狀況。註釋和中繼資料包含您使用 X-Ray SDK 提供的操作記錄的其他資訊。使用 X-Ray SDK 將註釋或中繼資料新增至您的客群。如需詳細資訊，請參閱 中使用 ** SDKs 檢測應用程式 AWS X-Ray **下列出的特定語言連結[檢測您的應用程式 AWS X-Ray](xray-instrumenting-your-app.md)。

針對自訂子區段，**Overview (概觀)** 標籤會顯示子區段的名稱，您可以設定該名稱來指定其記錄的程式碼或函數區域。如需詳細資訊，請參閱 中使用 ** AWS X-Ray SDKs 檢測應用程式**下列出的特定語言連結[使用適用於 Java 的 X-Ray 開發套件產生自訂子區段](xray-sdk-java-subsegments.md)。

下圖顯示自訂子區段的**概觀**索引標籤。概觀包含子區段 ID、父系 ID、名稱、開始和結束時間、持續時間、狀態和錯誤或故障。

![\[子區段的概觀資訊，包括 ID、父系 ID、名稱、時間、錯誤和故障。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/scorekeep-PUTrules-customsubsegment-overview.png)


自訂子區段的**中繼資料**索引標籤包含該子區段所用資源的JSON格式資訊。

# 使用篩選條件表達式
<a name="xray-console-filters"></a>

使用*篩選條件表達式*來檢視特定請求、服務、兩個服務之間的連線 （邊緣） 或滿足條件之請求的追蹤映射或追蹤。X-Ray 提供篩選條件表達式語言，可根據請求標頭中的資料、回應狀態和原始區段上的索引欄位來篩選請求、服務和邊緣。

當您選擇要在 X-Ray 主控台中檢視的追蹤期間時，可能會得到比主控台可顯示更多的結果。主控台會在右上角顯示已掃描的追蹤數目，但實際上可用的追蹤可能更多。您可以使用篩選條件表達式，將結果縮小為僅您要尋找的追蹤。

**Topics**
+ [篩選條件表達式詳細資訊](#xray-console-filters-details)
+ [搭配使用篩選條件表達式與群組](#groups)
+ [篩選條件表達式語法](#console-filters-syntax)
+ [布林值關鍵字](#console-filters-boolean)
+ [數字關鍵字](#console-filters-number)
+ [字串關鍵字](#console-filters-string)
+ [複雜關鍵字](#console-filters-complex)
+ [id 函數](#console-filters-functions)

## 篩選條件表達式詳細資訊
<a name="xray-console-filters-details"></a>

當您[在追蹤映射中選擇節點](xray-console-servicemap.md)時，主控台會根據節點的服務名稱，以及根據您的選擇存在的錯誤類型，建構篩選條件表達式。若要尋找顯示效能問題或與特定請求相關的追蹤，您可以調整主控台提供的表達式，或是自行建立。如果您使用 X-Ray SDK 新增註釋，您也可以根據註釋索引鍵的存在或索引鍵的值進行篩選。

**注意**  
如果您在追蹤映射中選擇相對時間範圍並選擇節點，主控台會將時間範圍轉換為絕對開始和結束時間。為了確保搜尋結果顯示節點的追蹤，並避免掃描未作用中節點的時間，時間範圍只包含節點傳送追蹤的時間。若要搜尋相對於目前的時間，您可以在追蹤頁面切換回相對時間範圍，並再次掃描。

如果可用結果超過主控台可以顯示的範圍，主控台會顯示相符的追蹤數和已掃描的追蹤數。顯示的百分比為所選時間範圍內已掃描的百分比。若要確保結果中可以顯示所有相符的追蹤，請進一步縮小篩選條件表達式，或選擇較短的時間範圍。

若要先取得最新的結果，主控台會從時間範圍結尾開始掃描，並倒退進行。如果有大量追蹤，但僅有少數結果，主控台會將時間範圍分成區塊並平行掃描。進度列會顯示已掃描的部分時間範圍。

![\[Progress bar showing 52% of time range scanned, with 49 matching traces found.\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-tracescan-parallel.png)


## 搭配使用篩選條件表達式與群組
<a name="groups"></a>

群組是由篩選條件表達式定義的追蹤集合。您可以使用 群組來產生額外的服務圖表，並提供 Amazon CloudWatch 指標。

群組會根據名稱或 Amazon Resource Name (ARN) 進行識別，且包含篩選條件表達式。此服務會比較傳入表達式的追蹤，並依序存放。

您可以在下拉式功能表，篩選條件表達式左側的搜尋列，建立或修改群組。

**注意**  
如果服務驗證群組資格時發生錯誤，該群組即不會處理傳入的追蹤，且會記錄錯誤指標。

如需 群組的詳細資訊，請參閱 [設定 群組](xray-console-groups.md)。

## 篩選條件表達式語法
<a name="console-filters-syntax"></a>

篩選條件表達式可以包含「關鍵字」**、一元或二元「運算子」**以及用於比較的「值」**。

```
keyword operator value
```

不同運算子適用於不同類型的關鍵字。例如，`responsetime` 是數字關鍵字，可相較於與數字相關的運算子。

**Example – 回應時間大於 5 秒的請求**  

```
responsetime > 5
```

您可以使用 `AND` 或 `OR` 運算子，將多個表達式結合成一個複合表達式。

**Example – 總持續時間為 5-8 秒的請求**  

```
duration >= 5 AND duration <= 8
```

簡單關鍵字和運算子只能發現追蹤層級的問題。如果下游發生錯誤，但已由您的應用程式處理而未傳回給使用者，搜尋 `error` 時就不會找到此錯誤。

若要尋找含有下游問題的追蹤，您可以使用[複雜的關鍵字](#console-filters-complex) `service()` 和 `edge()`。這些關鍵字可讓您將篩選條件表達式套用到所有下游節點、單一下游節點，或是兩個節點之間的邊緣。如需更高的精細程度，您可以依據 [id() 函數](#console-filters-functions)類型來篩選服務和邊緣。

## 布林值關鍵字
<a name="console-filters-boolean"></a>

布林值關鍵字值可為 true 或 false。使用這些關鍵字來尋找導致錯誤的追蹤。

**布林值關鍵字**
+ `ok` – 回應狀態碼為 2XX 成功。
+ `error` – 回應狀態碼為 4XX 用戶端錯誤。
+ `throttle` – 回應狀態碼為 429 太多請求。
+ `fault` – 回應狀態碼為 5XX 伺服器錯誤。
+ `partial` – 請求的區段不完整。
+ `inferred` – 請求已推斷客群。
+ `first` – Element 是列舉清單的第一個。
+ `last` – Element 是列舉清單的最後一個。
+ `remote` – 根本原因實體為遠端。
+ `root` – 服務是追蹤的進入點或根區段。

布林值運算子可尋找指定索引鍵為 `true` 或 `false` 的區段。

**布林值運算子**
+ none – 如果關鍵字為 true，則表達式為 true。
+ `!` – 如果關鍵字為 false，表示表達式為 true。
+ `=`，`!=` – 將關鍵字的值與字串`true`或 進行比較`false`。這些運算子的作用與其他運算子相同，但更加明確。

**Example – 回應狀態為 2XX OK**  

```
ok
```

**Example – 回應狀態不是 2XX OK**  

```
!ok
```

**Example – 回應狀態不是 2XX OK**  

```
ok = false
```

**Example – 最後一個列舉的錯誤追蹤具有錯誤名稱 "deserialize"**  

```
rootcause.fault.entity { last and name = "deserialize" }
```

**Example – 具有遠端區段的請求，涵蓋範圍大於 0.7 且服務名稱為 "traces"**  

```
rootcause.responsetime.entity { remote and coverage > 0.7 and name = "traces" }
```

**Example – 具有推斷客群的請求，其中服務類型為「AWS：DynamoDB」**  

```
rootcause.fault.service { inferred and name = traces and type = "AWS::DynamoDB" }
```

**Example – 具有名為 "data-plane" 作為根的客群的請求**  

```
service("data-plane") {root = true and fault = true}
```

## 數字關鍵字
<a name="console-filters-number"></a>

使用數字關鍵字以搜尋含特定回應時間、持續時間或回應狀態的請求。

**數字關鍵字**
+ `responsetime` – 伺服器傳送回應所花費的時間。
+ `duration` – 請求總持續時間，包括所有下游呼叫。
+ `http.status` – 回應狀態碼。
+ `index` – 列舉清單中 元素的位置。
+ `coverage` – 實體回應時間相對於根區段回應時間的十進位百分比。僅適用於回應時間根本原因實體。

**數字運算子**

數字關鍵字使用標準的對等和比較運算子。
+ `=`，`!=` – 關鍵字等於或不等於數值。
+ `<`、`<=``>`、 `>=`- 關鍵字小於或等於數值。

**Example – 回應狀態不是 200 OK**  

```
http.status != 200
```

**Example – 總持續時間為 5-8 秒的請求**  

```
duration >= 5 AND duration <= 8
```

**Example – 在不到 3 秒內成功完成的請求，包括所有下游呼叫**  

```
ok !partial duration <3
```

**Example – 索引大於 5 的列舉清單實體**  

```
rootcause.fault.service { index > 5 }
```

**Example – 涵蓋範圍大於 0.8 的最後一個實體的請求**  

```
rootcause.responsetime.entity { last and coverage > 0.8 }
```

## 字串關鍵字
<a name="console-filters-string"></a>

使用字串關鍵字以尋找請求標頭中含特定文字或特定使用者 ID 的追蹤。

**字串關鍵字**
+ `http.url` – 請求 URL。
+ `http.method` – 請求方法。
+ `http.useragent` – 請求使用者代理程式字串。
+ `http.clientip` – 申請者的 IP 地址。
+ `user` – 追蹤中任何區段的使用者欄位值。
+ `name` – 服務或例外狀況的名稱。
+ `type` – 服務類型。
+ `message` – 例外狀況訊息。
+ `availabilityzone` – 追蹤中任何區段的 availabilityzone 欄位值。
+ `instance.id` – 追蹤中任何區段上執行個體 ID 欄位的值。
+ `resource.arn` – 追蹤中任何區段上資源 ARN 欄位的值。

字串運算子可尋找等於或包含特定文字的值。您必須一律在引號中指定值。

**字串運算子**
+ `=`，`!=` – 關鍵字等於或不等於數值。
+ `CONTAINS` – 關鍵字包含特定字串。
+ `BEGINSWITH` ， `ENDSWITH` – 關鍵字以特定字串開頭或結尾。

**Example – http.url 篩選條件**  

```
http.url CONTAINS "/api/game/"
```

若要測試追蹤上是否存在欄位 (無論其值為何)，請檢查欄位是否包含空白字串。

**Example – 使用者篩選條件**  
尋找所有含使用者 ID 的追蹤。  

```
user CONTAINS ""
```

**Example – 選取具有故障根本原因的追蹤，其中包含名為 "Auth" 的服務**  

```
rootcause.fault.service { name = "Auth" }
```

**Example – 選取具有回應時間根本原因的追蹤，其上次服務具有 DynamoDB 類型**  

```
rootcause.responsetime.service { last and type = "AWS::DynamoDB" }
```

**Example – 選取具有故障根本原因的追蹤，其上次例外狀況具有「account\$1id 存取遭拒：1234567890」訊息**  

```
rootcause.fault.exception { last and message = "Access Denied for account_id: 1234567890" 
```

## 複雜關鍵字
<a name="console-filters-complex"></a>

使用複雜關鍵字以根據服務名稱、邊緣名稱或註釋值來尋找請求。若是服務和邊緣，您可以指定額外篩選條件表達式以套用到服務或邊緣。若是註釋，您可以使用布林值、數字或字串運算子，篩選含特定索引鍵的註釋值。

**複雜關鍵字**
+ `annotation[key]` – 具有欄位*索引鍵*的註釋值。註釋值可以是布林值、數字或字串，所以您可以使用任何這些類型的比較運算子。您可以將此關鍵字與 `service`或 `edge`關鍵字結合使用。包含點 （句點） 的註釋索引鍵必須以方括號 (**【 】**) 包裝。
+ `edge(source, destination) {filter}` – 服務*來源*和*目的地*之間的連線。選用的大括號可包含篩選表達式，以套用到此連線的服務。
+ `group.name / group.arn` – 群組篩選條件表達式的值，由群組名稱或群組 ARN 參考。
+ `json` – JSON 根本原因物件。如需以程式設計方式建立 JSON 實體的步驟，請參閱[從 AWS X-Ray 取得資料](xray-api-gettingdata.md)。
+ `service(name) {filter}` – 具有*名稱*的服務。選用的大括號可包含篩選表達式，以套用到服務所建立的區段。

使用 服務關鍵字來尋找針對追蹤映射上特定節點之請求的追蹤。

複雜關鍵字運算子會尋找已設定或未設定指定金鑰的區段。

**複雜關鍵字運算子**
+ none – 如果已設定關鍵字，則表達式為 true。如果關鍵字為布林值類型，則會評估為布林值。
+ `!` – 若未設定關鍵字，表示表達式為 true。如果關鍵字為布林值類型，則會評估為布林值。
+ `=`，`!=` – 比較關鍵字的值。
+ `edge(source, destination) {filter}` – 服務*來源*和*目的地*之間的連線。選用的大括號可包含篩選表達式，以套用到此連線的服務。
+ `annotation[key]` – 具有欄位*索引鍵*的註釋值。註釋值可以是布林值、數字或字串，所以您可以使用任何這些類型的比較運算子。您可以將此關鍵字與 `service`或 `edge`關鍵字結合使用。
+ `json` – JSON 根本原因物件。如需以程式設計方式建立 JSON 實體的步驟，請參閱[從 AWS X-Ray 取得資料](xray-api-gettingdata.md)。

使用 服務關鍵字來尋找針對追蹤映射上特定節點之請求的追蹤。

**Example – 服務篩選條件**  
包含對 `api.example.com` 的呼叫且發生故障 (500 系列錯誤) 的請求。  

```
service("api.example.com") { fault }
```

您可以排除服務名稱，以將篩選條件表達式套用到服務地圖中的所有節點。

**Example – 服務篩選條件**  
造成追蹤映射上任何位置故障的請求。  

```
service() { fault }
```

邊緣關鍵字可將篩選條件表達式套用到兩個節點之間的連線。

**Example – 邊緣篩選條件**  
`api.example.com` 服務對 `backend.example.com` 發出呼叫但因錯誤而失敗的請求。  

```
edge("api.example.com", "backend.example.com") { error }
```

您也可以搭配使用 `!` 運算子與服務和邊緣關鍵字，以排除其他篩選條件表達式結果的服務或邊緣。

**Example – 服務和請求篩選條件**  
URL 開頭為 `http://api.example.com/` 並包含 `/v2/` 但未到達名稱為 `api.example.com` 之服務的請求。  

```
http.url BEGINSWITH "http://api.example.com/" AND http.url CONTAINS "/v2/" AND !service("api.example.com")
```

**Example – 服務和回應時間篩選條件**  
尋找`http url`設定 且回應時間大於 2 秒的追蹤。  

```
http.url AND responseTime > 2
```

對於註釋，您可以呼叫`annotation[key]`設定 的所有追蹤，或使用對應於 值類型的比較運算子。

**Example – 註釋與字串值**  
含名稱為 `gameid`、字串值為 `"817DL6VO"` 之註釋的請求。  

```
annotation[gameid] = "817DL6VO"
```

**Example – 已設定註釋**  
具有名為 `age` 集合的註釋的請求。  

```
annotation[age]
```

**Example – 未設定註釋**  
沒有已命名註釋`age`集的請求。  

```
!annotation[age]
```

**Example – 註釋與數值**  
含註釋存留期且數值大於 29 的請求。  

```
annotation[age] > 29
```

**Example – 註釋結合服務或邊緣**  
  

```
service { annotation[request.id] = "917DL6VO" }
```

```
edge { source.annotation[request.id] = "916DL6VO" }
```

```
edge { destination.annotation[request.id] = "918DL6VO" }
```

**Example – 具有使用者的 群組**  
追蹤符合`high_response_time`群組篩選條件 （例如 `responseTime > 3`) 且使用者名為 Alice 的請求。  

```
group.name = "high_response_time" AND user = "alice"
```

**Example – 具有根本原因實體的 JSON**  
有相符根本原因實體的請求。  

```
rootcause.json = #[{ "Services": [ { "Name": "GetWeatherData", "EntityPath": [{ "Name": "GetWeatherData" }, { "Name": "get_temperature" } ] }, { "Name": "GetTemperature", "EntityPath": [ { "Name": "GetTemperature" } ] } ] }]
```

## id 函數
<a name="console-filters-functions"></a>

當您將服務名稱提供給 `service` 或 `edge` 關鍵字時，您可取得具有該名稱之所有節點的結果。如需更精確的篩選，除了名稱之外，您還可以使用 `id` 函數來指定服務類型，以區分名稱相同的節點。

檢視監控帳戶中多個帳戶的追蹤時，請使用 `account.id`函數指定服務的特定帳戶。

```
id(name: "service-name", type:"service::type", account.id:"account-ID")
```

您可以使用 `id` 函數來代替服務和邊緣篩選條件中的服務名稱。

```
service(id(name: "service-name", type:"service::type")) { filter }
```

```
edge(id(name: "service-one", type:"service::type"), id(name: "service-two", type:"service::type")) { filter }
```

例如， AWS Lambda 函數會在追蹤映射中產生兩個節點；一個用於函數叫用，另一個用於 Lambda 服務。這兩個節點的名稱相同，但類型不同。標準的服務篩選條件可尋找這兩種追蹤。

**Example – 服務篩選條件**  
包含任何名為 `random-name` 服務上的錯誤的請求。  

```
service("random-name") { error }
```

使用 `id` 函數來縮小搜尋範圍至函數本身的錯誤，而不含服務的錯誤。

**Example – 具有 ID 函數的服務篩選條件**  
包含名為 `random-name`、類型為 `AWS::Lambda::Function` 服務上的錯誤的請求。  

```
service(id(name: "random-name", type: "AWS::Lambda::Function")) { error }
```

若要依據類型來搜尋節點，您也可以完全排除名稱。

**Example – 具有 ID 函數和服務類型的服務篩選條件**  
包含類型為 `AWS::Lambda::Function` 服務上的錯誤的請求。  

```
service(id(type: "AWS::Lambda::Function")) { error }
```

若要搜尋特定節點 AWS 帳戶，請指定帳戶 ID。

**Example – 具有 ID 函數和帳戶 ID 的服務篩選條件**  
在特定帳戶 ID 內包含服務的請求`AWS::Lambda::Function`。  

```
service(id(account.id: "account-id"))
```

# 跨帳戶追蹤
<a name="xray-console-crossaccount"></a>

AWS X-Ray 支援*跨帳戶可觀測性*，可讓您監控和故障診斷 中跨多個帳戶的應用程式 AWS 區域。您可以順暢地搜尋、視覺化和分析任何連結帳戶中的指標、日誌和追蹤，就像您在單一帳戶中操作一樣。這提供跨多個帳戶周遊的請求的完整檢視。您可以在 [CloudWatch 主控台](https://console.aws.amazon.com/cloudwatch/)的 X-Ray 追蹤地圖和追蹤頁面中檢視跨帳戶追蹤。

共用的可觀測性資料可包含下列任一類型的遙測：
+ Amazon CloudWatch 中的指標
+ Amazon CloudWatch Logs 中的日誌群組
+ 中的追蹤 AWS X-Ray
+  Amazon CloudWatch Application Insights 中的應用程式

## 設定跨帳戶可觀測性
<a name="xray-console-crossaccount-configure"></a>

若要開啟跨帳戶可觀測性，請設定一或多個 AWS *監控*帳戶，並將其連結至多個*來源*帳戶。監控帳戶是中央帳戶 AWS 帳戶 ，可檢視來源帳戶產生的可觀測性資料並與之互動。來源帳戶是針對其中包含的資源 AWS 帳戶 產生可觀測性資料的個人。

來源帳戶與監控帳戶共用其可觀測性資料。追蹤會從每個來源帳戶複製到最多五個監控帳戶。從來源帳戶到第一個監控帳戶的追蹤複本是免費的。傳送至其他監控帳戶的追蹤複本會根據標準定價，向每個來源帳戶收費。如需詳細資訊，請參閱 [AWS X-Ray 定價](https://aws.amazon.com/xray/pricing/)和 [Amazon CloudWatch 定價](https://aws.amazon.com/cloudwatch/pricing/)。

若要在監控帳戶和來源帳戶之間建立連結，請使用 CloudWatch 主控台或 AWS CLI 和 API 中的新可觀測性存取管理員命令。如需詳細資訊，請參閱 [CloudWatch 跨帳戶觀察功能](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html)。

**注意**  
X-Ray 追蹤的計費方式是收到追蹤 AWS 帳戶 的 。如果[抽樣](xray-concepts.md#xray-concepts-sampling)請求跨越多個 服務 AWS 帳戶，每個帳戶都會記錄個別的追蹤，且所有追蹤都會共用相同的追蹤 ID。若要進一步了解跨帳戶可觀測性定價，請參閱[AWS X-Ray 定價](https://aws.amazon.com/xray/pricing/)和 [Amazon CloudWatch 定價](https://aws.amazon.com/cloudwatch/pricing/)。

## 檢視跨帳戶追蹤
<a name="xray-console-crossaccount-view"></a>

跨帳戶追蹤會顯示在監控帳戶中。每個來源帳戶只會顯示該特定帳戶的本機追蹤。下列各節假設您已登入監控帳戶，並已開啟 Amazon CloudWatch 主控台。在追蹤地圖和追蹤頁面上，監控帳戶徽章會顯示在右上角。

![\[監控帳戶徽章\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/crossaccount-monitoring-account.png)


### 追蹤映射
<a name="xray-console-crossaccount-view-servicemap"></a>

在 CloudWatch 主控台中，從左側導覽窗格選擇 **X-Ray 追蹤**下的追蹤**映射**。根據預設，追蹤映射會顯示所有來源帳戶的節點，這些來源帳戶會將追蹤傳送至監控帳戶，以及監控帳戶本身的節點。在追蹤映射上，選擇左上角**的篩選條件**，使用**帳戶**下拉式清單篩選追蹤映射。套用帳戶篩選條件後，來自不符合目前篩選條件之帳戶的 服務節點會顯示為灰色。

![\[篩選的追蹤映射\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/crossaccount-servicemap-account-filter.png)


 當您選擇服務節點時，節點詳細資訊窗格會包含服務的帳戶 ID 和標籤。

![\[節點詳細資訊窗格\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/crossaccount-servicemap-node-detail.png)


在追蹤映射的右上角，選擇**清單檢視**以查看服務節點清單。服務節點清單包含來自監控帳戶和所有已設定來源帳戶的 服務。從節點篩選條件中選擇節點，依**帳戶標籤**或**帳戶 ID** **篩選節點**清單。

![\[篩選的服務清單\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/crossaccount-servicelist-account-filter.png)


### 追蹤
<a name="xray-console-crossaccount-view-traces"></a>

從監控帳戶開啟 CloudWatch 主控台，然後在左側導覽窗格中的 X-Ray 追蹤下選擇**追蹤**，以檢視跨多個帳戶的追蹤詳細資訊。 ****您也可以在 X-Ray **追蹤地圖**中選擇節點，然後從節點詳細資訊窗格中選擇**檢視追蹤**，以開啟此頁面。

**追蹤**頁面支援依帳戶 ID 查詢。若要開始使用，[請輸入包含一或多個帳戶 ID 的查詢](xray-console-filters.md)。 IDs 下列範例查詢已透過帳戶 ID X * *或 *Y* 傳遞的追蹤：

```
service(id(account.id:"X")) OR service(id(account.id:"Y"))
```

![\[依帳戶查詢追蹤\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/crossaccount-traces-query-by-account.png)


依**帳戶**精簡查詢。從清單中選擇一或多個帳戶，然後選擇**新增至查詢**。

![\[依帳戶精簡追蹤查詢\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/crossaccount-traces-refine-by-account.png)


### 追蹤詳細資訊
<a name="xray-console-crossaccount-trace-details"></a>

從追蹤頁面底部的**追蹤**清單中選擇追蹤，以檢視**追蹤**的詳細資訊。**追蹤詳細資訊**隨即顯示，包括追蹤詳細資訊映射來自所有帳戶的服務節點，而這些帳戶已傳遞追蹤。選擇特定的服務節點以查看其對應的帳戶。

**客群時間軸**區段會顯示時間軸中每個客群的帳戶詳細資訊。

![\[區段時間軸\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/crossaccount-traces-segment-timeline.png)


# 追蹤事件驅動型應用程式
<a name="xray-tracelinking"></a>

AWS X-Ray 支援使用 Amazon SQS 和 追蹤事件驅動型應用程式 AWS Lambda。使用 CloudWatch 主控台查看與 Amazon SQS 佇列且由一或多個 Lambda 函數處理的每個請求的連線檢視。來自上游訊息生產者的追蹤會自動連結至來自下游 Lambda 消費者節點的追蹤，建立end-to-end檢視。

**注意**  
每個追蹤區段最多可連結至 20 個追蹤，而追蹤最多可包含 100 個連結。在某些情況下，連結其他追蹤可能會導致超過[追蹤文件大小上限](https://docs.aws.amazon.com/general/latest/gr/xray.html#limits_xray)，進而導致追蹤可能不完整。例如，當啟用追蹤的 Lambda 函數在單一調用中將許多 SQS 訊息傳送至佇列時，可能會發生這種情況。如果您遇到此問題，可以使用 X-Ray SDKs進行緩解。如需詳細資訊，請參閱適用於 [Java](https://github.com/aws/aws-xray-sdk-java#oversampling-mitigation)、[Node.js](https://github.com/aws/aws-xray-sdk-node/tree/master/packages/core#oversampling-mitigation)、[Python](https://github.com/aws/aws-xray-sdk-python#oversampling-mitigation)、[Go](https://github.com/aws/aws-xray-sdk-go#oversampling-mitigation) 或 [.NET](https://github.com/aws/aws-xray-sdk-dotnet#oversampling-mitigation) 的 X-Ray 開發套件。

## 在追蹤映射中檢視連結的追蹤
<a name="xray-tracelinking-servicemap"></a>

使用 [CloudWatch 主控台](https://console.aws.amazon.com/cloudwatch/)中的**追蹤映射**頁面，檢視追蹤映射，其中包含來自訊息生產者且連結至 Lambda 消費者追蹤的追蹤。這些連結會以虛線邊緣顯示，以連接 Amazon SQS 節點和下游 Lambda 取用者節點。

![\[Amazon SQS 和 Lambda 節點之間的邊緣。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-batch-servicemap-linkededge.png)


選取虛線邊緣以顯示*收到的事件存*留期長條圖，其會映射消費者收到事件存留期的分散。每次收到事件時都會計算存留期。

![\[包含已接收事件存留期長條圖的邊緣。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-servicemap-linkededgedetails-cw.png)


## 檢視連結的追蹤詳細資訊
<a name="xray-tracelinking-tracedetails"></a>

**檢視從訊息生產者、Amazon SQS 佇列或 Lambda 取用者傳送的追蹤詳細資訊：**

1. 使用**追蹤地圖**來選取訊息生產者、Amazon SQS 或 Lambda 取用者節點。

1. 從節點詳細資訊窗格中選擇**檢視追蹤**，以顯示追蹤清單。您也可以直接導覽至 CloudWatch 主控台中的**追蹤**頁面。

1. 從清單中選擇特定追蹤，以開啟追蹤詳細資訊頁面。當選取的追蹤是一組連結追蹤的一部分時，追蹤詳細資訊頁面會顯示訊息。  
![\[連結的追蹤詳細資訊\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-batch-tracedetails-header.png)

追蹤詳細資訊映射會顯示目前的追蹤，以及上游和下游連結追蹤，每個追蹤都包含在指示每個追蹤邊界的方塊中。如果目前選取的追蹤連結至多個上游或下游追蹤，則會堆疊上游或下游連結追蹤內的節點，並顯示**選取追蹤**按鈕。

![\[多個連結的上游追蹤\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-batch-tracedetails-tracemap.png)


在追蹤詳細資訊映射下方，會顯示追蹤區段的時間軸，包括上游和下游連結追蹤。如果有多個上游或下游連結追蹤，則無法顯示其區段詳細資訊。若要檢視一組連結追蹤中單一追蹤的區段詳細資訊，[請選取單一追蹤](#xray-tracelinking-filterbatch)，如下所述。

![\[顯示連結追蹤的區段時間軸\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-batch-tracedetails-timeline.png)


## 在一組連結追蹤中選取單一追蹤
<a name="xray-tracelinking-filterbatch"></a>

**將一組連結的追蹤篩選為單一追蹤，以查看時間軸中的區段詳細資訊。**

1. 選擇**追蹤詳細資訊地圖上連結追蹤下方的選取**追蹤。追蹤清單隨即顯示。  
![\[連結的追蹤清單\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-batch-tracedetails-tracelist.png)

1. 選取追蹤旁的選項按鈕，以在追蹤詳細資訊映射中檢視。

1. 選擇**取消追蹤選擇**，以檢視整組連結的追蹤。  
![\[單一連結追蹤\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-batch-tracedetails-filteredbatch.png)

# 使用延遲長條圖
<a name="xray-console-histograms"></a>

當您在 AWS X-Ray [追蹤映射](xray-console-servicemap.md)上選取節點或邊緣時，X-Ray 主控台會顯示延遲分佈長條圖。

## Latency (延遲)
<a name="xray-console-historgram-latency"></a>

延遲是指請求開始和完成之間的時間。長條圖中顯示了延遲分佈。它會在 x 軸上顯示持續時間，在 y 軸上顯示符合每個持續時間的請求百分比。

此長條圖顯示的服務可在 300 毫秒內完成大多數請求。少許百分比的請求花費最多 2 秒，以及幾個異常值花費更多時間。

![\[延遲長條圖，其 x 軸上顯示持續時間，y 軸上顯示每個持續時間的請求百分比\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/scorekeep-servicemap-histogram.png)


## 解譯服務詳細資訊
<a name="xray-console-historgram-details"></a>

服務長條圖和邊緣長條圖可從服務或申請者的角度，提供延遲的視覺化呈現。
+ 按一下圓圈以選擇*服務節點*。X-Ray 會顯示服務所服務請求的長條圖。延遲是由服務記錄的延遲，且不包含任何服務和申請者之間的網路延遲。
+ 按一下兩個服務之間的*邊緣*線或箭頭尖端，以選擇邊緣。X-Ray 會顯示由下游服務所提供服務之請求者的請求長條圖。這些延遲是由申請者記錄的延遲，且包含兩個服務之間的網路連線延遲。

若要解譯 **Service details (服務詳細資訊)** 長條圖，您可以尋找與長條圖中大多數值差異最大的值。您可將這些「異常值」**視為長條圖中的峰值，並檢視特定區域的追蹤資料以調查發生的情況。

若要查看依延遲篩選的追蹤，請在長條圖上選取範圍。按一下您想要選擇的起點位置，並從左到右拖曳，將要包含在追蹤篩選條件中的延遲範圍反白顯示。

![\[選取範圍以檢視追蹤，方法是按一下起點位置，並從左到右拖曳以建立追蹤篩選條件的範圍\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/scorekeep-servicemap-servicedetails-selection.png)


選取範圍之後，您可以選擇 **Zoom (縮放)**，以僅檢視部分長條圖並縮小您的選擇範圍。

![\[選擇 Zoom (縮放) 以檢視長條圖中的選取範圍\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/scorekeep-servicemap-servicedetails-zoom.png)


一旦您設定好所需的焦點區域時，請選擇 **View traces (檢視追蹤)**。

# 使用 X-Ray 洞察
<a name="xray-console-insights"></a>

AWS X-Ray 會持續分析您帳戶中的追蹤資料，以識別應用程式中出現的問題。當錯誤率超過預期範圍時，它會建立洞*見*，記錄問題並追蹤其影響，直到問題解決為止。透過洞察，您可以：
+ 識別應用程式問題發生的位置、問題的根本原因，以及相關的影響。洞見提供的影響分析可讓您衍生問題的嚴重性和優先順序。
+ 當問題隨時間變更時接收通知。Insights 通知可以使用 Amazon EventBridge 與您的監控和提醒解決方案整合。此整合可讓您根據問題的嚴重性來傳送自動電子郵件或提醒。

X-Ray 主控台會在追蹤映射中識別具有持續事件的節點。若要查看洞見的摘要，請選擇受影響的節點。您也可以從左側的導覽窗格中選擇 **Insights** 來檢視和篩選洞見。

![\[使用洞見摘要追蹤地圖節點。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-insights-servicemap.png)


當 X-Ray 在服務映射的一或多個節點中偵測到*異常*時，會建立洞見。此服務使用統計建模來預測應用程式中服務的預期錯誤率。在上述範例中，異常是來自 的故障增加 AWS Elastic Beanstalk。Elastic Beanstalk 伺服器發生多個 API 呼叫逾時，導致下游節點異常。

## 在 X-Ray 主控台中啟用洞見
<a name="xray-console-enable-insights"></a>

必須針對您要使用洞見功能的每個群組啟用洞見。您可以從**群組**頁面啟用洞見。

1. 開啟 [X-Ray 主控台](https://console.aws.amazon.com/xray/home#)。

1. 選取現有的群組，或選擇**建立群組來建立新的群組**，然後選取**啟用洞見**。如需在 X-Ray 主控台中設定群組的詳細資訊，請參閱 [設定 群組](xray-console-groups.md)。

1. 在左側導覽窗格中，選擇 **Insights**，然後選擇要檢視的洞見。  
![\[X-Ray 主控台中的洞見清單。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-insights.png)

**注意**  
X-Ray 使用 GetInsightSummaries、GetInsight、GetInsightEvents 和 GetInsightImpactGraph API 操作從洞見擷取資料。  
如需詳細資訊，請參閱[AWS X-Ray 如何使用 IAM](security_iam_service-with-iam.md)。

## 啟用洞見通知
<a name="xray-console-insight-notifications"></a>

透過洞見通知，會為每個洞見事件建立通知，例如當洞見建立、大幅變更或關閉時。客戶可以透過 Amazon EventBridge 事件接收這些通知，並使用條件式規則採取動作，例如 SNS 通知、Lambda 調用、將訊息發佈至 SQS 佇列，或任何 EventBridge 支援的目標。Insights 通知會盡最大努力發出，但不保證。如需目標的詳細資訊，請參閱 [Amazon EventBridge 目標](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-targets.html)。

您可以從群組****頁面為任何已啟用洞察的群組啟用洞察通知。

**啟用 X-Ray 群組的通知**

1. 開啟 [X-Ray 主控台](https://console.aws.amazon.com/xray/home#)。

1. 選擇建立群組來選取**現有群組或建立新的群組**，確保已選取**啟用洞見**，然後選取**啟用通知**。如需在 X-Ray 主控台中設定群組的詳細資訊，請參閱 [設定 群組](xray-console-groups.md)。

**設定 Amazon EventBridge 條件式規則**

1. 開啟 [Amazon EventBridge 主控台](https://console.aws.amazon.com/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。如需詳細資訊，請參閱[中的資料保護 AWS X-Ray](xray-console-encryption.md)。

## Insight 概觀
<a name="xray-console-insights-overview"></a><a name="anomalous-service"></a>

洞見的概觀頁面會嘗試回答三個關鍵問題：
+ 基礎問題是什麼？
+ 根本原因是什麼？
+ 有什麼影響？

**異常服務**區段會顯示每個服務的時間表，說明事件期間的錯誤率變更。時間軸顯示覆蓋在實心頻帶上故障的追蹤數目，根據記錄的流量來指出預期的故障數目。洞見的持續時間由*事件視窗*視覺化。當 X-Ray 觀察到指標變得異常並在洞見作用中時持續存在時，事件時段就會開始。

下列範例顯示導致事件的故障增加：

![\[X-Ray 洞見的概觀頁面。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-insights-overview.png)
<a name="root-cause"></a>

**根本原因**區段顯示著重於根本原因服務和受影響路徑的追蹤映射。您可以透過選取根本原因映射右上角的眼睛圖示來隱藏未受影響的節點。根本原因服務是 X-Ray 識別異常的最遠下游節點。它可以代表您檢測的服務，或您的服務透過檢測的用戶端呼叫的外部服務。例如，如果您使用經檢測的 AWS SDK 用戶端呼叫 Amazon DynamoDB，DynamoDB 的故障增加會導致 DynamoDB 作為根本原因的洞見。

若要進一步調查根本原因，請選取**根本原因圖表上的檢視根本原因詳細資訊**。您可以使用**分析**頁面來調查根本原因和相關訊息。如需詳細資訊，請參閱[與 Analytics 主控台互動](xray-console-analytics.md)。

![\[X-Ray 洞見的概觀頁面。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-insights-root-cause.png)
<a name="impact"></a>

在地圖中繼續上游的故障可能會影響多個節點並導致多個異常。如果故障一直傳遞給發出請求的使用者，則結果是*用戶端故障*。這是追蹤映射根節點中的錯誤。**影響**圖表提供整個群組的用戶端體驗時間軸。此體驗是根據下列狀態的百分比計算：**Fault**、 **Error**、 **Throttle** 和 **Okay**。

![\[X-Ray 事件的影響圖表。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-insights-impact.png)


此範例顯示在事件發生期間根節點發生故障的追蹤增加。下游服務中的事件不一定對應於用戶端錯誤增加。

選擇**分析洞見**會在視窗中開啟 X-Ray Analytics 主控台，您可以在其中深入了解導致洞見的追蹤集。如需詳細資訊，請參閱[與 Analytics 主控台互動](xray-console-analytics.md)。

**了解影響**

AWS X-Ray 會測量持續問題所造成的影響，做為產生洞見和通知的一部分。影響的測量方式有兩種：
+ 對 X-Ray [群組](xray-console-groups.md)的影響
+ 對根本原因服務的影響

此影響取決於在特定期間內失敗或導致錯誤的請求百分比。此影響分析可讓您根據特定案例衍生問題的嚴重性和優先順序。除了洞察通知之外，此影響也可作為主控台體驗的一部分。

**重複資料刪除**

AWS X-Ray 洞見可消除多個微服務的問題。它使用異常偵測來判斷問題根本原因的服務、判斷其他相關服務是否因相同的根本原因而出現異常行為，並將結果記錄為單一洞見。

## 檢閱洞見的進度
<a name="xray-console-insights-inspect"></a>

X-Ray 會定期重新評估洞見，直到問題解決為止，並將每個值得注意的中繼變更記錄為[通知](#xray-console-insight-notifications)，可做為 Amazon EventBridge 事件傳送。這可讓您建置程序和工作流程，以判斷問題如何隨著時間而變更，並採取適當的動作，例如傳送電子郵件或使用 EventBridge 與提醒系統整合。

您可以在**檢查**頁面**的影響時間軸**中檢閱事件。根據預設，時間軸會顯示最受影響的服務，直到您選擇不同的服務為止。

![\[檢查具有影響時間軸的頁面。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-insights-inspect.png)
<a name="impact-analysis"></a>

若要查看事件的追蹤映射和圖形，請從影響時間軸中選擇它。追蹤映射會顯示應用程式中受事件影響的服務。在**影響分析**下，圖形會顯示所選節點和群組中用戶端的故障時間表。

![\[X-Ray 洞見的影響分析圖表。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/console-insights-inspect-analysis.png)


若要深入了解事件中涉及的追蹤，請在**檢查**頁面上選擇**分析事件**。您可以使用**分析**頁面來精簡追蹤清單，並識別受影響的使用者。如需詳細資訊，請參閱[與 Analytics 主控台互動](xray-console-analytics.md)。

# 與 Analytics 主控台互動
<a name="xray-console-analytics"></a>

 AWS X-Ray Analytics 主控台是一種互動式工具，可用來解譯追蹤資料，以快速了解應用程式及其基礎服務的效能。主控台可讓您透過互動的回應時間和時間序列圖表，探索、分析和視覺化追蹤。

在 Analytics 主控台中選取選項時，主控台會建構篩選條件以反映所有追蹤的所選子集。您可以按一下與目前追蹤集相關聯之指標和欄位的圖表和面板，使用愈益精細的篩選條件來精簡作用中的資料集。

**Topics**
+ [主控台功能](#xray-console-analytics-features)
+ [回應時間分佈](#xray-console-analytics-response)
+ [時間序列活動](#xray-console-analytics-time)
+ [工作流程範例](#xray-console-analytics-workflows)
+ [觀察服務圖中的故障](#xray-console-analytics-observe-faults)
+ [識別回應時間高峰](#xray-console-analytics-response-peaks)
+ [檢視有狀態碼標記的所有追蹤](#xray-console-analytics-response-peaks)
+ [檢視在子群組中並與使用者相關聯的所有項目](#xray-console-analytics-subgroups)
+ [比較兩個具有不同篩選標準的追蹤集](#xray-console-analytics-compare)
+ [識別感興趣的追蹤以及檢視其詳細資訊](#xray-console-analytics-identify)

## 主控台功能
<a name="xray-console-analytics-features"></a>

X-Ray Analytics 主控台使用下列主要功能來分組、篩選、比較和量化追蹤資料。

### 功能
<a name="xray-console-analytics-features-table"></a>


| 功能 | 描述 | 
| --- | --- | 
|  **Groups (群組)**  |  最初選取的群組是 `Default`。若要變更已擷取的群組，請從主要篩選條件表達式搜尋列右側的選單中，選取不同的群組。若要進一步了解群組，請參閱[搭配使用篩選條件表達式與群組](https://docs.aws.amazon.com/xray/latest/devguide/xray-console-filters.html#groups)。  | 
|  **Retrieved traces (已擷取的追蹤)**  |  根據預設，Analytics 主控台會根據所選群組中的所有追蹤產生圖表。已擷取的追蹤代表您工作集中的所有追蹤。您可在此圖標中找到追蹤計數。您套用到主要搜尋列的篩選條件表達式會精簡並更新擷取的追蹤。  | 
|  **Show in charts/Hide from charts (在圖表中顯示/隱藏)**  |  切換比較作用中的群組和已擷取的追蹤。若要針對任何作用中的篩選條件比較群組的相關資料，請選擇 **Show in charts (在圖表中顯示)**。若要從圖表中移除此檢視，請選擇 **Hide from charts (在圖表中隱藏)**。  | 
|  **Filtered trace set A (篩選過的追蹤集 A)**  |  透過與圖形和資料表的互動，套用篩選條件來建立**已篩選追蹤集 A** 的條件。 套用篩選條件時，會從此圖磚中計算適用的追蹤數量，以及擷取的追蹤總數百分比。在 **Filtered trace set A (篩選過的追蹤集 A)** 圖標中，篩選條件填入為標籤，也可自圖標中移除。  | 
|  **Refine (精簡)**  |  此功能會根據套用到追蹤集 A 的篩選條件，更新擷取的追蹤集。縮小擷取的追蹤集範圍會更新根據追蹤集 A 篩選條件擷取之所有追蹤的初步集合。已擷取追蹤的初步集合是群組中所有追蹤的抽樣子集。  | 
|  **Filtered trace set B (篩選過的追蹤集 B)**  |  建立時，**篩選的追蹤集 B** 是**篩選的追蹤集 A** 的副本。 若要比較兩個追蹤集，請進行新的篩選條件選擇，以套用至追蹤集 B，而追蹤集 A 保持固定。套用篩選條件後，就會在此圖標內計算擷取自總量的適用追蹤數目與追蹤百分比。在 **Filtered trace set B (篩選過的追蹤集 B)** 圖標中，篩選條件填入為標籤，也可自圖標中移除。  | 
|  **Response time root cause entity paths (回應時間根本原因實體路徑)**  |  記錄實體路徑的資料表。X-Ray 會判斷追蹤中哪個路徑最有可能導致回應時間。格式指出實體遇到的階層，以回應時間根本原因結束。使用這些資料列篩選重複出現的回應時間故障。如需自訂根本原因篩選條件以及透過 API 取得資料的詳細資訊，請參閱[擷取和縮小範圍根本原因分析](https://docs.aws.amazon.com/xray/latest/devguide/xray-api-gettingdata.html#xray-api-analytics)。  | 
|  **Delta (**�**)**  |  當追蹤集 A 和追蹤集 B 都為作用中時，新增到指標表的欄。Delta 欄計算追蹤集 A 和追蹤集 B 之間的追蹤百分比差異。  | 

## 回應時間分佈
<a name="xray-console-analytics-response"></a>

X-Ray Analytics 主控台會產生兩個主要圖形，協助您視覺化追蹤：**回應時間分佈**和**時間序列活動**。本節和下節各提供一個範例，說明閱讀圖表的基本知識。

以下是與回應時間折線圖相關聯的顏色 (時間序列圖使用相同的顏色組合)：
+ **群組中的所有追蹤** – 灰色
+ **擷取的追蹤** – 橘色
+ **篩選的追蹤集 A** – 綠色
+ **篩選的追蹤集 B** – 藍色

**Example – 回應時間分佈**  
回應時間分發是顯示特定回應時間追蹤數的圖表。按一下並拖曳，在回應時間分發內選取範圍。這會選取特定回應時間內所有追蹤的 `responseTime` 工作追蹤集，並建立其篩選條件。  

![\[顯示追蹤回應時間分佈的圖表。\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/analytics-responseTime.png)


## 時間序列活動
<a name="xray-console-analytics-time"></a>

時間序列活動圖會顯示特定期間的追蹤數目。顏色指標會鏡像回應時間分發的折線圖顏色。活動序列內的顏色區塊愈深愈滿，表示指定時間內的追蹤愈多。

**Example – 時間序列活動**  
按一下並拖曳，在時間序列活動圖中選取範圍。這會選取特定時間範圍內所有追蹤的 `timerange` 工作追蹤集，並建立篩選條件。  

![\[選取範圍並建立篩選條件\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/analytics-timeSeries.png)


## 工作流程範例
<a name="xray-console-analytics-workflows"></a>

下列範例顯示 X-Ray Analytics 主控台的常見使用案例。每個範例都會示範主控台體驗的主要功能。因為是群組，所以範例會遵循基本的故障診斷工作流程。這些步驟會逐步解說如何先找出運作狀況不良節點，然後如何與 Analytics 主控台互動，以自動產生比較查詢。一旦透過查詢縮小範圍，您最終會看到特定追蹤的詳細資訊，以判斷是什麼損害伺服器的運作狀況。

## 觀察服務圖中的故障
<a name="xray-console-analytics-observe-faults"></a>

追蹤映射會根據成功呼叫與錯誤和錯誤的比例，將每個節點的運作狀態著色。當您在節點上看到紅色百分比時，表示有故障。使用 X-Ray Analytics 主控台進行調查。

如需如何讀取追蹤映射的詳細資訊，請參閱[檢視追蹤映射](https://docs.aws.amazon.com/xray/latest/devguide/xray-console.html#xray-console-servicemap)。

![\[觀察故障\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/scorekeep-gettingstarted-servicemap-before-2021.png)


## 識別回應時間高峰
<a name="xray-console-analytics-response-peaks"></a>

使用回應時間分發，您可以觀察回應時間的高峰。只要選取回應時間的高峰，就會更新圖表下方的資料表，公開所有相關聯的指標，例如狀態碼。

當您按一下並拖曳時，X-Ray 會選取並建立篩選條件。它會以灰色陰影顯示在圖形線條的頂部。您現在可以沿著分佈左右拖曳陰影，更新選取範圍和篩選條件。

![\[選取範圍並建立篩選條件\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/analytics-showFilterf.png)


## 檢視有狀態碼標記的所有追蹤
<a name="xray-console-analytics-response-peaks"></a>

您可以使用圖表下方的指標表，深入了解所選高峰的追蹤。按一下 **HTTP STATUS CODE** 表的資料列，即會自動建立工作資料集的篩選條件。例如，您可以檢視狀態碼為 500 的所有追蹤。這會在追蹤集圖標中建立名為 `http.status` 的篩選條件標籤。

## 檢視在子群組中並與使用者相關聯的所有項目
<a name="xray-console-analytics-subgroups"></a>

深入了解以使用者、URL、回應時間根本原因或其他預先定義的屬性為基礎的錯誤集。例如，若要另行篩選狀態碼為 500 的追蹤集，請選取 **USERS (使用者)** 表中的資料列。這會讓追蹤集圖標出現兩個篩選條件標籤：之前已指定的`http.status` 以及 `user`。

## 比較兩個具有不同篩選標準的追蹤集
<a name="xray-console-analytics-compare"></a>

比較所有不同的使用者及其 POST 請求，尋找其他的差異和關聯性。套用您的第一組篩選條件。它們在回應時間分發中定義為藍色線條。然後選取 **Compare (比較)**。一開始，這會建立追蹤集 A 的篩選條件副本。

若要繼續，請定義一組新的篩選條件，套用到追蹤集 B。這第二組條件會以綠色線條表示。以下範例示範以藍綠顏色組合的不同線條。

![\[折線圖比較\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/analytics-compareLines.png)


## 識別感興趣的追蹤以及檢視其詳細資訊
<a name="xray-console-analytics-identify"></a>

當您使用主控台篩選條件縮小範圍時，指標表下的追蹤清單就會變得更有意義。追蹤清單表將 **URL**、**USER (使用者)** 和 **STATUS CODE (狀態碼)** 的相關資訊結合到一份檢視中。如需更多詳情，請選取此表的資料列開啟追蹤的 detail (詳細資訊) 頁面，檢視其時間軸和原始資料。

# 設定 群組
<a name="xray-console-groups"></a>

群組是一系列追蹤，為篩選條件表達式所定義。您可以使用 群組來產生額外的服務圖表，並提供 Amazon CloudWatch 指標。您可以使用 AWS X-Ray 主控台或 X-Ray API 來建立和管理 服務的群組。本主題說明如何使用 X-Ray 主控台建立和管理群組。如需如何使用 X-Ray API 管理群組的資訊，請參閱 [Groups (群組)](xray-api-configuration.md#xray-api-configuration-groups)。

您可以建立追蹤映射、追蹤或分析的追蹤群組。當您建立群組時，群組會在所有三個頁面上的群組下拉式功能表上變成篩選條件：**追蹤地圖**、**追蹤****和分析**。

![\[群組功能表\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-menu.png)


群組會根據名稱或 Amazon Resource Name (ARN) 進行識別，且包含篩選條件表達式。此服務會比較傳入表達式的追蹤，並依序存放。如需如何建置篩選條件表達式的詳細資訊，請參閱 [使用篩選條件表達式](xray-console-filters.md)。

更新群組的篩選條件表達式不會變更已記錄的資料。更新僅適用於後續追蹤。這會導致圖表合併新舊表達式。若要避免這種情況，請刪除目前的群組並建立新的群組。

**注意**  
群組的計費方式是根據符合篩選條件表達式的擷取追蹤。如需詳細資訊，請參閱 [AWS X-Ray 定價](https://aws.amazon.com/xray/pricing/)。

**Topics**
+ [建立群組](#xray-console-group-create-console)
+ [套用群組](#xray-console-group-apply)
+ [編輯群組](#xray-console-group-edit)
+ [複製群組](#xray-console-group-clone)
+ [刪除群組](#xray-console-group-delete)
+ [在 Amazon CloudWatch 中檢視群組指標](#xray-console-group-cloudwatch)



## 建立群組
<a name="xray-console-group-create-console"></a>

**注意**  
您現在可以從 Amazon CloudWatch 主控台設定 X-Ray 群組。您也可以繼續使用 X-Ray 主控台。

------
#### [ CloudWatch console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽窗格中選擇**設定**。

1. 在 **X-Ray 追蹤**區段的**群組**下選擇**檢視設定**。

1. 選擇**群組清單上方的建立**群組。

1. 在**建立群組**頁面上，輸入群組的名稱。群組名稱最多可有 32 個字元，且包含英數字元和破折號。群組名稱區分大小寫。

1. 輸入篩選條件表達式。如需如何建置篩選條件表達式的詳細資訊，請參閱 [使用篩選條件表達式](xray-console-filters.md)。在下列範例中， 群組會篩選來自服務 的故障追蹤`api.example.com`。 和 請求至回應時間大於或等於五秒的服務。

   ```
   fault = true AND http.url CONTAINS "example/game" AND responsetime >= 5
   ```

1. 在 **Insights** 中，啟用或停用群組的洞見存取。如需洞見的詳細資訊，請參閱[使用 X-Ray 洞察](xray-console-insights.md)。  
![\[群組頁面上的洞見核取方塊\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-insights-cw.png)

1. 在**標籤**中，選擇**新增標籤**以輸入標籤索引鍵，也可以選擇輸入標籤值。繼續視需要新增其他標籤。標籤索引鍵必須是唯一的。若要刪除標籤，請選擇每個標籤下方的**移除**。如需標籤的詳細資訊，請參閱[標記 X-Ray 取樣規則和群組](xray-tagging.md)。  
![\[群組頁面上的標籤欄位\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-tags-cw.png)

1. 選擇**建立群組**。

------
#### [ X-Ray console ]

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home). 的 X-Ray 主控台。

1. 從左側導覽窗格中的**群組**頁面，或從下列其中一個頁面上的群組選單開啟**建立群組**頁面：**追蹤地圖**、**追蹤****和分析**。

1. 在**建立群組**頁面上，輸入群組的名稱。群組名稱最多可有 32 個字元，且包含英數字元和破折號。群組名稱區分大小寫。

1. 輸入篩選條件表達式。如需如何建置篩選條件表達式的詳細資訊，請參閱 [使用篩選條件表達式](xray-console-filters.md)。在下列範例中， 群組會篩選來自服務 的故障追蹤`api.example.com`。 和 請求至回應時間大於或等於五秒的服務。

   ```
   fault = true AND http.url CONTAINS "example/game" AND responsetime >= 5
   ```

1. 在 **Insights** 中，啟用或停用群組的洞見存取。如需洞見的詳細資訊，請參閱[使用 X-Ray 洞察](xray-console-insights.md)。  
![\[群組頁面上的洞見核取方塊\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-insights.png)

1. 在**標籤**中，輸入標籤索引鍵，並選擇性地輸入標籤值。當您新增標籤時，會顯示新行，供您輸入另一個標籤。標籤索引鍵必須是唯一的。若要刪除標籤，請選擇標籤列結尾的 **X**。如需標籤的詳細資訊，請參閱[標記 X-Ray 取樣規則和群組](xray-tagging.md)。  
![\[群組頁面上的標籤欄位\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-tags.png)

1. 選擇**建立群組**。

------

## 套用群組
<a name="xray-console-group-apply"></a>

------
#### [ CloudWatch console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 從 **X-Ray 追蹤**下的導覽窗格開啟下列其中一個頁面：
   + **追蹤映射**
   + **追蹤**

1. 在**依 X-Ray 篩選群組篩選條件中輸入群組**名稱。頁面上顯示的資料會變更為符合 群組中設定的篩選條件表達式。

------
#### [ X-Ray console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home) 開啟 X-Ray 主控台。

1. 從導覽窗格開啟下列其中一個頁面：
   + **追蹤映射**
   + **追蹤**
   + **分析**

1. 在群組功能表中，選擇您在 中建立的群組[建立群組](#xray-console-group-create-console)。頁面上顯示的資料會變更為符合 群組中設定的篩選條件表達式。

------

## 編輯群組
<a name="xray-console-group-edit"></a>

------
#### [ CloudWatch console ]

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽窗格中選擇**設定**。

1. 在 **X-Ray 追蹤**區段的**群組**下選擇**檢視設定**。

1. 從群組區段中選擇**群組**，然後選擇**編輯**。

1. 雖然您無法重新命名群組，但您可以更新篩選條件表達式。如需如何建置篩選條件表達式的詳細資訊，請參閱 [使用篩選條件表達式](xray-console-filters.md)。在下列範例中， 群組會篩選來自 服務的故障追蹤`api.example.com`，其中請求 URL 地址包含 `example/game`，而請求的回應時間大於或等於五秒。

   ```
   fault = true AND http.url CONTAINS "example/game" AND responsetime >= 5
   ```

1. 在 **Insights** 中，啟用或停用群組的洞見存取。如需洞見的詳細資訊，請參閱[使用 X-Ray 洞察](xray-console-insights.md)。  
![\[群組頁面上的洞見核取方塊\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-insights-cw.png)

1. 在**標籤**中，選擇**新增標籤**以輸入標籤索引鍵，也可以選擇輸入標籤值。繼續視需要新增其他標籤。標籤索引鍵必須是唯一的。若要刪除標籤，請選擇每個標籤下方的**移除**。如需標籤的詳細資訊，請參閱[標記 X-Ray 取樣規則和群組](xray-tagging.md)。  
![\[群組頁面上的標籤欄位\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-tags-cw.png)

1. 完成更新群組後，請選擇**更新群組**。

------
#### [ X-Ray console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home) 開啟 X-Ray 主控台。

1. 執行下列其中一項操作以開啟**編輯群組**頁面。

   1. 在**群組**頁面上，選擇要編輯的群組名稱。

   1. 在下列其中一個頁面上的群組選單上，指向群組，然後選擇**編輯**。
      + **追蹤映射**
      + **追蹤**
      + **分析**

1. 雖然您無法重新命名群組，但您可以更新篩選條件表達式。如需如何建置篩選條件表達式的詳細資訊，請參閱 [使用篩選條件表達式](xray-console-filters.md)。在下列範例中， 群組會篩選來自 服務的故障追蹤`api.example.com`，其中請求 URL 地址包含 `example/game`，而請求的回應時間大於或等於五秒。

   ```
   fault = true AND http.url CONTAINS "example/game" AND responsetime >= 5
   ```

1. 在 **Insights** 中，啟用或停用群組的洞察和洞察通知。如需洞見的詳細資訊，請參閱[使用 X-Ray 洞察](xray-console-insights.md)。  
![\[群組頁面上的洞見核取方塊\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-insights.png)

1. 在**標籤**中，編輯標籤索引鍵和值。標籤索引鍵必須是唯一的。標籤值是選用的；如果需要，您可以刪除值。若要刪除標籤，請選擇標籤列結尾的 **X**。如需標籤的詳細資訊，請參閱[標記 X-Ray 取樣規則和群組](xray-tagging.md)。  
![\[群組頁面上的標籤欄位\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/group-tags.png)

1. 完成更新群組後，請選擇**更新群組**。

------

## 複製群組
<a name="xray-console-group-clone"></a>

複製群組會建立新的群組，其中包含現有群組的篩選條件表達式和標籤。當您複製群組時，新群組的名稱與其複製的群組相同，並`-clone`附加到名稱。

------
#### [ CloudWatch console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽窗格中選擇**設定**。

1. 在 **X-Ray 追蹤**區段的**群組**下選擇**檢視設定**。

1. 從群組區段中選擇**群組**，然後選擇**複製**。

1. 在**建立群組**頁面上，群組的名稱為 *group-name*`-clone`。或者，輸入群組的新名稱。群組名稱最多可有 32 個字元，且包含英數字元和破折號。群組名稱區分大小寫。

1. 您可以保留現有群組的篩選條件表達式，或選擇性地輸入新的篩選條件表達式。如需如何建置篩選條件表達式的詳細資訊，請參閱 [使用篩選條件表達式](xray-console-filters.md)。在下列範例中， 群組會篩選來自服務 的故障追蹤`api.example.com`。 和 請求至回應時間大於或等於五秒的服務。

   ```
   service("api.example.com") { fault = true OR responsetime >= 5 }
   ```

1. 在**標籤**中，視需要編輯標籤索引鍵和值。標籤索引鍵必須是唯一的。標籤值是選用的；如果需要，您可以刪除值。若要刪除標籤，請選擇標籤列結尾的 **X**。如需標籤的詳細資訊，請參閱[標記 X-Ray 取樣規則和群組](xray-tagging.md)。

1. 選擇**建立群組**。

------
#### [ X-Ray console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home) 開啟 X-Ray 主控台。

1. 從左側導覽窗格開啟**群組**頁面，然後選擇您要複製的群組名稱。

1. 從**動作**功能表中選擇**複製群組**。

1. 在**建立群組**頁面上，群組的名稱為 *group-name*`-clone`。或者，輸入群組的新名稱。群組名稱最多可有 32 個字元，且包含英數字元和破折號。群組名稱區分大小寫。

1. 您可以保留現有群組的篩選條件表達式，或選擇性地輸入新的篩選條件表達式。如需如何建置篩選條件表達式的詳細資訊，請參閱 [使用篩選條件表達式](xray-console-filters.md)。在下列範例中， 群組會篩選來自服務 的故障追蹤`api.example.com`。 和 請求至回應時間大於或等於五秒的服務。

   ```
   service("api.example.com") { fault = true OR responsetime >= 5 }
   ```

1. 在**標籤**中，視需要編輯標籤索引鍵和值。標籤索引鍵必須是唯一的。標籤值是選用的；如果需要，您可以刪除值。若要刪除標籤，請選擇標籤列結尾的 **X**。如需標籤的詳細資訊，請參閱[標記 X-Ray 取樣規則和群組](xray-tagging.md)。

1. 選擇**建立群組**。

------

## 刪除群組
<a name="xray-console-group-delete"></a>

請依照本節中的步驟刪除群組。您無法刪除**預設**群組。

------
#### [ CloudWatch console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽窗格中選擇**設定**。

1. 在 **X-Ray 追蹤**區段的**群組**下選擇**檢視設定**。

1. 從群組區段中選擇**群組**，然後選擇**刪除**。

1. 系統提示您確認時，請選擇**刪除**。

------
#### [ X-Ray console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home) 開啟 X-Ray 主控台。

1. 從左側導覽窗格開啟**群組**頁面，然後選擇您要刪除的群組名稱。

1. 在**動作**功能表中，選擇**刪除群組**。

1. 當您收到確認提示時，請選擇**刪除**。

------

## 在 Amazon CloudWatch 中檢視群組指標
<a name="xray-console-group-cloudwatch"></a>

建立群組之後，系統會針對群組的篩選條件表達式檢查傳入的追蹤，因為這些追蹤存放在 X-Ray 服務中。符合每個條件的追蹤數量指標每分鐘都會發佈至 Amazon CloudWatch。在**編輯群組**頁面上選擇**檢視指標**會開啟 CloudWatch 主控台至**指標**頁面。如需如何使用 CloudWatch 指標的詳細資訊，請參閱《[Amazon CloudWatch 使用者指南》中的使用 Amazon CloudWatch 指標](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html)。 *Amazon CloudWatch * 

------
#### [ CloudWatch console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在左側導覽窗格中選擇**設定**。

1. 在 **X-Ray 追蹤**區段的**群組**下選擇**檢視設定**。

1. 從群組區段中選擇**群組**，然後選擇**編輯**。

1. 在**編輯群組**頁面上，選擇**檢視指標**。

   CloudWatch 主控台**指標**頁面會在新標籤中開啟。

------
#### [ X-Ray console ]

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/xray/home](https://console.aws.amazon.com/xray/home) 開啟 X-Ray 主控台。

1. 從左側導覽窗格開啟**群組**頁面，然後選擇您要檢視指標的群組名稱。

1. 在**編輯群組**頁面上，選擇**檢視指標**。

   CloudWatch 主控台**指標**頁面會在新標籤中開啟。

------

# 設定 取樣規則
<a name="xray-console-sampling"></a>

您可以使用 AWS X-Ray 主控台來設定 服務的取樣規則。 AWS Distro for OpenTelemetry、X-Ray SDK 和 AWS 服務 支援具有取樣組態的[主動追蹤](xray-services.md)，使用取樣規則來決定要記錄哪些請求。

**Topics**
+ [設定 取樣規則](#xray-console-config)
+ [自訂抽樣規則](#xray-console-custom)
+ [抽樣規則選項](#xray-console-sampling-options)
+ [抽樣規則範例](#xray-console-sampling-examples)
+ [將您的服務設定為使用抽樣規則](#xray-console-sampling-service)
+ [檢視抽樣結果](#xray-console-sampling-results)
+ [後續步驟](#xray-console-sampling-nextsteps)

## 設定 取樣規則
<a name="xray-console-config"></a>

您可以針對下列使用案例設定取樣：
+ **API Gateway Entrypoint** – API Gateway 支援取樣和主動追蹤。若要在 API 階段上啟用主動追蹤，請參閱 [的 Amazon API Gateway 主動追蹤支援 AWS X-Ray](xray-services-apigateway.md)。
+ **AWS AppSync** – AWS AppSync 支援取樣和主動追蹤。若要啟用請求的 AWS AppSync 主動追蹤，請參閱[使用 AWS X-Ray 追蹤](https://docs.aws.amazon.com/appsync/latest/devguide/x-ray-tracing.html)。
+ **AWS Step Functions** – AWS Step Functions 支援取樣和主動追蹤。若要在狀態機器上 AWS Step Functions 啟用主動追蹤，請參閱 [Step Functions 中的 X-Ray 追蹤](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-xray-tracing.html)。
+ **運算平台上的 Instrument AWS Distro for OpenTelemetry ** – 使用 Amazon EC2、Amazon ECS 或 等運算平台時 AWS Elastic Beanstalk，當應用程式已使用最新的 AWS Distro for OpenTelemetry 或 X-Ray SDK 進行檢測時，支援取樣。

## 自訂抽樣規則
<a name="xray-console-custom"></a>

透過自訂抽樣規則，您可以控制記錄的資料量。您也可以修改抽樣行為，而無需修改或重新部署程式碼。取樣規則會告知 AWS Distro for OpenTelemetry (ADOT) 或 X-Ray SDK 要針對一組條件記錄多少請求。根據預設，軟體開發套件每秒會記錄第一個請求，以及任何額外請求的 5%。每秒一個請求是*儲槽*。這可確保只要服務持續提供請求，每秒都會記錄至少一個追蹤。5% 是超過儲槽大小的額外請求抽樣「速率」**。

您可以設定 X-Ray 開發套件，從程式碼隨附的 JSON 文件讀取抽樣規則。但是，當您執行服務的多個執行個體時，每個執行個體都會獨立執行抽樣。這會導致抽樣請求的整體百分比增加，因為所有執行個體的儲槽都會加在一起。此外，若要更新本機取樣規則，您必須重新部署程式碼。

透過在 X-Ray 主控台中定義抽樣規則，並將 [SDK 設定為](#xray-console-sampling-service)從 X-Ray 服務讀取規則，您可以避免這兩個問題。服務會管理每個規則的儲槽，並根據執行中的執行個體數，將配額指派給每個服務執行個體來平均分散儲槽。儲槽限制是根據您設定的規則所計算。由於規則是在 服務中設定，因此您可以管理規則，而無需進行其他部署。

**注意**  
設定取樣規則時，請務必了解 X-Ray 取樣是「父系型」。這表示抽樣決策只會做出一次，通常是由處理請求的第一個X-Ray-enabled的服務 (「根」服務） 做出。  
如果下游服務收到已擁有上游父項取樣決策的請求，無論其自己的任何相符取樣規則為何，都會遵守該決策。  
規則套用時：您的自訂抽樣規則只會在尚未做出抽樣決策的服務上生效。這通常適用於：  
應用程式的進入點 （例如 API Gateway、Load Balancer 或第一個經檢測的微服務）。
啟動全新追蹤的非同步程序或工作者。
常見缺陷：如果您為「服務 B」建立嚴格的取樣規則，但「服務 A」一律會呼叫「服務 B」，則您的服務 B 規則可能永遠不會套用，因為它只是遵循服務 A 傳遞的決定。若要變更此工作流程的追蹤取樣，您必須將取樣規則設定為根服務 （服務 A)。

**注意**  
X-Ray 使用最盡力的方法套用抽樣規則，在某些情況下，有效的抽樣率可能不會完全符合設定的抽樣規則。不過，隨著時間的推移，取樣的請求數量應該接近設定的百分比。

您現在可以從 Amazon CloudWatch 主控台設定 X-Ray 抽樣規則。

**在 CloudWatch 主控台中設定抽樣規則**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/) 開啟 CloudWatch 主控台。

1. 在**設定**下方的左側導覽窗格中選擇**設定**。

1. 選擇 **X-Ray 追蹤**區段中**取樣規則**下的**檢視設定**。

1. 若要建立規則，請選擇 **Create sampling rule (建立抽樣規則)**。

   若要編輯規則，請選擇規則，然後選擇**編輯**以進行編輯。

   若要刪除規則，請選擇規則，然後選擇**刪除**以刪除規則。

## 抽樣規則選項
<a name="xray-console-sampling-options"></a>

下列選項可用於每個規則。字串值可以使用萬用字元來以符合單一字元 (`?`) 或零或多個字元 (`*`)。

**抽樣規則選項**
+ **規則名稱** （字串） – 規則的唯一名稱。
+ **優先順序** （介於 1 和 9999 之間的整數） – 取樣規則的優先順序。服務會以遞增的優先順序來評估規則，並使用符合的第一個規則來決定取樣決策。
+ **儲存器 **（非負整數） – 套用固定速率之前，每秒要檢測的比對請求固定數量。儲槽不會直接用於服務，而是集體套用至使用該規則的所有服務。
+ **速率** （介於 0 到 100 之間的整數） – 在儲槽用盡之後，與檢測相符的請求百分比。在主控台中設定取樣規則時，請選擇介於 0 到 100 之間的百分比。使用 JSON 文件在用戶端 SDK 中設定取樣規則時，請提供介於 0 和 1 之間的百分比值。
+ **服務名稱** （字串） – 檢測服務的名稱，如追蹤映射中所示。
  + X-Ray SDK – 您在記錄器上設定的服務名稱。
  + Amazon API Gateway – `api-name/stage`。
+ **服務類型** （字串） – 顯示在追蹤映射中的服務類型。對於 X-Ray 開發套件，請套用適當的外掛程式來設定服務類型：
  + `AWS::ElasticBeanstalk::Environment` – AWS Elastic Beanstalk 環境 （外掛程式）。
  + `AWS::EC2::Instance` – Amazon EC2 執行個體 （外掛程式）。
  + `AWS::ECS::Container` – Amazon ECS 容器 （外掛程式）。
  + `AWS::EKS::Container` – Amazon EKS 容器 （外掛程式）。
  + `AWS::APIGateway::Stage` – Amazon API Gateway 階段。
  + `AWS::AppSync::GraphQLAPI ` – AWS AppSync API 請求。
  + `AWS::StepFunctions::StateMachine` – AWS Step Functions 狀態機器。
+ **主機** （字串） – 來自 HTTP 主機標頭的主機名稱。
+ **HTTP 方法** （字串） – HTTP 請求的方法。
+ **URL 路徑** （字串） – 請求的 URL 路徑。
  + X-Ray SDK – HTTP 請求 URL 的路徑部分。
+ **資源 ARN** （字串） – 執行服務之 AWS 資源的 ARN。
  + X-Ray SDK – 不支援。軟體開發套件僅能使用 **Resource ARN (資源 ARN)** 設為 `*` 的規則。
  + Amazon API Gateway – 階段 ARN。
+ （選用） **屬性 **（索引鍵和值） – 取樣決策時已知的區段屬性。
  + X-Ray SDK – 不支援。軟體開發套件會忽略指定屬性的規則。
  + Amazon API Gateway – 來自原始 HTTP 請求的標頭。
+ （選用） **SamplingRateBoost** （物件） – 控制異常驅動的取樣提升行為。
  + MaxRate （介於 0 和 100 之間的整數） – 在異常期間，X-Ray 可能會增加到
  + CooldownWindowMinutes （大於 0 的整數） – 只能觸發一次提升的時段 （分鐘），防止持續提升

## 抽樣規則範例
<a name="xray-console-sampling-examples"></a>

**Example – 預設規則，沒有儲槽且速率低**  
您可以修改預設規則的儲槽和速率。預設規則會套用至不符合任何其他規則的請求。  
+ **儲存庫**： **0**
+ **速率**：**5**(**0.05**如果使用 JSON 文件設定）

**Example – 偵錯規則以追蹤有問題路由的所有請求**  
會暫時套用高優先順序的規則來進行除錯。  
+ **規則名稱**： **DEBUG – history updates**
+ **優先順序**： **1**
+ **儲存庫**： **1**
+ **速率**：**100**(**1**如果使用 JSON 文件設定）
+ **服務名稱**： **Scorekeep**
+ **Service type (服務類型)：****\$1**
+ **主機**： **\$1**
+ **HTTP 方法**： **PUT**
+ **URL 路徑**： **/history/\$1**
+ **資源 ARN**： **\$1**

**Example – POSTs的較高最低速率**  
+ **規則名稱**： **POST minimum**
+ **優先順序**： **100**
+ **儲存庫**： **10**
+ **速率**：**10**(**.1**如果使用 JSON 文件設定）
+ **服務名稱**： **\$1**
+ **Service type (服務類型)：****\$1**
+ **主機**： **\$1**
+ **HTTP 方法**： **POST**
+ **URL 路徑**： **\$1**
+ **資源 ARN**： **\$1**

**Example 啟用異常驅動提升**  
設定在異常期間觸發取樣提升高達 50% 的規則，冷卻時間為 10 分鐘。  
+ **規則名稱**： **MyAdaptiveRule**
+ **優先順序**： **100**
+ **儲存庫**： **1**
+ **FixedRate**： **0.0510**
+ **服務名稱**： **\$1**
+ **Service type (服務類型)：****\$1**
+ **主機**： **\$1**
+ **HTTP 方法**： **POST**
+ **URL 路徑**： **\$1**
+ **maxRate**： **0.5**
+ **cooldownWindowMinutes**： **10**

## 將您的服務設定為使用抽樣規則
<a name="xray-console-sampling-service"></a>

 AWS Distro for OpenTelemetry (ADOT) 和 X-Ray SDK 需要額外的組態，才能使用您在主控台中設定的取樣規則。如需設定抽樣策略的詳細資訊，請參閱適用您語言的組態主題：
+ Java：搭配 ADOT Java [使用 X-Ray 遠端取樣](https://aws-otel.github.io/docs/getting-started/java-sdk/auto-instr#using-x-ray-remote-sampling) 
+ Go：使用 ADOT Go [設定取樣](https://aws-otel.github.io/docs/getting-started/go-sdk/manual-instr#configuring-sampling) 
+ Node.js：搭配 ADOT JavaScript [使用 X-Ray 遠端取樣](https://aws-otel.github.io/docs/getting-started/js-sdk/trace-metric-auto-instr#using-x-ray-remote-sampling) 
+ Python：搭配 ADOT Python [使用 X-Ray 遠端取樣](https://aws-otel.github.io/docs/getting-started/python-sdk/auto-instr#using-x-ray-remote-sampling) 
+ Ruby： [抽樣規則](xray-sdk-ruby-configuration.md#xray-sdk-ruby-configuration-sampling)
+ .NET：搭配 ADOT .NET [使用 X-Ray 遠端取樣](https://aws-otel.github.io/docs/getting-started/dotnet-sdk/auto-instr#using-x-ray-remote-sampling) 

如需 API Gateway，請參閱 [的 Amazon API Gateway 主動追蹤支援 AWS X-Ray](xray-services-apigateway.md)。

## 檢視抽樣結果
<a name="xray-console-sampling-results"></a>

X-Ray 主控台**取樣**頁面顯示服務如何使用每個取樣規則的詳細資訊。

**Trend (趨勢)** 資料行會顯示過去幾分鐘內使用規則的方式。每個資料行都會顯示 10 秒間的統計資料。

**抽樣統計資料**
+ **符合的規則總數**：符合此規則的請求數量。此數量不包含本來會和此規則相符，但是卻先符合高優先順序規則的請求。
+ **取樣總數**：記錄的請求數。
+ **以固定速率取樣**：套用規則固定速率取樣的請求數。
+ **使用儲槽限制取樣**：使用 X-Ray 指派的配額取樣的請求數量。
+ **從儲槽借用**：透過從儲槽借用取樣的請求數量。服務第一次將請求符合規則時，X-Ray 尚未為其指派配額。不過，如果儲槽至少為 1，服務會借用每秒一個追蹤，直到 X-Ray 指派配額為止。

如需抽樣統計資料和服務使用抽樣規則方式的詳細資訊，請參閱[透過 X-Ray API 使用取樣規則](xray-api-sampling.md)。

## 後續步驟
<a name="xray-console-sampling-nextsteps"></a>

您可以使用 X-Ray API 來管理抽樣規則。透過 API，您可以透過編寫程式設計的方式在排程上建立及更新規則，或是回應警示或通知。如需說明及其他規則範例，請參閱[使用 AWS X-Ray API 設定取樣、群組和加密設定](xray-api-configuration.md)。

 AWS Distro for OpenTelemetry、X-Ray SDK 和 AWS 服務 也使用 X-Ray API 來讀取抽樣規則、報告抽樣結果，以及取得抽樣目標。當請求符合 X-Ray 尚未為服務指派配額的規則時，服務必須追蹤其套用每個規則的頻率、根據優先順序評估規則，以及從儲槽借用。如需服務使用 API 進行抽樣的詳細資訊，請參閱[透過 X-Ray API 使用取樣規則](xray-api-sampling.md)。

當 AWS Distro for OpenTelemetry 或 X-Ray SDK 呼叫取樣 APIs時，他們會使用 CloudWatch 代理程式做為代理。如果您已使用 TCP 連接埠 2000，您可以設定代理程式在不同連接埠上執行代理。如需詳細資訊，請參閱 [CloudWatch 代理程式安裝指南](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)。

# 設定自適應抽樣
<a name="xray-adaptive-sampling"></a>

在異常峰值期間缺少關鍵追蹤可能會使根本原因分析變得困難。不過，維持高取樣率非常昂貴。X-Ray 自適應取樣提供對異常的完整可見性，並在正常操作期間控制成本。透過適應性取樣，您可以設定最大取樣率，而 X-Ray 會自動在該限制內調整。X-Ray 會計算擷取錯誤追蹤所需的最低提升。如果您的基準速率擷取足夠的資料，則不會發生提升。您只需在需要時支付額外的抽樣費用。

使用自適應取樣的優點：
+ 完整的事件可見性 – 在事件期間取得完整的追蹤，無需手動介入。X-Ray 會自動調整取樣率以擷取錯誤追蹤，然後返回正常速率。
+ 根本原因可見性 – 一律查看問題的來源。即使未觸發完整追蹤取樣，X-Ray 也會擷取重要的錯誤資料。
+ 最佳化成本 – 短暫取樣提升 （最多 1 分鐘） 和自動冷卻時間可防止過度取樣。您只需為診斷問題所需的資料付費。

**Topics**
+ [支援的 SDKs和平台](#adaptive-sampling-supported-sdks)
+ [選擇您的自適應抽樣方法](#adaptive-sampling-features)
+ [本機 SDK 組態](#local-sdk-configuration)

## 支援的 SDKs和平台
<a name="adaptive-sampling-supported-sdks"></a>

**支援的 SDK** – 自適應取樣需要最新版本的 ADOT 開發套件。

**支援的語言** – Java ([2.11.5](https://github.com/aws-observability/aws-otel-java-instrumentation/releases/tag/v2.11.5) 版或更新版本）

您的應用程式必須使用支援的 ADOT 開發套件進行檢測，並與 Amazon CloudWatch Agent 或 OpenTelemetry Collector 一起執行。

例如，Amazon EC2、Amazon ECS 和 Amazon EKS 是常見的平台，其中 AWS Application Signals 提供啟用 ADOT SDK 和 Amazon CloudWatch Agent 的指引。

## 選擇您的自適應抽樣方法
<a name="adaptive-sampling-features"></a>

自適應取樣支援兩種方法：取樣提升和異常範圍擷取。這些可以獨立套用，也可以合併在一起。

### 取樣提升
<a name="adaptive-sampling-boost"></a>

自適應取樣提升是以取樣規則為基礎，並適用於現有的 X-Ray 前端型取樣模型。以前端為基礎的取樣表示在根服務進行取樣決策，而取樣旗標會在下游傳遞給呼叫鏈中的所有服務。
+ 以**規則為基礎的提升** – 提升一律與特定的 X-Ray 取樣規則繫結。每個規則都可以定義自己的最大提升速率和冷卻行為。
+ 以**頭部為基礎的抽樣** – 在根服務中做出抽樣決策，並將抽樣旗標向下游傳遞給呼叫鏈中的所有服務。
+ **異常驅動** – X-Ray 依賴 SDK 報告異常統計資料。當 X-Ray 偵測到異常，例如錯誤或高延遲時，它會使用這些統計資料來計算適當的提升速率 （高達設定的最大值）。

**異常報告**

呼叫鏈中的每個應用程式服務都可以透過所需的 SDK 發出異常統計資料：
+ **根服務** – 必須在支援的 SDK 和平台上執行，才能啟用取樣提升。如果不支援根服務，則不會進行提升。
+ **下游服務** – 下游服務只會報告異常；無法做出抽樣決策。當下游服務執行支援的 SDK 時，偵測到的異常可能會觸發取樣提升。當下游服務不受支援 （例如，執行較舊的 SDK) 時，該服務的異常不會觸發提升。當這些服務遵循標準內容傳播 （例如 W3C 追蹤內容和裝訂） 時，仍然可以在下游傳播內容。這可確保進一步下游服務中支援的 SDKs 可以報告觸發提升的異常。

**提升時間和範圍**
+ **觸發延遲** – 在 X-Ray 偵測到異常之後，您可以預期取樣提升開始的時間低至 10 秒。
+ **提升期間** – X-Ray 觸發提升後，最長會持續 1 分鐘，然後再返回基本取樣率。
+ **提升冷卻** – 提升發生後，X-Ray 不會觸發相同規則的另一個提升，直到超過冷卻時段為止。

  例如，當您將 `cooldown`設定為 10 分鐘時，一旦提升結束，在接下來的 10 分鐘時段之前，就無法觸發新的提升。

  特殊情況：當您將 `cooldown` 設定為 1 分鐘時，由於提升本身最多可持續 1 分鐘，因此如果異常持續存在，則可以持續有效觸發提升。

**注意**  
為您的根服務使用支援的 SDKs和平台。取樣提升僅適用於支援的 SDKs和平台。雖然取樣提升有很高的機率會擷取異常追蹤，但可能不會擷取每個異常追蹤。

**提高可見性**

當取樣規則設定為調適式取樣提升時，X-Ray 會自動發出推展指標，讓您監控提升活動。
+ **指標名稱** – `SamplingRate`
+ **維度** – `RuleName`（設定為實際規則名稱）

`SamplingRateBoost` 啟用 的每個規則都會發佈其有效的取樣率，包括基準速率和任何暫時提升。這可讓您：
+ 觸發提升時的追蹤
+ 監控每個規則的有效取樣率
+ 將提升與應用程式異常 （例如錯誤峰值或延遲事件） 相關聯

您可以在 **Amazon CloudWatch Metrics 的 AWS/X-Ray 命名空間下檢視這些指標。指標值是介於 0 和 1 之間的浮點數，代表有效的取樣率**。

**使用 X-Ray 取樣規則設定取樣提升**

您可以新增`SamplingRateBoost`欄位，直接在現有的 X-Ray 取樣規則中啟用自適應取樣。如需詳細資訊，請參閱[自訂抽樣規則](https://docs.aws.amazon.com/xray/latest/devguide/xray-console-sampling.html#xray-console-custom)。這提供了一種集中式方法來啟用適應性抽樣，而無需修改應用程式程式碼或套用應用程式部署。當您啟用適應性取樣時，X-Ray 會在錯誤峰值或延遲極端值等異常期間自動增加取樣，同時將取樣率保持在設定的最大範圍內。 `SamplingRateBoost` 可以套用至取樣規則以外的任何自訂`Default`取樣規則。

`SamplingRateBoost` 欄位定義異常驅動取樣的上限和行為。

```
"SamplingRateBoost": {
  "MaxRate": 0.25,
  "CooldownWindowMinutes": 10
}
```

`MaxRate` 定義 X-Ray 在偵測到異常時將套用的最大取樣率。值範圍為 `0.0`到 `1.0`。例如， `"MaxRate": 0.25` 允許抽樣在異常時段期間增加高達 25% 的請求。X-Ray 會根據異常活動，決定基準與最大值之間的適當速率。

`CooldownWindowMinutes` 定義了只能觸發一次取樣率提升的時間範圍 （以分鐘為單位）。提升發生後，在下一個時段之前不允許進一步提升。值類型為*整數 （分鐘）*。

**具有適應性取樣的範例規則**

```
{
  "RuleName": "MyAdaptiveRule",
  "Priority": 1,
  "ReservoirSize": 1,
  "FixedRate": 0.05,
  "ServiceName": "*",
  "ServiceType": "*",
  "Host": "*",
  "HTTPMethod": "*",
  "URLPath": "*",
  "SamplingRateBoost": {
    "MaxRate": 0.25,
    "CooldownWindowMinutes": 10
  }
}
```

在此範例中，基準取樣為 5% (`FixedRate: 0.05`)。在異常期間，X-Ray 可以將取樣增加到 25% (`MaxRate: 0.25`)。每 10 分鐘僅提升一次。

**異常條件組態**

未提供異常條件組態時，ADOT SDK 會使用 **HTTP 5xx 錯誤代碼**作為預設異常條件來觸發取樣提升。

您也可以使用環境變數，在支援的 ADOT 開發套件中於本機微調異常情況。如需詳細資訊，請參閱[本機 SDK 組態](#local-sdk-configuration)。

### 異常範圍擷取
<a name="anomaly-spans-capture"></a>

異常範圍擷取可確保一律記錄代表異常的關鍵範圍，即使未對完整追蹤進行取樣。此功能透過專注於擷取異常本身來補充抽樣提升，而不是增加未來追蹤的抽樣。

當 ADOT SDK 偵測到異常時，它會立即發出跨度，無論抽樣決策為何。由於 SDK 只會發出與異常相關的範圍，因此這些追蹤是部分追蹤，而不是完整的end-to-end交易。

一旦 ADOT SDK 偵測到異常跨度，它會嘗試從相同的追蹤發出盡可能多的跨度。此功能下發出的所有範圍都會以 屬性 標記`aws.trace.flag.sampled = 0`。這可讓您在交易搜尋和分析中輕鬆區分部分追蹤 （異常擷取） 與完整追蹤 （正常抽樣）。

我們建議加入[交易搜尋](https://docs.aws.amazon.com/xray/latest/devguide/xray-transactionsearch.html)以檢視和查詢部分追蹤。下列範例顯示 [Application Signals](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html) 主控台中的服務頁面。ServiceC 設定為異常跨度擷取，它是套用取樣提升的呼叫鏈的一部分。此組態會產生完整和部分追蹤。您可以使用 `aws.trace.flag.sampled` 屬性來區分追蹤類型。

![\[異常範圍擷取\]](http://docs.aws.amazon.com/zh_tw/xray/latest/devguide/images/adaptive-sampling.png)


異常範圍擷取只能透過 啟用或自訂[本機 SDK 組態](#local-sdk-configuration)。

## 本機 SDK 組態
<a name="local-sdk-configuration"></a>

您可以透過環境變數提供 YAML 組態，在 ADOT 開發套件中設定自適應抽樣功能。本機組態提供對異常條件、閾值的精細控制。

這是*異常範圍擷取*的必要項目，以及自訂*取樣提升*條件的選用項目。以下是組態的範例：

```
version: 1.0
anomalyConditions:
  - errorCodeRegex: "^5\\d\\d$"
    usage: both
  - operations:
      - "/api"
    errorCodeRegex: "^429|5\\d\\d$"
    highLatencyMs: 300
    usage: sampling-boost
  - highLatencyMs: 1000
    usage: anomaly-span-capture

anomalyCaptureLimit:
  anomalyTracesPerSecond: 1
```

欄位定義如下：
+ `version` – 組態檔案的結構描述版本
+ `anomalyConditions` – 定義偵測到異常的條件及其使用方式
  + `errorCodeRegex` – 定義哪些 HTTP 狀態碼視為異常的規則表達式
  + `operations` – 套用條件的操作或端點清單
  + `highLatencyMs` – 超過範圍視為異常的延遲閾值 （以毫秒為單位）
  + `usage` – 定義條件適用的功能：
    + `both` – 適用於**取樣提升**和**異常跨度擷取 **（若未指定用量，則預設為預設值）
    + `sampling-boost` – 僅用於觸發取樣提升
    + `anomaly-span-capture` – 僅用於異常範圍擷取
+ `anomalyCaptureLimit` – 定義發出多少追蹤異常範圍的限制。

  `anomalyTracesPerSecond` – 每秒擷取的異常範圍追蹤數目上限，以防止過度跨度磁碟區 （如果不存在 anomalyCaptureLimit，則預設值為 1)。

**注意**  
`AnomalyConditions` **會覆寫**取樣提升的預設異常條件 (HTTP 5xx)。如果您想要在使用本機組態時保留預設條件，則必須明確地將其包含在 的任何項目中`AnomalyConditions`。
對於每個`anomalyConditions`項目：  
**省略** `operations` 欄位時，條件會套用至**所有操作** （服務層級）
當 `operations` 欄位存在但設定為**空白清單**時， 條件會套用至**無操作**，使該項目成為無操作
同時省略 `errorCodeRegex`和 `highLatencyMs` 時，條件沒有要評估的異常條件，使該項目成為無操作項目
邏輯關係：  
在 中的項目之間`anomalyConditions`，關係為 **OR**。
在單一項目中，多個欄位 （例如 `errorCodeRegex`和 `highLatencyMs`) 會與 **AND** 結合。  
例如：  

    ```
    errorCodeRegex: "^429|5\\d\\d$"
    highLatencyMs: 300
    ```
此條件表示**狀態碼符合 429 或 5xx 且延遲 ≥ 300 毫秒**。

### 將本機組態套用至 ADOT SDK
<a name="apply-local-configuration"></a>

您可以設定環境變數 ，將本機組態套用至 ADOT 開發套件`AWS_XRAY_ADAPTIVE_SAMPLING_CONFIG`。值必須是有效的 YAML 文件 （內嵌或巢狀）。

例如，Amazon EC2 和 Amazon ECS，請直接設定環境變數：

```
AWS_XRAY_ADAPTIVE_SAMPLING_CONFIG="{version: 1.0, anomalyConditions: [{errorCodeRegex: \"^500$\", usage: \"sampling-boost\"}, {errorCodeRegex: \"^501$\", usage: \"anomaly-trace-capture\"}], anomalyCaptureLimit: {anomalyTracesPerSecond: 10}}"
```

對於 Amazon EKS，請將 Pod 規格內的環境變數定義為巢狀 YAML：

```
apiVersion: v1
kind: Pod
metadata:
  name: adot-sample
spec:
  containers:
    - name: adot-app
      image: my-app:latest
      env:
        - name: AWS_XRAY_ADAPTIVE_SAMPLING_CONFIG
          value: |
            version: 1.0
            anomalyConditions:
              - errorCodeRegex: "^500$"
                usage: sampling-boost
              - errorCodeRegex: "^501$"
                usage: anomaly-trace-capture
            anomalyCaptureLimit:
              anomalyTracesPerSecond: 10
```

# 主控台深層連結
<a name="xray-console-deeplinks"></a>

您可以使用路由和查詢來深入連結至特定追蹤，或追蹤和追蹤映射的篩選檢視。

**主控台頁面**
+ 歡迎頁面 – [xray/home\$1/welcome](https://console.aws.amazon.com/xray/home#/welcome)
+ 入門 – [xray/home\$1/getting-started](https://console.aws.amazon.com/xray/home#/getting-started)
+ 追蹤映射 – [xray/home\$1/service-map](https://console.aws.amazon.com/xray/home#/service-map)
+ 追蹤 – [xray/home\$1/traces](https://console.aws.amazon.com/xray/home#/traces)

## 追蹤
<a name="xray-console-deeplinks-traces"></a>

您可以為個別追蹤的時間表檢視、原始檢視及映射檢視建立連結。

**追蹤時間軸** – `xray/home#/traces/trace-id`

**原始追蹤資料** – `xray/home#/traces/trace-id/raw`

**Example – 原始追蹤資料**  

```
https://console.aws.amazon.com/xray/home#/traces/1-57f5498f-d91047849216d0f2ea3b6442/raw
```

## 篩選條件表達式
<a name="xray-console-deeplinks-filters"></a>

連結到追蹤的篩選清單。

**篩選的追蹤檢視** – `xray/home#/traces?filter=filter-expression`

**Example – 篩選條件表達式**  

```
https://console.aws.amazon.com/xray/home#/traces?filter=service("api.amazon.com") { fault = true OR responsetime > 2.5 } AND annotation.foo = "bar"
```

**Example – 篩選條件表達式 (URL 編碼）**  

```
https://console.aws.amazon.com/xray/home#/traces?filter=service(%22api.amazon.com%22)%20%7B%20fault%20%3D%20true%20OR%20responsetime%20%3E%202.5%20%7D%20AND%20annotation.foo%20%3D%20%22bar%22
```

如需篩選條件表達式的詳細資訊，請參閱[使用篩選條件表達式](xray-console-filters.md)。

## 時間範圍
<a name="xray-console-deeplinks-time"></a>

指定時間長度或開始及結束時間 (格式為 ISO8601)。時間範圍以 UTC 表示，最長可達 6 小時。

**時間長度** – `xray/home#/page?timeRange=range-in-minutes` 

**Example – 過去一小時的追蹤映射**  

```
https://console.aws.amazon.com/xray/home#/service-map?timeRange=PT1H
```

**開始和結束時間** – `xray/home#/page?timeRange=start~end` 

**Example – 時間範圍精確到 秒**  

```
https://console.aws.amazon.com/xray/home#/traces?timeRange=2023-7-01T16:00:00~2023-7-01T22:00:00
```

**Example – 時間範圍精確到 分鐘**  

```
https://console.aws.amazon.com/xray/home#/traces?timeRange=2023-7-01T16:00~2023-7-01T22:00
```

## 區域
<a name="xray-console-deeplinks-region"></a>

指定 AWS 區域 以連結至該區域中的頁面。若您未指定區域，主控台會將您重新導向至最後一個前往的區域。

**區域** – `xray/home?region=region#/page` 

**Example – 美國西部 （奧勒岡） 的追蹤地圖 (us-west-2)**  

```
https://console.aws.amazon.com/xray/home?region=us-west-2#/service-map
```

當您將區域與其他查詢參數一起包含時，區域查詢會在雜湊之前進行，而 X-Ray-specific查詢會在頁面名稱之後進行。

**Example – 美國西部 （奧勒岡） (us-west-2) 中最後一個小時的追蹤映射**  

```
https://console.aws.amazon.com/xray/home?region=us-west-2#/service-map?timeRange=PT1H
```

## 合併
<a name="xray-console-deeplinks-combined"></a>

**Example – 具有持續時間篩選條件的最近追蹤**  

```
https://console.aws.amazon.com/xray/home#/traces?timeRange=PT15M&filter=duration%20%3E%3D%205%20AND%20duration%20%3C%3D%208
```

**輸出**
+ 頁面 – 追蹤
+ 時間範圍 – 過去 15 分鐘
+ 篩選條件 – 持續時間 >= 5 且持續時間 <= 8