有奖捉虫:办公协同&微信生态&物联网文档专题 HOT


场景简介

开启腾讯云事件总线服务后,将为您自动在广州地域创建云服务默认事件集,所有已接入事件告警的产品将自动完成事件的投递,您可以通过配置事件规则、投递目标等方式,完成告警链路的配置。

告警配置步骤

1. 查看事件列表

登录 事件总线控制台,进入云服务默认事件集。



可以查看目前已经接入的所有云服务事件。


投递标准事件格式如下:
{
"specversion":"1.0",
"id":"13a3f42d-7258-4ada-da6d-023a333b4662",
"source":"${ProductName}.cloud.tencent",
"type":"cvm:ErrorEvent:ping_unreachable",
"subject":"${资源 ID}",
"time": 1615430559146,
"region":"ap-guangzhou",
"resource":[
"qcs::eb:ap-guangzhou:uid1250000000:eventbusid/eventruleid"
],
"datacontenttype":"application/json;charset=utf-8",
"tags":{
"key1":"value1",
"key2":"value2"
},
"status":"1",
"data":{
"appId":"1250000011",
"instanceId":"ins-sjdksjk",
"projectId":"11",
"dimensions":{
"ip":"127.0.0.1"
},
"additionalMsg":{
"IP":"something unnormal"
}
}
}
字段说明如下:
字段
描述
字符串类型
specversion
事件结构体版本(cloudevents 遵循版本,目前为1.0.2)。
String
id
PUT Event 返回的 ID 信息。
String
type
PUT Event 输入的事件类型。云服务告警事件标准格式为 ${ProductName}:ErrorEvent:${EventType},用 “:” 分割类型字段。
String
source
事件来源(云服务事件必传此参数,为 subject 的缩写 )。云服务默认为 xxx.cloud.tencent
String
subject
事件来源详情可自定义,云服务默认使用 QCS 描述,例如 qcs::dts:ap-guangzhou:appid/uin:xxx
String
time
发生事件的时间,0时区毫秒时间戳,例如1615430559146。
Timestamp
datacontenttype
数据类型声明。
String
region
地域信息。
String
status
告警事件状态,分为 “1(异常 error)/0(恢复 recovered)/- (无状态 stateless)”三类。
String
tags
资源标签。
JSON
data
PUT Event 输入的事件详情,各个业务方可以自定义。
JSON

2. 配置告警事件规则

进入事件规则页面,选择对应的事件集后,在事件集下创建事件规则,完成需要配置告警推送的事件筛选。



以 CVM 告警配置为例,您可以选择指定的事件告警类型,也可以选择全部告警事件。




告警规则示例

接收全部事件,规则配置如下,配置 source 字段为 cvm.cloud.tencent,即表示所有来自 cvm 的告警事件均可以通过规则匹配进行推送:
{
"source":"cvm.cloud.tencent"
}
接收指定事件,规则配置如下,表示所有来自 cvm 并且类型为 ping 不可达的事件才可以通过规则匹配进行推送,其它事件将被丢弃,无法触达用户。
{
"source":"cvm.cloud.tencent",
"type":"cvm:ErrorEvent:PingUnreachable"
}
接收指定实例,规则配置如下,表示所有来自 cvm 并且实例 id 为 ins-xxx 的事件才可以通过规则匹配进行推送,其它事件将被丢弃,无法触达用户(不同事件源投递的 subject 字段格式可能不同,您可以通过查看投递到 cls 的事件完整日志,确认对应产品该字段的具体内容)
{
"source":"cvm.cloud.tencent",
"subject":"ins-xxxxxx"
}
也可以使用数组模式匹配多个资源。
{
"source":"cvm.cloud.tencent",
"subject":["ins-xxxxxx","ins-xxxxxx"]
}
更多匹配方式,请参考 规则匹配文档

3. 配置推送目标

事件告警场景下,建议同时配置 CLS日志投递与消息推送两个投递目标。
CLS 日志投递
消息推送
对于云服务默认事件集,EB 提供了专用的 CLS 日志集,支持将您的告警事件投递至默认的事件总线日志集,方便您对已投递的告警事件随时进行追溯:


说明
EB 为专用日志集提供了每月1GB、30天存储的免费使用额度,保证您的基础告警事件可以免费查看和管理,超出额度部分,CLS 将按照统一标准进行计费,详情见 CLS 计费方式

通过配置消息推送,将您的告警事件推送至指定的消息接收渠道,完成用户及时触达。



4. 测试配置结果

配置完成后,回到事件集控制台,选择已绑定的事件集,单击发送事件,可以选择已绑定的事件规则模板,单击确定进行测试。
注意
测试模板里只展示data字段里的内容,其它字段已固定,无法自定义修改。



配置完成后,即可在腾讯云事件总线控制台,完成告警事件的查看与推送配置。

推送内容文案示例

邮件内容:
云服务产品${ProductName}告警通知
尊敬的腾讯云用户,您好!

您的腾讯云账号(账号 ID:${1},昵称:${2})云服务产品 ${ProductName} 事件告警已触发,请您及时关注并处理。

告警事件:${EventType}
告警产品:${ProductName}
告警资源:${Subject}
告警地域:${Region}
事件产生时间:${Time}
事件状态:${}(分为“error”、“recovered”、“stateless”三类)

查看更多详情,请登录腾讯云「事件总线」产品控制台查看与管理。
HTTP 回调内容示例:
{
"sessionId": "xxxxxxxxxxxxxxxx", //事件 ID
"alarmStatus": "1",//Event.Status
"alarmType": "event",//固定,事件告警
"alarmObjInfo": {
"region": "sh", //事件地域
"dimensions": { //资源补充描述信息,非固定,由每个产品本身决定,此处以 cvm 为例
"unInstanceId": "ins-xxxxx",
"objDetail": {
"deviceLanIp": "xxxx",
"deviceWanIp": ""
"uniqVpcId": "vpc-xxx"
},

"deviceName": "xxx"
}
},
"alarmPolicyInfo": { //告警策略相关,兼容告警管理现有回调内容
"policyName": "xxxx", //EB事件规则名称
"conditions": {
"productName": "cvm", //告警产品缩写
"eventName": "guest_reboot", //告警事件类型
"alarmNotifyType": "", //置空,兼容告警管理现有回调
"alarmNotifyPeriod": "" //置空,兼容告警管理现有回调
}
},
"additionalMsg": [{ //告警事件补充内容,由告警上报方决定,此处以 cvm 为例
"key": "alias",
"value": "xxxx"
}, {
"key": "deviceLanIp",
"value": "xxxx"
}, {
"key": "deviceWanIp",
"value": ""
}, {
"key": "uniqVpcId",
"value": ""
}],
"firstOccurTime": "2021-10-19 11:15:47", //告警时间
"durationTime": 0, //持续时间
"recoverTime": "0" // 恢复时间

}