すべてのプロダクト
Search
ドキュメントセンター

CloudMonitor:システムイベントでトリガーされるアラートのコールバックの設定 (推奨)

最終更新日:May 14, 2024

に加えて メール、DingTalk、Lark、WeCom、Slack、CloudMonitorは、アラート通知の送信に役立つアラートコールバック機能を提供します。 これにより、イベントトリガーによるアラートをより柔軟に処理できます。 このトピックでは、システムイベントトリガアラートのコールバック機能を使用して、CloudMonitorによって送信されたアラート通知を既存のO&Mまたは通知システムに統合する方法について説明します。 このトピックでは、システムイベントがサブスクライブされ、webhook URLにプッシュされます。

前提条件

O&Mシステムまたは通知システムのパブリックURLが利用可能です。 URLを使用して、O&Mシステムまたは通知システムにアクセスできます。

背景情報

CloudMonitorは、HTTPまたはHTTPS POSTメソッドを使用して、指定されたURLにアラート通知を送信します。 次のCIDRブロックをファイアウォールのホワイトリストに追加する必要があります。 47.74.206.0/26、47.74.206.64/26、47.74.206.128/26、47.74.206.192/26、および8.222.159.116。 アラート通知を受け取った後、アラート通知の内容に基づいて問題を解決できます。

手順

  1. プッシュチャンネルを作成します。

    このトピックでは、webhook URLをプッシュチャネルとして使用します。

    1. にログインします。CloudMonitorコンソール.

    2. 左側のナビゲーションウィンドウで、イベントセンター > イベントサブスクリプション.

    3. On theイベントサブスクリプションページをクリックし、プッシュチャンネルタブをクリックします。

    4. On theプッシュチャンネルタブをクリックします。プッシュチャネルの作成.

    5. プッシュチャネルの作成パネルで、チャネル名を入力し、ターゲットタイプWebhookに設定し、リクエストメソッドPOSTに設定し、データ形式JSONに設定し、AddressパラメーターをコールバックURLに設定します。 他のパラメータは空のままにします。

    6. [確認]をクリックします。

  2. サブスクリプションポリシーを作成します。

    このトピックでは、Elastic Compute Service (ECS) インスタンスに関連し、Instance:InstanceFailure.Reboot:Executingという名前のシステムイベントがサブスクライブされ、webhook URLにプッシュされます。

    1. [サブスクリプションポリシー] タブをクリックします。

    2. [サブスクリプションポリシー] タブで、[サブスクリプションポリシーの作成] をクリックします。

    3. On theサブスクリプションポリシーの作成ページでパラメーターを設定します。

      • 基本情報: サブスクリプションポリシーの名前を入力します。

      • アラームサブスクリプション: サブスクリプションタイプパラメーターをシステムイベントに設定します。 [サブスクリプションスコープ] セクションで、[プロダクト] パラメーターを [Elastic Compute Service (ECS)] に、[イベント名] パラメーターを [インスタンス: インスタンス失敗] に設定します。再起動: 実行 他のパラメータは空のままにします。 Instance:InstanceFailure.Reboot:Executingイベントは、現在のAlibaba Cloudアカウント内のすべてのECSインスタンスのシステムイベントがインスタンス障害により再起動されたことを示します。

        説明

        ECSインスタンスでサポートされているシステムイベントの詳細については、「Elastic Compute Service (ECS) 」「 」をご参照ください。

      • 合成ノイズリダクション: デフォルト設定を使用します。

      • 通知: [通知設定] パラメーターは空のままにします。 [カスタム通知方法] パラメーターのデフォルト設定を使用します。

        説明

        [通知設定] パラメーターにアラート送信先グループが設定されていないため、アラート送信先はアラート通知を受信しません。

      • プッシュと統合: 手順1で作成したプッシュチャネルを選択します。

    4. [送信] をクリックします。

  3. デバッグイベントのサブスクリプション。

    1. [サブスクリプションポリシー] タブで、[イベントサブスクリプションのデバッグ] をクリックします。

    2. [Create event debugging] パネルで、[Products] パラメーターを [Elastic Compute Service (ECS)] に設定し、[Name] パラメーターを [Instance:InstanceFailure.Reboot:Executing] に設定します。

      CloudMonitorは、デバッグコンテンツをJSON形式で自動的に生成します。

    3. [OK] をクリックします。

      操作成功のメッセージが返されます。 CloudMonitorは、指定されたwebhook URLにテストアラート通知を自動的に送信します。

