有奖捉虫:云通信与企业服务文档专题,速来> HOT

操作场景

通过接口回调,您的企业微信群或自建系统可以直接收到告警通知。接口回调具备将告警信息通过 HTTP 的 POST 请求推送到可访问公网 URL 的功能,您可基于接口回调推送的告警信息做进一步的处理。如需通过企业微信群接收告警通知,请参见 配置企业微信群接收告警通知
说明
当前告警回调没有认证机制,不支持 HTTP 认证。
告警推送失败最多重试3次,每次推送请求的超时等待时间为5秒。
当用户创建的告警策略被触发或恢复时,均会通过接口回调推送告警消息。接口回调也支持重复告警。
回调 API 出方向 IP 为动态随机分配,无法将具体的 IP 信息提供给您,但 IP 端口固定为80端口,建议您根据80端口在安全组上配置加全放通策略。
告警回调暂不支持按通知时段推送告警通知,后续会支持,敬请期待。

操作步骤

创建接口回调

2. 单击新建通知模板,进入新建通知模板页。
3. 在新建通知模板页配置完基础信息后,在接口回调模块中填写公网可访问到的 URL 作为回调接口地址(例如域名或IP[:端口][/path]),将及时把告警信息推送到该地址。
4. 进入 告警策略列表,单击需要绑定告警回调的策略名称,进入管理告警策略页,并在告警策略页绑定通知模板。
5. 腾讯云可观测平台会将告警消息通过 HTTP 的 POST 请求推送您系统的 URL 地址,您可以参见 告警回调参数说明,对推送的告警信息做进一步的处理。




告警回调鉴权

接口回调支持基于 BasicAuth 的用户安全验证。如果您想将告警信息回调发送到需要用户验证的服务时,可以在接口回调 URL 中使用 HTTP 身份验证来实现。
例如将http://my.service.example.com 改成 http://{USERNAME}:{PASSWORD}@my.service.example.com




将告警消息投递到云函数(SCF)

您可以通过告警回调功能,将告警消息投递到腾讯云云函数(SCF),再通过云函数的 Serverless 无服务架构函数计算提供回调消息的处理及响应。如需了解更多使用场景可参见 云函数
填写格式:SCF:$region/$namespace/$functionName/$version 说明:
SCF:固定形式,表示云函数。
region:表示云函数所在地域,例如广州为:gz。
namespace:表示云函数命名空间。
functionName:表示云函数名称。
version:非必填,表示云函数版本。若不填写则默认为最新版本。
具体操作步骤:
您可以参见上述填写格式,在通知模板-告警回调填入云函数信息,例如 SCF:gz/default/example-alarm-callback/$LATEST




告警参数示例

当告警规则被触发时,腾讯云可观测平台会将告警消息发送到您系统的 URL 地址。接口回调通过 HTTP 的 POST 请求发送 JSON 格式的数据,您可以根据下列参数说明对告警信息做进一步的处理。

指标告警

