View a markdown version of this page

設定バンドルの伝播とオブザーバビリティ - Amazon Bedrock AgentCore

設定バンドルの伝播とオブザーバビリティ

ゲートウェイは、ルールを介して設定バンドルを解決すると、OpenTelemetry (OTel) ヘッダーを介してバンドルをダウンストリームサービスに伝播します。これにより、ゲートウェイとエージェントアーキテクチャ全体でend-to-endの設定管理が可能になります。

設定バンドルの伝播方法

ゲートウェイは、次のキーを使用して、解決されたバンドル ARN とバージョンを OTel バランシングに設定します。

パーティクルキー 説明

aws.agentcore.configbundle_arn

解決された設定バンドルの ARN。

aws.agentcore.configbundle_version

解決された設定バンドルのバージョン。

伝達フローは次のように機能します。

  1. ゲートウェイはルールを評価し、設定バンドルを解決します。

  2. ゲートウェイは、送信リクエストでバンドル ARN とバージョンを OTel バゲージヘッダーに設定します。

  3. エージェントランタイムは、 ヘッダーを含むリクエストを受け取ります。ランタイムはユーザーによって制御されます。エージェントコードは、必要に応じて OTel パーティクルから設定バンドルの ARN とバージョンを読み取ることができます。

  4. エージェントが MCP ターゲットを使用してゲートウェイを呼び出すと、ゲートウェイは OTel の泥沼からバンドルを読み取り、tools/listレスポンスにツールの説明オーバーライドを適用します。詳細については、「MCP ターゲットの動作」を参照してください。

MCP ターゲットの動作

ゲートウェイは、tools/listパスの MCP ターゲットにのみ設定バンドルオーバーライドを適用します。invoke_tool および search_toolパスは、設定バンドルの上書きをサポートしていません。

たとえば、設定バンドルがターゲットのツールの説明を上書きする場合、更新された説明はtools/listレスポンスに表示されますが、search_toolレスポンスには表示されません。

これらのオーバーライドを適用するには、ゲートウェイは GetConfigurationBundleVersionを呼び出してバンドルの内容を読み込みます。このアクセス許可をゲートウェイの実行ロールに追加します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "bedrock-agentcore:GetConfigurationBundleVersion", "Resource": "arn:aws:bedrock-agentcore:us-west-2:123456789012:configuration-bundle/*" } ] }
注記

このアクセス許可は、MCP tools/listオペレーションのゲートウェイ実行ロールでのみ必要です。エージェントランタイムは、バンドルにアクセスせずにバンドルを渡し、このアクセス許可は必要ありません。

制約

  • 設定バンドルは、ゲートウェイと同じアカウントにある必要があります。クロスアカウントバンドルアクセスはサポートされていません。

  • HTTP ターゲットを持つゲートウェイは、OTel のアタレストから設定バンドルを読み取ることはありません。バンドルは独自のルールによってのみ解決されます。HTTP ターゲットを持つゲートウェイに OTel パーティクルのバンドルを渡すと、ゲートウェイはそれを無視します。

  • MCP ターゲットを持つゲートウェイは、設定バンドルを OTel™ から読み取り、tools/listパスにのみオーバーライドを適用します。

ルール解決のオブザーバビリティ

ゲートウェイがリクエストのルールを解決すると、ゲートウェイサーバースパンのスパン属性が出力されます。これらの属性を使用して、適用された設定バンドルのバージョンとルーティングの決定を確認できます。

設定バンドルのオーバーライド属性

スパン属性 説明

aws.agentcore.configbundle_arn

解決された設定バンドルの ARN。

aws.agentcore.configbundle_version

解決された設定バンドルのバージョン。

ターゲットルーティング属性

スパン属性 説明

aws.agentcore.gateway.resolved_target_name

解決されたターゲットの名前。

これらの属性を使用して、ルールが期待どおりに解決されることを確認し、ルーティング動作をトラブルシューティングします。