API Monitoring と Edge Analytics の比較

現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください
情報

このセクションでは、API MonitoringEdge Analytics を比較します。API Monitoring と Edge Analytics はどちらも API データを収集して表示できますが、目的は異なります。

  • API Monitoring の目標は、API が意図したとおりに稼働していることを確認することです。ここでは、利用可能な最新のデータを表示する必要があります。API Monitoring は、非常にリアルタイムに近いデータを提供し、問題が発生した場合に通知するアラートを作成できます。
  • Edge Analytics の目的は、API の長期的な動作を把握して、API でビジネス要件がサポートされているかどうかを確認し、必要に応じて変更を加えることです。これらの目的においては、リアルタイム データを表示することはそれほど重要ではありません。そのため、アナリティクス データの表示が若干遅れますが、通常は最大で 10 分遅れます。

API Monitoring データは主にエラーコードとレイテンシに関連しており、アナリティクス データの小さなサブセットであることに注意してください。

API Monitoring データとアナリティクス データの違い

このセクションでは、Edge Analytics と API Monitoring によって収集されるデータとのわずかな違いについて説明します。API Monitoring とアナリティクスで使用されるデータ パイプラインは異なるため、Monitoring で生成されるカスタム レポートとアナリティクスで生成されるレポートでは若干の違いが生じる場合があります。たとえば、バックエンド タイムアウト(リクエストの HTTP ステータス コード 504)とクライアント タイムアウト(HTTP ステータス コード 499)の両方で、タイムアウト エラーの報告結果に差異が見られることがあります。アナリティクスのカスタム レポートでは、ステータス コード 200 とともに表示されることがありますが、Monitoring のカスタム レポートではステータス コード 504 または 499 で表示されます。

API Monitoring

API Monitoring は、API のパフォーマンスに関するリアルタイムの分析情報を提供し、問題を迅速に診断して修正し、API を意図したとおりに機能させます。

API Monitoring でできること:

  • API の可用性を高め、診断までの平均時間(MTTD)を短縮します。
  • ユーザーへの影響が生じる前に、コンテキスト アラートに基づいて適切な措置を講じます。
  • Apigee の障害コードを活用して、診断を迅速化します。
  • 問題領域をすばやく分離して、エラー、パフォーマンス、レイテンシの問題とその原因を診断します。

Edge API 分析

Edge API Analytics は、API を介して送受信される情報を収集して分析します。API Analytics では、次のような情報が取得されます。

  • API トラフィックの推移
  • 上位のアプリ
  • 上位のデベロッパー
  • 最もよく使用される API メソッド
  • API レスポンス時間が最も早い/最も遅いのはどのような場合ですか?
  • API トラフィックが最も多い地理的な場所

API Analytics によって収集されるデータ

API Analytics は、API を通過するさまざまなデータを収集して分析します。たとえば、API がデプロイされている間、アナリティクスは受信したメッセージの数、デベロッパーの数、レスポンス時間、エラー、使用中のアプリの数、リクエスト サイズなどのさまざまなデータを常に記録しています。

指標の概要とその使用方法については、指標 API を使用して API プログラムのパフォーマンスを測定するをご覧ください。指標の詳細なリストについては、分析の指標、ディメンション、フィルタのリファレンスをご覧ください。

カスタム指標を収集する

また、StatisticsCollector ポリシーを使用してカスタム指標を収集することもできます。StatisticsCollector ポリシーは、リクエスト ヘッダー、XML/JSON ペイロード、クエリ パラメータ、URI、およびその他の場所からの情報を、分析とレポート生成のために Analytics Server に書き込むことができます。

アナリティクスのデータにアクセスする

レポートが生成されたら、API Analytics 可視化ツール(ダッシュボード、カスタム レポート、GeoMap など)を使用して、事前定義された指標とカスタム指標にアクセスできます。API Analytics が提供する可視化ツールの詳細については、分析ダッシュボードをご覧ください。カスタム レポートの詳細については、カスタム レポートを作成するをご覧ください。

API Monitoring と API Analytics の比較

API デベロッパーは、API Monitoring と API Analytics の両方を使用します。この 2 つの主な違いの一つは、API Monitoring に組み込まれているアラート メカニズムです。アラートを使用すると、運用チームは API の問題にリアルタイムで対応できるため、API の可用性と期待どおりに動作していることを確認できます。

アラート条件は、特定のステータス コード(2xx/4xx/5xx)、レイテンシ、障害コードのしきい値を定義します。これらのしきい値を超えると、UI に視覚的なアラートがトリガーされ、メール、Slack、PagerDuty、Webhook などのさまざまなチャネルを介して通知が送信されます。アラートは、環境、API プロキシ、ターゲット サービス、リージョンの各レベルで設定できます。

アラートがトリガーされると、運用チームは API Monitoring UI を使用して問題を調査し、根本原因をドリルダウンできます。 その後、アラートに関する次のような事前定義された情報を含むカスタム レポートを生成できます。

  • レスポンスの合計時間
  • ターゲット レスポンス タイム
  • プロキシエラー
  • ターゲット エラー
  • リクエスト UUID
  • その他

API Analytics は、複数のチームが使用する幅広いデータをキャプチャするように設計されています。例:

  • 運用チームは、アナリティクスのデータを使用してトラフィックが多い期間と少ない期間を特定し、変化する需要に合わせてサービスをスケールアップまたはスケールダウンできます。
  • マーケティング チームは、アナリティクスのデータを使用して、個々の API、アプリ、顧客などのデータで特定された顧客の使用パターンを特定できます。
  • すべてのチームがリクエストから収集されたカスタムデータにアクセスし、ヘッダー値、クエリ パラメータ、リクエスト ペイロードなどの特定の情報を追跡できます。