View a markdown version of this page

AgentCore 產生的閘道可觀測性資料 - Amazon Bedrock AgentCore

AgentCore 產生的閘道可觀測性資料

下列各節說明 AgentCore 對 Amazon CloudWatch 的閘道指標、日誌和範圍輸出。CloudWatch 生成式 AI 可觀測性頁面不提供這些指標。閘道指標每隔一分鐘批次處理一次。若要進一步了解檢視閘道指標,請參閱檢視 Amazon Bedrock AgentCore 代理程式的可觀測性資料

注意

若要為 AgentCore 閘道啟用服務提供的日誌,您需要設定必要的 CloudWatch 資源。請參閱啟用 AgentCore 執行期、記憶體、閘道、內建工具和身分資源的可觀測性,以進一步了解。

提供的指標

Gateway 會將調用和用量指標發佈至 CloudWatch。您可以檢視這些指標,也可以設定警示,在特定指標超過閾值時提醒您。若要進一步了解,請選取主題:

呼叫指標

這些指標提供有關 API 調用、效能和錯誤的資訊。

對於這些指標,會使用下列維度:

  • 操作 – API 操作的名稱 (例如 InvokeGateway)。

  • Protocol – 通訊協定的名稱 (例如 MCP)。

  • 方法 – 代表要叫用的 MCP 操作 (例如工具/清單)。

  • 資源 – 代表資源的識別符 (例如閘道 ARN)。

  • 名稱 – 代表工具的名稱。

指標 說明 統計資料 單位

調用

對每個資料平面 API 提出的請求總數。無論回應狀態為何,每個 API 呼叫都會計為一個叫用。

總和

計數

限流

服務調節的請求數 (狀態碼 429)。

總和

計數

SystemErrors

使用 5xx 狀態碼失敗的請求數量。

總和

計數

UserErrors

使用 4xx 狀態碼失敗的請求數量,但 429 除外。

總和

計數

延遲

從服務收到請求到開始傳送第一個回應字符所經過的時間。換句話說,初始回應時間。

平均值、最小值、最大值、p50、p90、p99

毫秒

持續時間

從接收請求到傳送最終回應字符所經過的總時間。代表請求的完整end-to-end處理時間。

平均值、最小值、最大值、p50、p90、p99

毫秒

TargetExecutionTime

透過 Lambda / OpenAPI / 等執行目標所需的總時間。這有助於判斷目標對總延遲的貢獻。

平均值、最小值、最大值、p50、p90、p99

毫秒

用量指標

這些指標提供閘道使用方式的相關資訊。

指標 說明 統計資料 單位

TargetType

每種類型目標 (MCP、Lambda、OpenAPI) 所服務的請求總數。

總和

計數

檢視閘道 CloudWatch 指標

如需檢視 CloudWatch 指標的詳細資訊,請參閱《Amazon CloudWatch 使用者指南》中的檢視可用的指標。下列程序說明如何檢視閘道的指標:

在主控台中檢視閘道指標

  1. 透過 https://console.aws.amazon.com/cloudwatch/ 開啟 CloudWatch 主控台。

  2. 在左側導覽窗格中,選擇指標區段下的所有指標

  3. 瀏覽 下,從顯示目前 AWS 區域的下拉式選單中,選取您想要其指標的區域。

  4. 選擇 AWS/Bedrock-AgentCore 命名空間。

  5. 選擇維度 (例如 操作 ) 或維度的組合 (例如 方法、操作、通訊協定 ) 來檢視指標。

  6. 若要將指標新增至 CloudWatch 圖形,請選取其旁邊的核取方塊。

設定 CloudWatch 警示

您可以使用 PutMetricAlarm API 操作來設定 CloudWatch 警示,在特定指標超過閾值時提醒您。例如,您可能想要在錯誤率超過 5% 或延遲超過 1 秒時收到通知。

下列範例說明如何使用 CLI AWS 建立高錯誤率的警示:

aws cloudwatch put-metric-alarm \ --alarm-name "HighErrorRate" \ --alarm-description "Alarm when error rate exceeds 5%" \ --metric-name "SystemErrors" \ --namespace "AWS/Bedrock-AgentCore" \ --statistic "Sum" \ --dimensions "Name=Resource,Value=my-gateway-arn" \ --period 300 \ --evaluation-periods 1 \ --threshold 5 \ --comparison-operator "GreaterThanThreshold" \ --alarm-actions "arn:aws:sns:us-west-2:123456789012:my-topic"

當系統錯誤數量在 5 分鐘內超過 5 時,此警示將會觸發。當警示觸發時,它會傳送通知至指定的 SNS 主題。

提供的日誌資料

