このトピックでは、DingTalkチャットボットを使用してDingTalkグループにイベント通知を送信する方法について説明します。 イベント通知に基づいて、DingTalkグループからElastic Compute Service (ECS) インスタンスに関連するシステムイベントを取得し、ECSインスタンスの実行中に発生する例外を処理できます。
背景情報
ECSインスタンスの実行中に、インスタンスステータスの変更に関連するイベントやO&Mイベントなど、さまざまなシステムイベントが生成される場合があります。 詳細については、「概要」をご参照ください。 一部のシステムイベントは、ECSインスタンスの実行中に例外が発生することを示します。 O&M担当者は、そのようなシステムイベントをできるだけ早い機会に通知する必要があります。 O&M担当者が通信用のDingTalkグループを持っている場合、DingTalkチャットボットを使用してイベント通知をDingTalkグループに自動的に送信できます。 このようにして、O&M担当者はできるだけ早い機会に例外を処理できます。
次の手順では、DingTalkチャットボットとCloudMonitorが使用されます。
DingTalkグループのDingTalkチャットボットを作成します。
DingTalkチャットボットのwebhook URLをCloudMonitorアラート連絡先の連絡先情報として使用します。
CloudMonitorコンソールでサブスクリプションポリシーを設定するときに、対応するアラート連絡先を含むアラート連絡先グループを選択して、アラート通知を受信します。
上記の手動操作が完了すると、次の手順が自動的に実行されて通知が送信されます。
Alibaba Cloudの基盤となるサービスがECSインスタンスのシステムイベント (インスタンスステータスの変更に関連するイベントやO&Mイベントなど) を検出すると、サービスはイベントをCloudMonitorのイベントセンターにプッシュします。
CloudMonitorは、設定されたサブスクリプションポリシーに基づいてアラート連絡先グループに通知を送信します。 アラート連絡先グループ内のアラート連絡先の連絡先情報には、DingTalkチャットボットのwebhook URLが含まれます。
DingTalkチャットボットがイベントを検出すると、チャットボットはDingTalkグループに通知を送信します。
ステップ1: DingTalkチャットボットを作成する
DingTalkチャットボットが作成されると、webhook URLが生成されます。 webhook URLは、CloudMonitorなどの他のサービスに関連付けて通知を受信できます。
DingTalkチャットボットの作成方法については、「DingTalkチャットボットの作成」の手順1、3、4、5、および6を参照してください。
2023年9月1日00:00:00から、非エンタープライズDingTalkグループはカスタムチャットボットをサポートしなくなりました。 既存のカスタムチャットボットは影響を受けません。
チャットボットを作成するときは、キーワードを1つずつ追加します。 たとえば、CloudMonitorがイベント通知を送信すると、通知にはCloudMonitorが含まれます。 この例では、CloudMonitorをキーワードとして使用します。
ステップ2: DingTalkチャットボットをCloudMonitorサブスクリプションポリシーに関連付ける
このセクションでは、DingTalkチャットボットをCloudMonitorサブスクリプションポリシーに関連付ける方法について説明します。 詳細については、「アラート送信先またはアラート送信先グループの作成」および「イベント購読ポリシーの管理 (推奨) 」をご参照ください。
CloudMonitorコンソールにログインします。
アラート連絡先を作成します。
左側のナビゲーションウィンドウで、 を選択します。
[アラート連絡先の作成] をクリックします。
[アラート送信先の設定] パネルで、プロンプトに従ってアラート送信先を設定します。
DingTalkチャットボットを関連付けるには、DingTalk | Lark | WeCom | Slack webhook (http | https): フィールドにステップ1: DingTalkチャットボットの作成で保存したWebhook URLを入力します。
アラート連絡先グループを作成します。
[アラート送信先グループ] タブをクリックします。
[アラート連絡先グループの作成] をクリックします。
[アラート連絡先グループの作成] パネルで、プロンプトに従ってアラート連絡先グループを設定します。
DingTalkチャットボットを関連付けるには、作成したアラート連絡先をアラート連絡先グループに追加します。
サブスクリプションポリシーを作成します。
左側のナビゲーションウィンドウで、
。[システムイベント] ページで、[イベントサブスクリプション] タブをクリックします。
[サブスクリプションポリシーの作成] をクリックします。
[サブスクリプションポリシーの作成] ページで、プロンプトに従ってアラームサブスクリプションの設定を行います。
以下の点にご注意ください。
この例では、ECSインスタンスのステータスの変更に関連するイベントが使用されます。 次の図は、イベントのサブスクリプションポリシーを設定する方法を示しています。
説明ECSインスタンスのステータスの変更のイベントレベルはNotification (Info) です。 この種のイベントについては、多数の通知を高い頻度で送信することができる。 ビジネス要件に基づいて、通知を受信するイベントを選択します。
次の図に示すように、通知設定には、DingTalkチャットボットに関連付けられているアラート連絡先グループを含める必要があります。
DingTalkグループのイベント通知例
設定が完了したら、ECSインスタンスのステータスを変更し、DingTalkグループでイベント通知が受信されたかどうかを確認できます。 たとえば、次の図に示すように、ECSインスタンスを停止すると、イベント通知が受信されます。