結果

システムイベントがアラートをトリガーすると、CloudMonitorはアラート情報を指定されたwebhook URLに送信します。 webhook URLでサポートされているリクエストメソッドには、POSTとGETがあります。 例:

  • POST JSON

    パラメーター名: body

    サンプルコード:

    {
      "userInfo": {
        "aliyunId": "test" 、
        "userIdSec": "te *** st" 、
        "aliyunIdSec": "test *** test" 、
        "nickName": "test" 、
        "nickNameSec": "te *** st" 、
        "userName": "test" 、
        "userId": "test" 、
        "userNameSec": "te *** st"
      },
      "subscription": {
        "subscriptionUuid": "testid" 、
        "conditions": [
          {
            "field": "source" 、
            "op": "EQ" 、
            "value": "SYS_EVENT"
          },
          {
            "field": "product" 、
            "op": "IN" 、
            "value": "ECS、Redis、RDS、Config、タグ"
          }
        ],
        "relation": "AND"
      },
      "batchId": "testbatchid" 、
      "alert": {
        "alertStatus": "TRIGGERED" 、
        "groupId": "" 、
        "source": "SYS_EVENT" 、
        "eventContentMap": {
          "extensions": {
            "agentVersion": "test-version" 、
            "region": "cn-hangzhou"、
            "azone": "cn-hangzhou-i" 、
            "uptime": 23000
          },
          "vmName": "i-testhost" 、
          "impact": "アラート" 、
          "opsCode": "InstanceStatusChange" 、
          "bizEventId": "test-event-id"
        },
        "dedupId": "test-id" 、
        "eventName": "CloudAssistant:FirstHeartbeat" 、
        "arn": "acs:ecs:cn-hangzhou:testuser:instance/i-testhost" 、
        "timestamp": 1704780333000、
        "traceId": "testid" 、
        "severity": "INFO" 、
        "product": "ECS",
        "eventRawContent": "{}" 、
        "eventType": "通知" 、
        "userId": "test" 、
        "meta": {
          "sysEventMeta": {
            "regionNameEn": "cn-hangzhou" 、
            "resourceId": "acs:ecs:cn-hangzhou:test:instance/i-testhost" 、
            "product": "ECS",
            "eventNameEn": "CloudAssistant:FirstHeartbeat" 、
            "instanceName": "i-testhost" 、
            "level": "INFO",
            "resource": "" 、
            "regionNameZh": "中国 (杭州)" 、
            "groupId": "" 、
            "serviceTypeEn": "ECS" 、
            "eventType": "通知" 、
            "serviceTypeZh": "Elastic Compute Service (ECS)" 、
            "regionId": "cn-hangzhou",
            "eventTime": "20240109T140533.642 + 0800" 、
            "name": "CloudAssistant:FirstHeartbeat" 、
            "id": "testid" 、
            "status": "Normal",
            "eventNameZh": "CloudAssistant:FirstHeartbeat"
          }
        }
      },
      "severity": "INFO" 、
      "strategyName": "eventwebhook" 、
      "userId": "test" 、
      "time": 1704780333000
    } 
  • GET JSON

    パラメーター名: data

    サンプルコード:

    {
      "userInfo": {
        "aliyunId": "test" 、
        "userIdSec": "te *** st" 、
        "aliyunIdSec": "test *** test" 、
        "nickName": "test" 、
        "nickNameSec": "te *** st" 、
        "userName": "test" 、
        "userId": "test" 、
        "userNameSec": "te *** st"
      },
      "subscription": {
        "subscriptionUuid": "testid" 、
        "conditions": [
          {
            "field": "source" 、
            "op": "EQ" 、
            "value": "SYS_EVENT"
          },
          {
            "field": "product" 、
            "op": "IN" 、
            "value": "ECS、Redis、RDS、Config、タグ"
          }
        ],
        "relation": "AND"
      },
      "batchId": "testbatchid" 、
      "alert": {
        "alertStatus": "TRIGGERED" 、
        "groupId": "" 、
        "source": "SYS_EVENT" 、
        "eventContentMap": {
          "extensions": {
            "agentVersion": "test-version" 、
            "region": "cn-hangzhou"、
            "azone": "cn-hangzhou-i" 、
            "uptime": 23000
          },
          "vmName": "i-testhost" 、
          "impact": "アラート" 、
          "opsCode": "InstanceStatusChange" 、
          "bizEventId": "test-event-id"
        },
        "dedupId": "test-id" 、
        "eventName": "CloudAssistant:FirstHeartbeat" 、
        "arn": "acs:ecs:cn-hangzhou:testuser:instance/i-testhost" 、
        "timestamp": 1704780333000、
        "traceId": "testid" 、
        "severity": "INFO" 、
        "product": "ECS",
        "eventRawContent": "{}" 、
        "eventType": "通知" 、
        "userId": "test" 、
        "meta": {
          "sysEventMeta": {
            "regionNameEn": "cn-hangzhou" 、
            "resourceId": "acs:ecs:cn-hangzhou:test:instance/i-testhost" 、
            "product": "ECS",
            "eventNameEn": "CloudAssistant:FirstHeartbeat" 、
            "instanceName": "i-testhost" 、
            "level": "INFO",
            "resource": "" 、
            "regionNameZh": "中国 (杭州)" 、
            "groupId": "" 、
            "serviceTypeEn": "ECS" 、
            "eventType": "通知" 、
            "serviceTypeZh": "Elastic Compute Service (ECS)" 、
            "regionId": "cn-hangzhou",
            "eventTime": "20240109T140533.642 + 0800" 、
            "name": "CloudAssistant:FirstHeartbeat" 、
            "id": "testid" 、
            "status": "Normal",
            "eventNameZh": "CloudAssistant:FirstHeartbeat"
          }
        }
      },
      "severity": "INFO" 、
      "strategyName": "eventwebhook" 、
      "userId": "test" 、
      "time": 1704780333000
    } 
  • ポストフォームとGETフォーム

    パラメーター

    説明

    userInfo

    {
        "aliyunId": "test" 、
        "userIdSec": "te *** st" 、
        "aliyunIdSec": "test *** test" 、
        "nickName": "test" 、
        "nickNameSec": "te *** st" 、
        "userName": "test" 、
        "userId": "test" 、
        "userNameSec": "te *** st"
     }

    サブスクリプション

    {
        "subscriptionUuid": "testid" 、
        "conditions": [
          {
            "field": "source" 、
            "op": "EQ" 、
            "value": "SYS_EVENT"
          },
          {
            "field": "product" 、
            "op": "IN" 、
            "value": "ECS、Redis、RDS、Config、タグ"
          }
        ],
        "relation": "AND"
      }

    アラート

     {
        "alertStatus": "TRIGGERED" 、
        "groupId": "" 、
        "source": "SYS_EVENT" 、
        "eventContentMap": {
          "extensions": {
            "agentVersion": "test-version" 、
            "region": "cn-hangzhou"、
            "azone": "cn-hangzhou-i" 、
            "uptime": 23000
          },
          "vmName": "i-testhost" 、
          "impact": "アラート" 、
          "opsCode": "InstanceStatusChange" 、
          "bizEventId": "test-event-id"
        },
        "dedupId": "test-id" 、
        "eventName": "CloudAssistant:FirstHeartbeat" 、
        "arn": "acs:ecs:cn-hangzhou:testuser:instance/i-testhost" 、
        "timestamp": 1704780333000、
        "traceId": "testid" 、
        "severity": "INFO" 、
        "product": "ECS",
        "eventRawContent": "{}" 、
        "eventType": "通知" 、
        "userId": "test" 、
        "meta": {
          "sysEventMeta": {
            "regionNameEn": "cn-hangzhou" 、
            "resourceId": "acs:ecs:cn-hangzhou:test:instance/i-testhost" 、
            "product": "ECS",
            "eventNameEn": "CloudAssistant:FirstHeartbeat" 、
            "instanceName": "i-testhost" 、
            "level": "INFO",
            "resource": "" 、
            "regionNameZh": "中国 (杭州)" 、
            "groupId": "" 、
            "serviceTypeEn": "ECS" 、
            "eventType": "通知" 、
            "serviceTypeZh": "Elastic Compute Service (ECS)" 、
            "regionId": "cn-hangzhou",
            "eventTime": "20240109T140533.642 + 0800" 、
            "name": "CloudAssistant:FirstHeartbeat" 、
            "id": "testid" 、
            "status": "Normal",
            "eventNameZh": "CloudAssistant:FirstHeartbeat"
          }
        }
      }

    severity

    INFO

    strategyName

    eventwebhook

    userId

    test

    time

    1704780333000

参考資料