日志服务提供动态接收人功能,您可以通过Webhook服务设置告警通知的动态接收人。
使用场景
一般情况下,您在日志服务告警中创建用户或用户组后,可以在行动策略中选择对应的用户或用户组作为告警通知的接收人,但是此方式并不能满足特殊场景。例如:
- 对接第三方的用户管理系统:某些企业拥有自建的用户管理系统,确保用户管理系统与日志服务告警用户实时同步存在较大困难。 并且企业拥有自己的组织架构,日志服务告警用户、用户组模型并不能完全适用。
- 通知给动态联系人:当您的系统中存在很多服务,且每个服务的告警需要通知给不同的接收人时,如果使用行动策略的动态分派机制,需要配置很多分支,也会增加维护成本。
工作原理
针对上述特殊场景,您可以使用动态接收人完成告警通知的接收人设置。通过动态接收人方式,您只需提供一个Webhook服务,日志服务告警发送时,会调用该Webhook服务,然后由该服务返回需要通知的用户信息。您无需在日志服务告警中维护接收人。
- 动态接收人
- 静态接收人
配置说明
在创建行动策略时,设置接收人类型为动态接收人,然后配置如下参数。
参数 | 说明 |
---|---|
接收人类型 | 选择动态接收人 。 |
接收人回调地址 | 设置为Webhook服务地址。Webhook接口规范说明,请参见接口规范。相关限制说明如下:
|
请求头 | 在日志服务向接收人回调地址发送请求时,需要添加的请求头。
默认添加Content-Type: application/json请求头,因此设置Content-Type为其它值时不会生效。 |
接口规范
Request信息
- 请求方法:POST
- 请求头:
- 您自定义设置的请求头。
- 默认请求头Content-Type: application/json。
- 请求数据格式示例
alerts为告警信息(数组类型),表示告警合并后的一个告警集合,最多包含10条告警。当您的Webhook服务接收到该数据后,会根据该数据判断告警通知接收人,并将接收人信息返回给日志服务。
{ "alerts": [{ "alert_id": "test-alert-1", "alert_instance_id": "jid-2ed042ba079041c-a578-441e-8d25-42e92aef506c", "alert_name": "Test Alert 1", "alert_time": 1646808904, "alert_type": "sls_alert", "aliuid": "123****3424", "annotations": { "desc": "Test alert triggered", "title": "Test Title" }, "fire_results": [{ "message": "error occurs" }], "fire_results_count": 1, "fire_time": 1646808904, "labels": { "app": "nginx" }, "next_eval_interval": 60, "project": "demo-alert", "region": "cn-hangzhou", "resolve_time": 0, "severity": 8, "status": "firing" }] }
Response信息
- 状态码:200
- 请求头:必须包含Content-Type: application/json。
- 返回数据格式示例:
{ "receivers": [{ "code": "86", "phone": "137****34", "email": "****@example.com" }] }
属性 数据类型 是否必须存在 说明 code string 否 如果返回结果中无此字段,则日志服务默认code为86。 phone string 否 对于短信、语音、钉钉和企业微信通知生效。如果为邮件通知,可忽略该字段。 email string 否 仅对邮件通知渠道生效。如果为其它渠道,可忽略该字段。
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/164653.html