啟用 Transaction Search - Amazon CloudWatch

啟用 Transaction Search

可以透過主控台或 API 啟用 Transaction Search。Transaction Search 針對整個帳戶設定,並使用 Amazon CloudWatch 定價,將透過 X-Ray 進行的所有範圍攝取切換到經濟高效的收集模式。預設情況下,系統亦會免費為您索引 1% 的攝入範圍作為追蹤摘要,供分析之用。鑑於您已能透過 Transaction Search,對所有攝入範圍取得完整的端到端追蹤可見性,此比例通常已足夠滿足需求。

在主控台中啟用 Transaction Search

以下程序說明如何在主控台中啟用 Transaction Search。

在 CloudWatch 主控台中啟用 Transaction Search
  1. 透過 https://console.aws.amazon.com/cloudwatch/ 開啟 CloudWatch 主控台。

  2. 在導覽窗格的 Application Signals 下,選擇 Transaction Search

  3. 選擇啟用 Transaction Search

  4. 選取要擷取為結構化日誌的方塊,然後輸入要編製索引的範圍百分比。可以免費編製 1% 範圍的索引,並在稍後根據需要變更百分比。

使用 API 啟用 Transaction Search

下列程序說明如何使用 API 啟用 Transaction Search。

步驟 1. 建立政策以授與在 CloudWatch Logs 中擷取範圍的存取權

使用 AWS CLI 或 SDK 啟用 Transaction Search 時,必須搭配使用資源型政策與 PutResourcePolicy 來設定許可。

範例 政策

下列政策範例允許 X-Ray 將追蹤傳送至 CloudWatch Logs

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "TransactionSearchXRayAccess", "Effect": "Allow", "Principal": { "Service": "xray.amazonaws.com" }, "Action": "logs:PutLogEvents", "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:aws/spans:*", "arn:aws:logs:us-east-1:123456789012:log-group:/aws/application-signals/data:*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:xray:us-east-1:123456789012:*" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }
範例 命令

下列範例顯示如何使用 PutResourcePolicy 對 AWS CLI 命令進行格式化。

aws logs put-resource-policy --policy-name MyResourcePolicy --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "TransactionSearchXRayAccess", "Effect": "Allow", "Principal": { "Service": "xray.amazonaws.com" }, "Action": "logs:PutLogEvents", "Resource": [ "arn:partition:logs:region:account-id:log-group:aws/spans:*", "arn:partition:logs:region:account-id:log-group:/aws/application-signals/data:*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition:logs:region:account-id:*" }, "StringEquals": { "aws:SourceAccount": "account-id" } } } ]}'

步驟 2. 設定追蹤區段的目的地

設定透過 UpdateTraceSegmentDestination 進行範圍的擷取。

範例 命令

下列範例顯示如何使用 UpdateTraceSegmentDestination 對 AWS CLI 命令進行格式化。

aws xray update-trace-segment-destination --destination CloudWatchLogs

步驟 3。設定要編製索引的範圍數量

使用 UpdateIndexingRule 設定所需的取樣百分比

範例 命令

下列範例顯示如何使用 UpdateIndexingRule 對 AWS CLI 命令進行格式化。

aws xray update-indexing-rule --name "Default" --rule '{"Probabilistic": {"DesiredSamplingPercentage": number}}'
注意

啟用 Transaction Search 後,需等待約十分鐘,範圍才可用於搜尋和分析。

步驟 4. 驗證範圍是否可用於搜尋和分析

若要驗證範圍是否可用於搜尋和分析,請使用 GetTraceSegmentDestination

命令範例

下列範例顯示如何使用 GetTraceSegmentDestination 對 AWS CLI 命令進行格式化。

aws xray get-trace-segment-destination
回應範例

下列範例顯示 Transaction Search 處於作用中狀態時,您可能收到的回應。

{ "Destination": "CloudWatchLogs", "Status": "ACTIVE" }