CloudMonitor を使用して、API Gateway で公開されている API のアラートを設定できます。これにより、API サービスの運用状況を追跡し、その安定性を確保できます。
1. リソースの関連付け
API Gateway のモニタリングとアラート機能は、さまざまなビジネス要件を満たすことができます。API Gateway は、以下の監視メトリクスをサポートしています:
-
HttpStatusCode
-
API 応答時間
-
API リクエスト総数
-
インバウンドトラフィック
-
アウトバウンドトラフィック
以下のいずれかの方法を使用して、アラートルールを作成し、1 つ以上の API に関連付けることができます:
-
1 つ以上の API を手動で関連付けます。この方法は、特定の API に同じアラートルールを適用する場合に適しています。API の構成が変更されても、アラートルールは影響を受けません。
-
API グループを関連付けます。これにより、グループ内のすべての API に同じアラートルールが適用され、それらの呼び出し状況がモニタリングされます。グループ内の API を追加、削除、または変更すると、アラートルールは自動的に同期されます。
-
すべてのリソースを関連付けます。これにより、アカウント配下の API Gateway 内のすべての API にルールが適用されます。この方法は、管理する API の数が少ないシナリオに適しています。
最初の方法または 2 番目の方法を使用する場合、特定環境を選択してアラートルールを作成し、API のモニタリングとアラート機能を設定できます。たとえば、本番 (RELEASE)、ステージング (PRE)、またはテスト (TEST) 環境を選択できます。
2. アラートレベルと通知方法の設定
CloudMonitor は、しきい値の範囲に応じて、重大、警告、または情報アラートをトリガーできます。各レベルで、異なるチャネルを通じて通知を送信できます。アラート通知の詳細については、「概要」をご参照ください。
-
重大:電話 + SMS メッセージ + メール + DingTalk チャットボット (有料機能)。
-
警告:SMS メッセージ + メール + DingTalk チャットボット。
-
情報:メール + DingTalk チャットボット。
たとえば、2XX ステータスコードの数が 5 分間連続して毎分 200 を超えた場合に通知をトリガーするアラートルールを設定できます。
3. 1 つ以上の API へのアラートルールの関連付け
アラートテンプレート、アラートルール、通知連絡先、およびアラート通知の設定に関する詳細については、「概要」をご参照ください。
-
API Gateway コンソールにログインし、リージョンを選択します。左側のナビゲーションウィンドウで、 を選択し、アラートルールを追加する API を見つけます。
-
[API リスト] で、API 名をクリックして詳細ページを開きます。左側のナビゲーションウィンドウで [モニタリング] をクリックします。次に、右上隅の [アラート] をクリックして、CloudMonitor コンソール を開きます。
-
[アラートルール] ページで、[アラートルールの作成] をクリックします。[アラートルールの作成] ページで、製品を [API Gateway] に、[リソース範囲] を [インスタンス] に設定します。下にある [インスタンスの追加] をクリックします。[インスタンスの追加] ダイアログボックスで、追加する API を選択します。
4. API グループへのアラートルールの関連付け
-
同じアラートルールを API グループ内のすべての API に適用するには、グループの詳細ページに移動し、右上隅の [CloudMonitor の有効化] をクリックします。
-
API グループに対して初めて CloudMonitor を設定すると、AliyunServiceRoleForApiGatewayMonitoring サービスリンクロール の作成を促すダイアログボックスが表示されます。
-
OK をクリックすると、CloudMonitor が有効になったことを示すメッセージと、CloudMonitor 内の対応するアプリケーショングループの名前が表示されます。お客様の権限付与により、API Gateway は現在の API グループをミラーリングするためにこのアプリケーショングループを作成します。名前は
APIGATEWAY_${region}_${groupId}というフォーマットに従います。ここで、regionは API グループのリージョン、groupIdはその ID です。 -
CloudMonitor が有効になった後、グループ詳細ページの [CloudMonitor に移動して設定] をクリックすると、現在のアプリケーショングループのアラートルールを直接設定できます。
5. すべての API へのアラートルールの関連付け
手順は「1 つ以上の API のアラートルールを作成する」場合と同じですが、[リソース範囲] を「すべてのリソース」に設定する必要がある点が異なります。設定すると、アカウント配下の API Gateway のすべてのリージョンにわたるすべての API に同じアラートルールが適用されます。この方法では、特定の API を選択することはできません。
6. API Gateway でサポートされるアラートルール
API Gateway が提供する 5 つのメトリクス (HttpStatusCode、API 応答時間、API リクエスト総数、インバウンドトラフィック、アウトバウンドトラフィック) に基づいてアラートを設定できます。
API の応答時間:バックエンドサービスの応答時間。
API のリクエスト総数:特定の期間内にクライアントから特定の API に対して API Gateway が受信したリクエストの総数。
インバウンドトラフィック:特定の期間内にクライアントから API Gateway が受信したリクエストのトラフィック。
アウトバウンドトラフィック:特定の期間内に API Gateway からバックエンドサービスに送信されたリクエストのトラフィック。
HTTP ステータスコード:API Gateway によって返されるステータスコード。以下の HTTP ステータスコードがサポートされています:
-HTTP 2XX ステータスコード:API リクエストが受信されたことを示します。注:リクエストが受信されたことは、そのリクエストが意図した操作の成功を意味するものではありません。
-HTTP 4XX ステータスコード:クライアント側でエラーが発生したことを示します (パラメーターエラーなど)。
-Code5XX:サーバー側のエラーを示します。API 開発者は通常、これらのエラーを注意深くモニタリングする必要があります。
7. 注意事項
API が公開されている環境に基づいてアラートルールを設定できます。VPC で公開されている API に設定したアラートルールが有効にならない場合は、次の操作を実行することを推奨します:API Gateway コンソールにログインし、対象の API を見つけて API 名をクリックし、API 詳細ページに移動します。左側のナビゲーションツリーで、[モニタリング] をクリックします。[モニタリングデータ] ページで、環境別に API のモニタリングデータをクエリできるかどうかを確認します。環境別にモニタリングデータをクエリできない場合は、チケットを送信して、ご利用の API Gateway インスタンスのバージョンを更新してください。