NGINX.COM
Web Server Load Balancing with NGINX Plus

企業が最新アプリケーションを構築するためにAPIファーストの設計手法を採用すると、それらのAPIの運用パフォーマンスと価値を測定することが最優先となります。APIメトリクスを明確に定義し、重要業績評価指標(KPI)と結びつけるフレームワークを確立することは、API戦略を成功させるための最も重要なステップの1つです。

一般的に、KPIは特定の目標に関連づけられます。KPIは、時間枠が定義されていて、API戦略で期待される成果と関係しています。対照的に、APIメトリクスは重要なデータポイントです。すべてのメトリクスがKPIになるわけではありませんが、すべてのKPIはメトリクスから始まります。

それでは、どのように始めればよいのでしょうか。まず、API戦略の目標を明確にし、その目標に合ったメトリクスを選択する必要があります。各チームは、それぞれに重要なことや、ビジネスに不可欠なことによって、異なるメトリクスを測定および追跡する必要があることに注意してください。

一般的に、企業が追跡できるAPIメトリクスは、測定する価値に基づき以下の3つの包括的なタイプに分けることができます。

これらの包括的なメトリクスをピラミッドに当てはめてみます。一番下は、個々のAPIとそれをサポートするインフラストラクチャの戦術的なパフォーマンスを測定する運用メトリクスです。最上部は、APIによって生み出されるビジネス価値を測定する製品メトリクスです。これら2つは、エンドユーザー(開発者)とのAPIプログラムの成長を追跡する採用メトリクスで結ばれています。一般的に、製品メトリクスと採用メトリクスは、測定する必要のあるビジネス成果と関係していて、運用メトリクスは、維持する必要のある技術標準と関係しています。

この記事では、測定すべき12の特定のメトリクスを分類し、それらがインフラストラクチャおよびアプリケーションチームをどのようにサポートするかを議論して、メトリクスとKPIがどのように関係するかを説明します。

運用メトリクス

API戦略の序盤では、通常、運用メトリクスから測定します。これらは戦術的なものであり、APIがどのように機能しているかについてのインサイトを提供します。運用メトリクスは、通常、KPIそのものではありません。しかし、チームが構築しているソフトウェアの品質とパフォーマンスを測定するときに役立ちます。また、新たな問題を早期発見でき、重要なKPIに影響を与える可能性のある問題の分析や発見に役立ちます。

追跡する運用メトリクスは、チームと担当によって異なります。

インフラストラクチャチーム

Platform Opsは、アプリケーションを提供するためにさまざまなチームが使用するインフラストラクチャと技術の集合体を維持、接続および保護するチームです。APIプログラムの場合、一般的にAPIゲートウェイやAPI開発者ポータルが含まれます。

Platform Opsのようなインフラストラクチャチームの主なメトリクスは、以下のとおりです。

  1. アップタイム – 最も基本的なメトリクスの1つであるアップタイムは、サービスの可用性を測定するための最も基本的な標準です。これは、サービス品質保証(SLA)と関連づけられることが多くあります。
  2. CPUとメモリー使用量 – APIゲートウェイのリソース使用量を追跡することは、インスタンスのスケールアウトが必要となる時期を見極めるために重要です。また、何かが壊れ始めていることや、エラーによって使用量が急増していることを早期に知らせる警告としての役割も果たします。
  3. 合計成功率とエラー率 – APIがHTTPエラー(200以外)のステータスコードをトリガーする頻度を測定することは、APIがどの程度エラーを起こしやすいか理解するときに役立ちます。この集計測定は、チームが本番環境に展開しているAPIの全体的な品質を判断するときに役立つ情報を提供します。

アプリケーションチーム

API開発者とサービス所有者で構成されるアプリケーションチームは、個々のサービスやアプリケーションの構築と運用を担当します。これらは、より大きな製品の一部として、またはパートナーとの統合のために、あるいは開発者にサービスとしてAPIを提供するときに使われることがあります。

アプリケーションチームが測定すべき重要なメトリクスは、以下のとおりです。

  1. 1分あたりのリクエスト数 – このパフォーマンスメトリクスは、APIが処理しているリクエストの数を測定します。時間とともに変化しますが、一般的には、APIユーザーに最高の体験を保証するために、下向きに管理することが望ましいとされています。
  2. 平均と最大のレイテンシ – APIがリクエストを受けてレスポンスを返すまでの平均時間を追跡することは重要です。遅いAPIが1つでもあれば、ユーザーエクスペリエンスに悪影響を与え、その結果、ビジネスにも悪影響を及ぼす可能性があります。
  3. 1分あたりのエラー数 – 何事でもそうですが、APIに完璧なものはありません。失敗は、「もし起きたら」ではなく、「いつ起こるか」の問題です。エラーを監視して、エラーが急増し始める前に修正できるように計画的な行動指針を準備しておく必要があります。

