Azure API Management における可観測性

適用対象: すべての API Management レベル

監視とは、あるシステムから生成されるデータからそのシステムの内部状態を理解するための機能であり、そのデータをいろいろ調べ、発生した問題とその理由に関する疑問に答える機能です。

Azure API Management を利用すると、組織は全 API の管理を一元化できます。 全 API トラフィックの単一エントリ ポイントとして機能するため、API を監視する場所として理想的です。

概要

Azure API Management では、マネージド ゲートウェイまたはセルフホステッド ゲートウェイ (いずれも自己デプロイ済み) の使用、または Azure Arc 拡張機能の使用を選択できます。

次の表は、API を操作するために API Management によってサポートされるすべての監視機能と、それらでサポートされているデプロイ モデルをまとめたものです。 API 発行元や、API Management インスタンスを操作または管理するためのアクセス許可を持つ他のユーザーがこれらの機能を使用できます。

開発者ポータルを使用する API コンシューマーは、組み込みの API レポートを使用できます。 これは、直近の 90 日間の個々の API の使用状況に関する情報のみを提供します。 現時点では、組み込みの API レポートは、v2 サービス レベルの開発者ポータルでは使用できません。

ツール 次の場合に便利 データラグ4 保持 サンプリング データの種類 サポートされているデプロイ モデル
リクエストトレース (API Inspector) テストとデバッグ すぐに 最後の 100 トレース 要求ごとにオンにする 要求のトレース マネージド、セルフホステッド、Azure Arc、ワークスペース
ビルトイン分析 レポートと監視 有効期間 100% レポートとログ マネージド
Azure Monitor のメトリック レポートと監視 90 日 (アップグレードして延長) 100% メトリック マネージド、セルフホステッド2、Azure Arc
Azure Monitor ログ レポート、監視、デバッグ 31 日/5 GB (延長アップグレード) 100% (調整可能) ログ マネージド1、セルフホステッド3、Azure Arc3
Azure アプリケーション Insights レポート、監視、デバッグ 90 日/5 GB (延長アップグレード) カスタム ログ、メトリック マネージド1、セルフホステッド1、Azure Arc1、ワークスペース1
Azure Event Hubs 経由のログ記録 カスタム シナリオ ユーザー管理型 カスタム カスタム マネージド1、セルフホステッド1、Azure Arc1
OpenTelemetry 監視 ユーザー管理型 100% メトリック セルフホステッド2

1 Azure API Management の機能の構成に応じて、省略可能です。
2 ゲートウェイの構成に応じて省略可能。
3現在、セルフホステッド ゲートウェイ は診断ログを Azure Monitor に送信しません。 ただし、セルフホステッド ゲートウェイがデプロイされている場所で、ローカルにログを構成して永続化することは可能です。 詳細については、 セルフホステッド ゲートウェイのローカル メトリックとログの構成に関するページを参照してください。
4 要求トレースを除き、API Management のすべてのログは非同期的に実行されます。

ベスト プラクティス

次のプラクティスにより、API の可観測性が向上します。

  • 詳細な監視: メソッドごとの メトリックを有効にして、応答時間とエラー率に関する詳細な分析情報を得ます。
  • 末尾の待機時間の監視: 平均待機時間は誤解を招く可能性があり、末尾の待機時間 (90 パーセンタイル、95 パーセンタイル、99 パーセンタイルなど) に対してメソッドごとのアラートを構成します。 この機能を実装するには、Kusto クエリ言語 (KQL) を使用して、Log Analytics ワークスペースにログを転送します。
  • プロアクティブ アラート: エラー率と低い成功 に対してメソッドごとのアラートを確立し、カウントの代わりにレートを使用して精度を確保します。
  • 分散トレース: トレース を有効にして、パフォーマンスのボトルネックを特定し、問題のトラブルシューティングを行います。
  • リソースのタグ付け: 正確なコスト追跡と割り当てのために API にタグ を適用します。