{
"sessionId": "xxxxxxxx", //会话 ID
"alarmStatus": "1", // 1为告警,0为恢复
"alarmType": "metric", // 告警类型("metric": 指标告警,"event": 事件告警)
"alarmObjInfo": {
"region": "gz", // 无地域属性的产品不返回该字段
"namespace": "qce/cvm", // 产品的名字空间
"appId": "xxxxxxxx", //当前腾讯云账号下的账号 ID
"uin": "xxxxxxxx", //当前腾讯云账号下的账号 ID
"dimensions": { // dimensions字段里的内容不同产品有差异,请参见下文指标告警 dimensions 示例
"deviceName": "xxxxxxxx",
"objId": "xxxxxxxx",
"objName": "xxxxxxxx",
"unInstanceId": "xxxxxxxx"
}
},
"alarmPolicyInfo": {
"policyId": "xxxxxxxx", // 告警策略组ID
"policyType": "cvm_device", // 告警策略类型名,产品策略类型和维度信息文档中的策略类型英文
"policyName": "xxxxxxxx", // 告警策略组名称
"policyTypeCName": "云服务器-基础监控", // 告警策略类型展示名称
"policyTypeEname": "",
"conditions": {
"metricName": "qemu_vcpu_usage", // 指标名称
"metricShowName": "基础CPU利用率", // 指标展示名称(中文名)
"calcType": ">", // 比较方式(无阈值的指标不返回该字段)
"calcValue": "xxxxxxxx", // 告警阈值(无阈值的指标不返回该字段)
"currentValue": "xxxxxxxx", // 当前告警值(无阈值的指标不返回该字段)
"historyValue": "", //历史告警值(无阈值的指标不返回该字段)
"unit": "%", // 单位(无阈值的指标不返回该字段)
"calcUnit": "%", // 告警阈值单位(无阈值的指标不返回该字段)
"period": "60", // 统计粒度(单位:s;无阈值的指标不返回该字段)
"periodNum": "1", // 持续周期(无阈值的指标不返回该字段)
"alarmNotifyType": "continuousAlarm", // 是否支持重复告警("singleAlarm": 不重复告警,"exponentialAlarm": 指数周期告警,"continuousAlarm": 持续告警,无阈值的指标不返回该字段)
"alarmNotifyPeriod": 3600 // 重复告警的频率(单位: s;无阈值的指标不返回该字段)
},
"tag": [ //告警策略中选择告警对象时绑定的标签

],
"policyTags": [ //告警策略中策略所属标签
{
"key": "xxxxxxxx",
"value": "xxxxxxxx"
},
{
"key": "xxxxxxxx",
"value": "xxxxxxxx"
}
]
},
"firstOccurTime": "2024-03-07 18:12:00", // 第一次触发告警的时间
"durationTime": 0, // 告警持续时间(单位:s;未恢复时为第一次触发告警后截止到此次发送告警的时间)
"recoverTime": "0", // 告警恢复时间(单位:s;未恢复时为0;恢复将会显示具体时间,例如:2017-03-09 07:50:00)
"policyDetailURL": "xxxxxxxx" //策略详情页面地址
}
说明
大部分指标的 durationTime 和 alarmStatus 数据类型为 string,云服务器的网络类型告警指标的 namespace 为 “qce/lb”。
云产品告警回调示例和 Prometheus 监控服务、APM、RUM 回调示例请参见 告警回调示例
如需获取产品策略类型和命名空间,请参见 产品策略类型云产品指标

事件告警

{
"sessionId":"xxxxxxxxxxxx", //会话 ID
"alarmStatus":"0", // 1为告警,0为恢复
"alarmType":"event", // 告警类型("metric": 指标告警,"event": 事件告警)
"alarmObjInfo":{
"region":"sh", // 无地域属性的产品不返回该字段
"appId":"xxxxxxxxxxxx", //当前腾讯云账号下的账号 ID
"uin":"xxxxxxxxxxxx", //当前腾讯云账号下的账号 ID
"dimensions":{
"unInstanceId":"ins-o9p3rg3m" //告警实例id
}
},
"alarmPolicyInfo":{
"policyName":"CVM单机事件监控", // 告警策略组名称
"conditions":{
"productName":"cvm", // 告警策略类型展示名称
"productShowName":"云服务器", // 告警策略类型展示名称(中文)
"eventName":"cvm:ErrorEvent:GuestCoreError", // 事件告警名称
"eventShowName":"内核故障" // 事件告警名称(中文名)
}
},
"firstOccurTime":"2023-10-31 15:46:34", // 第一次触发告警的时间
"durationTime": 500, // 告警持续时间(单位:s;未恢复时为第一次触发告警后截止到此次发送告警的时间)
"recoverTime": "2023-10-31 15:50:00" // 告警恢复时间(单位:s;未恢复时为0;恢复将会显示具体时间,例如:2023-10-31 15:50:00)
}
说明:
如需了解云产品事件信息请参考 官网云服务事件