API運用を詳しく分析し、NGINX提供のO’ReillyのeBook『Mastering API Architecture (APIアーキテクチャについて学ぶ)』第3章~第5章を参考に、ビジネスの観点から重要なKPIとメトリックを特定してください。

採用メトリクス

APIファーストのビジネスでは、エンジニアリングのメトリクスの先を見て、開発者がどのようにAPIと接しているかを理解することが不可欠です。また、開発者がAPIを採用して、そこから価値を得られるように、API開発者エクスペリエンスを測定および監視する必要もあります。

採用メトリクスの例をいくつか挙げます。

  1. 一意なAPIコンシューマ – 月間ユーザー数に関連することがよくあるこのメトリクスは、どのくらい多くの開発者がAPIを採用および使用しているかを測定します。時間の経過とともに、APIがより多くの開発者のアプリケーションに統合され、増えていくことが理想的です。
  2. API使用の増加 – このメトリクスもAPI採用を測定するものであり、そのためのメトリクスとして好まれています。APIを使用するアプリケーションや開発者の増加に伴い、APIトラフィックが毎月増えていくことが理想的です。
  3. ファーストコールまでの時間 – このメトリクスは、開発者がアカウントを作成し、API認証情報を生成して、最初のAPIコールを実行するまでの時間を測定します。開発者がAPIをできるだけ早く稼働および実行できるようにすることが高く優先されます。このメトリクスは、全体的なAPI開発者エクスペリエンスを測定するために最も重要です。

注:KPIの少なくとも1つは、API採用の測定を目的とすることをお勧めします。これは、APIプログラムの全体的な成長を計算するときに役立ちます。たとえば、APIを使用して継続的な統合やアプリを作成する開発者の数を増やすことをKPIとして設定します。

製品メトリクス

API製品メトリクスは、APIの価値を理解する上で大きな役割を果たします。収益に直接貢献するAPIはごく一部かもしれませんが、すべてのAPIはビジネスに価値を提供する必要があります。

測定すべき主要な製品メトリクスは、以下のとおりです。

  1. 直接収益と間接収益 – これらのメトリクスは、APIが収益に貢献するさまざまな方法を測定します。収益に直接つながるAPIもありますが、ビジネスパートナーとの統合をサポートするAPIや、顧客に評価されるサードパーティ統合であるAPIもあります。APIの採用率と同様、間接収益を追跡することは、開発者がパートナーのために収益となるアプリを構築するときに役立ちます。
  2. APIごとのアプリケーション数 – APIは再利用可能である必要があります。このメトリクスは、最も価値のあるAPIを確認するために、どれくらいの数のアプリケーションがAPIと統合しているかを測定します。
  3. パートナー数 – APIはビジネス関係を確立することがよくあります。パートナーのAPI統合数を追跡することは、採用を促進し、他のビジネス部門に価値を示すときに役立ちます。

注:これらの製品メトリクスは、ビジネスインパクトと密接に連携しています。ビジネス目標に応じて、いくつかのメトリクスをKPIに設定できます。たとえば、サードパーティプロバイダを通じてより多くの顧客に広がることをAPI戦略のビジネス目標とした場合、APIを使用するパートナーの数と、それらの統合による間接収益の両方を追跡できます。

ビジネスと運用のKPIを含むAPI製品ライフサイクルについては、『Mastering API Architecture (APIアーキテクチャについて学ぶ)』の第3章~第5章で詳しく説明されています。

まとめ

APIメトリクスとビジネスKPIを連携させることは、データ駆動型の意思決定を行い、API戦略により組織の必要とする価値が提供されるようにするための主要な方法の1つです。それだけでなく、APIを可視化することで、インフラストラクチャやアプリケーションのチームは、最も重要な運用メトリクスを測定できるようになります。

NGINXでは、多くの重要なAPIメトリクスを可視化しています。リアルタイムおよび過去のメトリクスを表示して、必要なアプリケーションパフォーマンスモニタリング(APM)またはデータ分析ソリューションに簡単にエクスポートできます。

NGINX Management Suiteの30日間無料トライアルを今すぐ始めましょう。API Connectivity Manager、APIゲートウェイとしてのNGINX Plus、APIを保護するNGINX App Protectを利用できます。

Hero image
NGINXクックブック 設定レシピ集(日本語版)

待望の【O'Reilly】NGINX Cookbook日本語版がついに完成!NGINXクックブックは、NGINXを最大限に活用する方法を解説しています。



著者について

Andrew Stiefel

Product Marketing Manager

About F5 NGINX

F5 NGINXについて
F5, Inc.は、人気のオープンソースプロジェクト「NGINX」を支援しています。NGINXはモダンアプリケーションを開発・構築するためのテクノロジースイートを提供しています。NGINXとF5製品との併用で、コードからユーザーまでの広範なアプリケーション領域をサポートし、マルチクラウドアプリケーションサービスとしてNetOpsとDevOps間の課題を解決します。

詳しくはnginx.co.jpをご覧ください。Twitterで@nginxをフォローして会話に参加することもできます。