Amazon API GatewayのアクティブトレーシングサポートAWS X-Ray - AWS X-Ray

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon API GatewayのアクティブトレーシングサポートAWS X-Ray

X-Rayを使用して、ユーザーリクエストがAmazon API Gateway APIsを経由し、基礎となるサービスへの流れをトレースして分析することができます。API Gatewayは、すべてのAPI Gateway評価項目タイプでX-Rayトレースがサポートしています:地域、エッジの最適化、プライベートです。X-Ray は、X-Ray を利用できるすべての AWS リージョン で Amazon API Gateway と併用できます。詳細については、『Amazon API Gateway開発者ガイド』AWS X-Rayの「API Gateway APIの実行の追跡」を参照してください。

注記

X-Rayは、 API Gatewayを介したREST APIの追跡のみをサポートしています。

Amazon API Gatewayは、追跡機能のサポートを提供していますAWS X-Ray。APIステージの追跡機能を有効にすると、受信リクエストをサンプリングし、X-Rayにトレースを送信することができます。

APIステージで追跡機能を有効にするには
  1. API Gateway(https://console.aws.amazon.com/apigateway)コンソールを開きます。

  2. APIを選択します。

  3. ステージを選択します。

  4. ログ/トレース」タブで、以下を選択します、「X-Rayトレースを有効にする」を選択し、変更の保存

  5. 左側のナビゲーションパネルで、「リソース」を選択します。

  6. 新しい設定でAPIを再配置するには、[Actions]ドロップダウン方式を選択し[Deploy API]の順に選択します。

API Gatewayは、X-Rayコンソールで定義したサンプリングルールを使用し、記録するリクエストを決定します。APIのみに適用されるルール、または特定のヘッダーを含むリクエストにのみ適用されるルールを作成することができます。API Gatewayは、ステージおよびリクエストの詳細と共に、セグメント上の属性にヘッダーを記録します。詳細については、「サンプリングルールの設定」を参照してください。

注記

API Gateway HTTP 統合で REST API をトレースする場合、各セグメントのサービス名は API Gateway から HTTP 統合エンドポイントまでのリクエスト URL パスに設定され、一意の URL パスごとに X-Ray トレースマップ上にサービスノードが作成されます。URL パスの数が多いと、トレースマップが 10,000 ノードの制限を超え、エラーが発生する可能性があります。

API Gateway によって作成されるサービスノードの数を最小限に抑えるには、パラメータを URL クエリ文字列内、またはリクエスト本文に入れて POST 経由で渡すことを検討してください。いずれの方法でも、パラメータが URL パスに含まれることはないため、個別の URL パスやサービスノードの数が少なくなる可能性があります。

API Gatewayは、HTTP(すべての受信ハイパーテキスト転送プロトコル)リクエストに対し、まだトレースヘッダーを持たない受信リクエストにトレースヘッダーを追加します。

X-Amzn-Trace-Id: Root=1-5759e988-bd862e3fe1be46a994272793
X-Ray のトレース ID 形式

X-Ray trace_id は、ハイフンで区切られた 3 つの数字で構成されています。例えば、1-58406520-a006649127e371903a2de979 と指定します。これには、以下のものが含まれます:

  • バージョン番号、すなわち、1

  • 元のリクエストの時刻。ユニックスエポックタイムで、16 進数 8 桁で表示されます。

    例えば、エポックタイムで 2016 年 12 月 1 日 10:00AM PST (太平洋標準時刻) は 1480615200 秒、または 16 進数で 58406520 と表示されます。

  • グローバルに一意なトレースの 96 ビットの識別子で、24 桁の 16 進数で表示されます。

アクティブなトレースが無効になっている場合でも、リクエストがサンプリングされ、かつトレースが開始されているサービスからのリクエストが送信された場合は、ステージによりセグメントが記録されます。たとえば、搭載されたウェブアプリケーションがHTTPクライアントを使用してAPI Gateway APIを呼び出すことができます。X-Ray SDKを使用してHTTPクライアントを導入すると、サンプリング判定を含む発信リクエストにトレースヘッダーが追加されます。API Gatewayは、トレースヘッダーを読み取り、サンプリングされたリクエストのセグメントを作成します。

API Gatewayを使用してAPIのJava SDKを生成するAWS場合は、SDKクライアントを手動で計測するのと同じ方法で、クライアントビルダーでリクエストハンドラーを追加して SDKクライアントを計測できます。手順については、「X-Ray SDK for Java による AWS SDK 呼び出しのトレース」を参照してください。