AgentCore 提供的日誌可協助您監控和疑難排解重要的 AgentCore 閘道資源程序。若要啟用此日誌資料,您需要建立日誌目的地。

AgentCore 可以將日誌輸出到 CloudWatch Logs、Amazon S3 或 Firehose 串流。如果您使用 CloudWatch Logs 目的地,這些日誌會存放在預設日誌群組下/aws/vendedlogs/bedrock-agentcore/gateway/APPLICATION_LOGS/{gateway_id}或以 /aws/vendedlogs/ 開頭的自訂日誌群組下。請參閱啟用 AgentCore 執行期、記憶體、閘道、內建工具和身分資源的可觀測性,以進一步了解。

AgentCore 會記錄閘道資源的下列資訊:

  • 閘道請求處理的開始和完成

  • 目標組態的錯誤訊息

  • 缺少授權標頭或授權標頭不正確的 MCP 請求

  • 具有不正確請求參數的 MCP 請求 (工具、方法)

在 Gateway 上執行任何 MCP 操作時,您也可以在 Vended Logs 整合中查看請求和回應內文。他們可以使用這些 span_idtrace_id 欄位,進一步分析這些日誌,以連接所發出的已佈建跨度和日誌。如需使用客戶受管 KMS 金鑰加密閘道的詳細資訊,請參閱 Amazon Bedrock AgentCore Gateway 的進階功能和主題

範例日誌:

{ "resource_arn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/<gatewayid>", "event_timestamp": 1759370851622, "body": { "isError": false, "log": "Started processing request with requestId: 1", "requestBody": "{id=1, jsonrpc=2.0, method=tools/call, params={name=target-quick-start-f9scus___LocationTool, arguments={location=seattle}}}", "id": "1" }, "account_id": "123456789012", "request_id": "12345678-1234-1234-1234-123456789012", "trace_id": "160fc209c3befef4857ab1007d041db0", "span_id": "81346de89c725310" }

包含回應內文的範例日誌:

{ "resource_arn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/<gatewayid>", "event_timestamp": 1759370853807, "body": { "isError": false, "responseBody": "{jsonrpc=2.0, id=1, result={isError=false, content=[{type=text, text=\"good\"}]}}", "log": "Successfully processed request with requestId: 2", "id": "1" }, "account_id": "123456789012", "request_id": "12345678-1234-1234-1234-123456789012", "trace_id": "160fc209c3befef4857ab1007d041db0", "span_id": "81346de89c725310" }

提供的跨度

AgentCore 支援 OTEL 合規的付費範圍,您可以使用這些範圍來追蹤使用中不同基本概念的調用。

用於工具調用的範例已佈建跨度:

  • kind:SERVER - 追蹤整體執行詳細資訊、叫用的工具、閘道詳細資訊、 AWS 請求 ID、追蹤和跨度 ID。

  • kind:CLIENT - 涵蓋調用的特定目標及其詳細資訊,例如目標類型、目標執行時間、目標執行開始和結束時間等。

對於其他 MCP kind:SERVER 方法調用,只會發出跨度。

雖然這些範圍會發出指標,為了調查特定範圍發生故障的原因,Gateway 使用者必須檢查所提交的日誌。例如, spanId或 等各種欄位aws.request.id可協助將這些範圍和日誌拼接在一起。

作業 跨度屬性 說明

列出工具

aws.operation.name, aws.resource.arn, aws.request.id, aws.account.id, gateway.id, aws.xray.origin, aws.resource.type, aws.region, latency_ms, error_type, jsonrpc.error.code, http.method, http.response.status_code, gateway.name, url.path, overhead_latency_ms

列出連接至閘道的工具

呼叫工具

aws.operation.name, aws.resource.arn, aws.request.id, aws.account.id, gateway.id, aws.xray.origin, aws.resource.type, aws.region, latency_ms, error_type, jsonrpc.error.code, http.method, http.response.status_code, gateway.name, url.path, overhead_latency_ms, tool.name

呼叫特定工具。會發出兩個跨度:1. kind:SERVER 追蹤整體執行詳細資訊 (成功/未成功)、叫用工具、閘道詳細資訊、 AWS 請求 ID、追蹤和跨度 ID。 2. kind:CLIENT 涵蓋調用的特定目標及其詳細資訊,例如目標類型、目標執行時間、目標執行開始和結束時間等。

搜尋工具

aws.operation.name, aws.resource.arn, aws.request.id, aws.account.id, gateway.id, aws.xray.origin, aws.resource.type, aws.region, latency_ms, error_type, jsonrpc.error.code, http.method, http.response.status_code, gateway.name, url.path, overhead_latency_ms, tool.name

為輸入查詢搜尋十種最相關的工具