本文介绍如何通过钉钉机器人自动向钉钉群发送事件通知,方便您在钉钉群中了解ECS实例相关的系统事件,及时处理ECS实例运行异常。

背景信息

ECS实例在运行过程中可能产生各种系统事件,例如生命周期状态变化类事件、运维类事件。有些系统事件反应了实例运行异常,这时运维人员需要及时感知到产生的系统事件。如果运维人员有专门的钉钉群进行日常沟通,可以通过钉钉机器人自动向钉钉群发送事件通知,在发现实例运行异常时更快速地开展运维工作。

本文操作需要使用到钉钉机器人和云监控报警服务,流程为:
  1. 为钉钉群创建钉钉机器人。
  2. 使用钉钉机器人的Webhook地址作为云监控报警联系人的联系方式。
  3. 云监控报警规则中,报警方式使用包含对应报警联系人的报警联系组。
设置完成后,自动通知流程为:
  1. 阿里云底层服务检测到某台ECS实例产生系统事件后,例如生命周期状态变化类事件、运维类事件,自动将该事件推送到云监控的事件中心。
  2. 云监控根据您配置的报警规则发送通知给报警联系组,该组中报警联系人的联系方式包括钉钉机器人的Webhook地址。
  3. 您创建的钉钉机器人会感知到事件,自动在群中发送提醒消息。

步骤1:创建钉钉机器人

创建钉钉机器人后会生成专属的Webhook地址,通过Webhook地址可以关联到其他服务接收通知,例如云监控。

  1. 打开需要接收事件通知的钉钉群。
  2. 进入机器人设置页面。
    1. 单击钉钉群右上角的群设置图标settings
    2. 群设置面板,单击智能群助手
    3. 智能群助手面板,单击添加机器人
    4. 群机器人对话框中的添加机器人区域,单击添加图标add
    5. 选择要添加的机器人区域,单击自定义
    6. 机器人详情对话框,单击添加
  3. 按页面提示完成机器人设置。
    您必须至少选择一种安全设置,本文中选择自定义关键词。选择该方式后,您可以输入一个或多个关键词。后续使用机器人时,事件通知的消息内容需要至少包含其中一个关键词,否则机器人不会向钉钉群发送该事件通知。

    例如,云监控发送事件通知时,消息内容一般会包括云监控,因此本文中使用云监控作为关键词。

  4. 复制并保存Webhook地址。
    ding-webhook

步骤2:在报警规则中关联钉钉机器人

本步骤重点说明报警规则中关联钉钉机器人相关的操作,更详细的相关操作说明,请参见创建报警联系人或报警联系组创建事件报警规则

  1. 登录云监控控制台
  2. 创建报警联系人。
    1. 在左侧导航栏,选择报警服务 > 报警联系人
    2. 单击新建联系人
    3. 设置报警联系人面板,按页面提示完成联系人设置。
      为关联钉钉机器人,请在Webhook(http|https)或钉钉机器人区域,输入步骤1:创建钉钉机器人中保存的Webhook地址。
  3. 创建报警联系组。
    1. 单击报警联系组页签。
    2. 单击新建联系组
    3. 新建联系组面板,按页面提示完成联系组设置。
      为关联钉钉机器人,请向报警联系组添加刚创建的报警联系人。
  4. 创建报警规则。
    1. 在左侧导航栏,选择报警服务 > 报警规则
    2. 单击事件报警页签。
    3. 单击创建事件报警
    4. 创建/修改事件报警面板,按页面提示完成事件报警规则设置。
      请注意以下设置:
      • 为方便演示,本文以云服务器ECS的实例状态改变通知事件为例,示例如下图所示。
        说明 实例状态改变通知事件的事件等级为信息(Info),这类事件的推送频率可能较高,导致您被大量的事件通知打扰。实际应用时,请根据业务需要自行选择您关注的事件。
        event-name
      • 通知方式中必须包括钉钉机器人,示例如下图所示。alert-type

钉钉群事件通知效果示例

设置完成后,您可以更改实例的状态来测试实例状态改变通知的效果,例如停止实例后,钉钉群中收到的事件通知示例如下图所示。ding-notice