Cloud Monitor は、メール、Webhook による通知に加えて、HTTP POST を介してしきい値アラートを運用保守システムやメッセージングシステムに転送するアラートコールバック機能をサポートしています。
前提条件
HTTP POST リクエストを受け入れる、運用保守システムまたはメッセージングシステムのパブリック URL が必要です。
背景情報
-
Cloud Monitor は、HTTP または HTTPS POST リクエストとして、アラート通知を指定された URL に送信します。次の IP アドレス範囲をファイアウォールの許可リストに追加してください。
47.74.206.0/26 47.74.206.64/26 47.74.206.128/26 47.74.206.192/26 8.222.159.116 -
Cloud Monitor は、失敗したコールバックを最大 3 回まで再試行します。1 回のリクエストのタイムアウトは 5 秒です。
Cloud Monitor コンソールでは、しきい値アラートコールバックの一括設定はサポートされていません。代わりに、次の API を使用してください:
-
CreateMetricRuleTemplate を呼び出してコールバック URL を含むアラートテンプレートを作成し、次に ApplyMetricRuleTemplate を呼び出してアプリケーション グループに適用します。
-
PutGroupMetricRule を呼び出して、コールバック URL を含むアプリケーション グループのアラートルールを作成または変更します。
操作手順
CloudMonitor コンソール にログインします。
-
左側のナビゲーションペインで、 を選択します。
-
アラームルール ページで、目的のアラートルールを見つけ、その アクション 列の 変更 をクリックします。
説明アラートルールを作成することもできます。
-
アラームルールの変更 パネルで、コールバック URL を入力します。
アラートコールバック URL への接続性をテストするには、以下の手順を実行します。
コールバック URL の右隣にある テスト をクリックします。
WebHook テストパネルで、HTTP ステータスコードおよびテスト結果の詳細を確認し、アラートコールバック URL への接続性を検証・トラブルシューティングします。
説明また、コールバックテンプレートタイプ: および 言語: を設定することも可能です。その後、再度 テスト をクリックすることで、更新されたテスト結果を確認できます。
閉じる をクリックします。
-
OK をクリックします。
結果
アラートがトリガーされると、Cloud Monitor は次のパラメーターを含む POST リクエストをコールバック URL に送信します:
将来的にリクエスト本文に追加のパラメーターが含まれる可能性があります。エンドポイントが未知のパラメーターを問題なく処理できるようにしてください。
|
パラメーター |
タイプ |
説明 |
|
alertName |
String |
アラートルール名。 |
|
alertState |
String |
アラートステータス。有効な値:
|
|
curValue |
String |
アラートがトリガーまたは解決されたときのメトリック値。 |
|
dimensions |
String |
アラート対象リソースのディメンション。例: |
|
expression |
String |
アラートをトリガーする条件。 |
|
groupId |
String |
アプリケーション グループ ID。 |
|
instanceName |
String |
インスタンス名。 |
|
lastTime |
String |
アラートの継続時間。単位:分。 |
|
metricName |
String |
クラウドサービスのメトリックの[メトリック名]列に記載されているメトリック名。 |
|
metricProject |
String |
クラウドサービス名。ほとんどのサービスでは、 |
|
namespace |
String |
クラウドサービスの名前空間。 ほとんどのサービスでは、コールバックの 一部のサービスでは、名前空間がコールバックの |
|
preTriggerLevel |
String |
以前のアラートの重要度レベル。有効な値:
|
|
productGroupName |
String |
アプリケーション グループ名。 |
|
rawMetricName |
String |
「クラウドサービスのメトリック」の [メトリック ID] 列に記載されているメトリック ID。 |
|
regionId |
String |
リージョン ID。 |
|
regionName |
String |
リージョン名。 |
|
ruleId |
String |
トリガーされたアラートルールの ID。 |
|
timestamp |
String |
アラートがトリガーされたときのタイムスタンプ。 |
|
transId |
String |
特定のリソースにおけるアラートのライフサイクル (トリガーから解決まで) の一意の ID。 |
|
triggerLevel |
String |
現在のアラートの重要度レベル。有効な値:
|
|
unit |
String |
メトリックの単位であり、クラウドサービスのメトリックの[単位]列に記載されています。 |
|
userId |
String |
ユーザー ID。 |
表 1. クラウドサービスの名前空間とコールバックの名前空間のマッピング
|
クラウドサービスの名前空間 |
コールバックの名前空間 |
|
acs_ecs_dashboard |
acs_ecs |
|
acs_slb_dashboard |
acs_slb |
|
acs_rds_dashboard |
acs_rds |
|
acs_oss_dashboard |
acs_oss |
|
acs_sls_dashboard |
acs_sls |
|
acs_ess_dashboard |
acs_ess |
|
acs_containerservice_dashboard |
acs_containerservice |
|
acs_apigateway_dashboard |
acs_apigateway |
|
acs_redis_dashboard |
acs_kvstore |
|
acs_ocs_new |
acs_ocs |
|
acs_mns_new |
acs_mns |
POST リクエストのサンプル:
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
expression=$Average>=95&metricName=Host.mem.usedutilization&instanceName=instance-name-****&signature=eEq1zHuCUp0XSmLD8p8VtTKF****&metricProject=acs_ecs&userId=110803419679****&curValue=97.39&alertName=Basic Monitoring-ECS-Memory Usage&namespace=acs_ecs_dashboard&triggerLevel=WARN&alertState=ALERT&preTriggerLevel=WARN&ruleId=applyTemplateee147e59-664f-4033-a1be-e9595746****&dimensions={userId=110803419679****, instanceId=i-8psdh7l6lphbn10l****}×tamp=1508136760&productGroupName=test_Group&groupId=1666****&lastTime=2 minutes&rawMetricName=Host.mem.usedutilization®ionId=cn-hangzhou®ionName=China (Hangzhou)&transId=53767d2a-ae72-11ed-b2ca-00163e2c****&unit=%