实用干货丨Eolink Apikit 配置和告警规则的各种用法

简介: API在运行过程中可能会遇到各种异常情况,如响应时间过长、调用频率过高、请求参数错误等,这些异常会对系统的稳定性和性能产生严重影响。因此,对API进行异常监控和告警是非常必要的。本文将介绍 Eolink Apikit 中使用的告警规则,帮助开发者和运维人员更好地监控和管理 API。

API在运行过程中可能会遇到各种异常情况,如响应时间过长、调用频率过高、请求参数错误等,这些异常会对系统的稳定性和性能产生严重影响。因此,对API进行异常监控和告警是非常必要的。本文将介绍 Eolink Apikit 中使用的告警规则,帮助开发者和运维人员更好地监控和管理 API。


全局告警设置

邮件告警

若需要对所有监控项目设置全局的告警通知,可以在 API监控的项目列表页面,选择 异常告警页面\

1.png

在这里设置的告警信息,对所有项目有效。

在告警邮箱内设置相应人员的邮箱:

2.png

注意事项:

  • 发送告警邮件需要消耗告警资源包。API告警、API恢复正常,均会产生告警邮件。
  • 告警邮件以项目为单位,同一时刻内,监控到异常的API和场景,会发送一封邮件。
  • API和场景的新建、修改、开启监控操作会立即发送监控,结果异常会产生首次告警:
    • 监控频率<五分钟的,邮件间隔时间五分钟一次;
    • 监控频率≥五分钟的,按照监控频率发送.
  • 场景和API首次告警后,后续的所有告警会累计到5分钟再整合发送一封邮件。

告警邮件示例:

3.png

WebHook 告警

告警回调 API 内填入相应的 Webhook 地址:

4.png

注意事项:

  • 回调 API 最多支持设置三个,API 推送消息次数每日无上限。
  • 回调API能够自定义接收的告警信息的数据类型,类型包括:JSON、Query参数、FormData、XML。
  • API和场景的新建、修改、开启监控操作会立即发送监控,结果异常会产生首次告警:
    • 监控频率<五分钟的,邮件间隔时间五分钟一次;
    • 监控频率≥五分钟的,按照监控频率发送。

Webhook 的 JSON 返回示例:

1. API 监控

{
    "space_id": 708,                                //工作空间ID
    "space_name": "新版本测试",                        //工作空间名称
    "hook_request_time": "2020-09-22 14:47:35",        //请求时间:Y-m-d H:i:s
    "hook_request_timestamp": 1600757255,            //请求时间戳
    "hook_product": "api_monitor",                    //产品,API网络监控
    "hook_event": "alert",                            //操作,值可能性有:alert、recover;其中 alert:告警信息;recover:恢复正常信息
    "hook_operation": "api_alert",                    //事件,值可能性有:api_alert、api_recover;其中 api_alert:告警事件;api_recovet:恢复正常事件
    "content": {
        "project_id": 1399,                            //出现告警的项目ID
        "project_name": "监控测试",                    //出现告警的项目名称
        "apis": [                                    //告警的API列表
            {
                "api_id": 23308,                    //异常APIID
                "api_name": "百度",                    //异常API名称
                "api_url": "http://www.baidu.com/",        //异常API地址
                "exception_count": 1,                //异常次数
                "node_name": "上海",                  //出现异常的地区
                "report_desc": "请求超时",            //异常原因
                "status_code": 0,                    //http状态码
                "response_time": "74ms",            //响应时间
                "time": "2020-09-22 14:47:01"        //异常时间
            }
        ],
        "other_msg": [
            "Eolinker"            //微信UserId
        ]
    }
}

2. 流程监控

{
    "space_id": 708,                //工作空间ID
    "space_name": "新版本测试",        //工作空间名称
    "hook_request_time": "2020-09-23 16:54:55",            //请求时间:Y-m-d H:i:s
    "hook_request_timestamp": 1600851295,                //请求时间戳
    "hook_product": "api_monitor",                    //产品,API网络监控
    "hook_event": "alert",                //操作,值可能性有:alert、recover;其中 alert:告警信息;recover:恢复正常信息
    "hook_operation": "scene_alert",        //事件,值可能性有:scene_alert、scene_recover;其中 scene_alert:告警事件;scene_recovet:恢复正常事件
    "content": {
       "project_id": 1399,                            //出现告警的项目ID
        "project_name": "监控测试",                    //出现告警的项目名称
        "scenes": [
            {
                "scene_id": 347,        //异常流程ID
                "scene_name": "测试流程",        //异常流程名称
                "exception_count": 11,        //异常次数
                "node_name": "中国-广东省-广州市",        //节点名称
                "time": "2020-09-23 16:44:52"    //异常时间
            }
        ],
        "other_msg": [
            "Eolinker"            //微信UserId
        ]
    }
}


项目告警设置

告警设置

重定向

可以设置是否跟随请求的重定向HTTP 状态码为301302

5.png

验证 SSL 证书

可以设置是否校验SSL证书

6.png

发送 Eolinker Token 头部

可以设置是否发送Eolinker Token头部,Eolinker Token用于标识请求发送自Eolinker平台

7.png

发送 no-chche 头部

可以设置是否发送no-cache头部,用于更新缓存数据

8.png

告警频率

当 API 持续异常时,可以设置 API 的告警频率,比如当设置告警频率为5分钟时,会在 API 出现告警时的第0分钟(立刻)、 第5分钟、 第10分钟…等时间点发送告警 信息,直到 API 状态恢复正常。

9.png

连续超时判断

为避免网络抖动的影响,您可以设置当同一个 API 连续超时多次时才产生一次告警,减少误报。

10.png

告警人员设置

当 API 产生告警时,可以直接通知到具体的项目人员,点击添加通知人员

11.png

选择相应的人员账号,即可通知该成员。

注意:成员需要先在个人设置处设置好邮箱账号

12.png


邮件告警

若成员没有在个人帐号内设置邮箱,或需要通知到项目外的人员时,可以直接在额外告警邮箱处设置告警邮箱:

13.png

系统会将异常API通过邮件的方式通知到相应的运维人员。

告警邮件示例:

14.png

WebHook 告警

在告警回调 API 内填入相应的 Webhook 地址:

15.png

注意事项:

  • 回调 API 最多支持设置三个,API 推送消息次数每日无上限。
  • 回调API能够自定义接收的告警信息的数据类型,类型包括:JSON、Query参数、FormData、XML。
  • API和场景的新建、修改、开启监控操作会立即发送监控,结果异常会产生首次告警:
    • 监控频率<五分钟的,邮件间隔时间五分钟一次;
    • 监控频率≥五分钟的,按照监控频率发送。

Webhook 的 JSON 返回示例:

1. API 监控

{
    "space_id": 708,                                //工作空间ID
    "space_name": "新版本测试",                        //工作空间名称
    "hook_request_time": "2020-09-22 14:47:35",        //请求时间:Y-m-d H:i:s
    "hook_request_timestamp": 1600757255,            //请求时间戳
    "hook_product": "api_monitor",                    //产品,API网络监控
    "hook_event": "alert",                            //操作,值可能性有:alert、recover;其中 alert:告警信息;recover:恢复正常信息
    "hook_operation": "api_alert",                    //事件,值可能性有:api_alert、api_recover;其中 api_alert:告警事件;api_recovet:恢复正常事件
    "content": {
        "project_id": 1399,                            //出现告警的项目ID
        "project_name": "监控测试",                    //出现告警的项目名称
        "apis": [                                    //告警的API列表
            {
                "api_id": 23308,                    //异常APIID
                "api_name": "百度",                    //异常API名称
                "api_url": "http://www.baidu.com/",        //异常API地址
                "exception_count": 1,                //异常次数
                "node_name": "上海",                  //出现异常的地区
                "report_desc": "请求超时",            //异常原因
                "status_code": 0,                    //http状态码
                "response_time": "74ms",            //响应时间
                "time": "2020-09-22 14:47:01"        //异常时间
            }
        ],
        "other_msg": [
            "Eolinker"            //微信UserId
        ]
    }
}

2. 流程监控

{
    "space_id": 708,                //工作空间ID
    "space_name": "新版本测试",        //工作空间名称
    "hook_request_time": "2020-09-23 16:54:55",            //请求时间:Y-m-d H:i:s
    "hook_request_timestamp": 1600851295,                //请求时间戳
    "hook_product": "api_monitor",                    //产品,API网络监控
    "hook_event": "alert",                //操作,值可能性有:alert、recover;其中 alert:告警信息;recover:恢复正常信息
    "hook_operation": "scene_alert",        //事件,值可能性有:scene_alert、scene_recover;其中 scene_alert:告警事件;scene_recovet:恢复正常事件
    "content": {
       "project_id": 1399,                            //出现告警的项目ID
        "project_name": "监控测试",                    //出现告警的项目名称
        "scenes": [
            {
                "scene_id": 347,        //异常流程ID
                "scene_name": "测试流程",        //异常流程名称
                "exception_count": 11,        //异常次数
                "node_name": "中国-广东省-广州市",        //节点名称
                "time": "2020-09-23 16:44:52"    //异常时间
            }
        ],
        "other_msg": [
            "Eolinker"            //微信UserId
        ]
    }
}


Eolink Apikit 支持自定义告警规则,支持聚合多次告警信息,通过 API、邮件、钉钉、微信等方式及时通知相关运维人员。

相关文章
|
7月前
|
数据采集 监控 搜索推荐
质量规则支持自定义属性,规则管理更便捷
随着企业数据治理开展到一定阶段,对质量监控规则的精细化管理诉求进一步提升,需要为质量规则配置更多属性信息以支持后续的统计的分析。Dataphin V4.0版本新增了自定义质量规则属性的能力,通过简单的配置即可实现灵活、高效的规则管理,满足多样化诉求。
347 0
|
Prometheus 监控 Cloud Native
夜莺自定义告警模板
夜莺自定义告警模板
|
4月前
|
DataWorks 安全 关系型数据库
DataWorks产品使用合集之如何配置基线告警触发规则
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
7月前
|
安全 数据安全/隐私保护
seliunx 基础规则介绍
seliunx 基础规则介绍
|
6月前
|
DataWorks 监控 API
DataWorks产品使用合集之在调用API创建质量监控规则中的校验器的ID可以在哪里找到
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
7月前
|
存储 Prometheus 监控
Alertmanager配置概述及告警规则
Alertmanager配置概述及告警规则
|
7月前
|
存储 数据采集 监控
【最佳实践】无数据告警配置
背景在对SLS的Logstore和Metricstore进行监控的过程中,有时候会出现一些无数据的情况,例如数据采集阶段出现故障Logtail采集异常、数据导入任务异常或者SDK写入数据出错等情况都有可能导致日志库中没有数据。业务系统出现问题例如用户的业务日志中有某个系统模块的日志,在一段时间内,由...
163 0
【最佳实践】无数据告警配置
|
移动开发 JavaScript 前端开发
网站流量日志埋点收集 --埋点代码编写--匿名函数自调用创建标签引入|学习笔记
快速学习网站流量日志埋点收集--埋点代码编写--匿名函数自调用创建标签引入
153 0
网站流量日志埋点收集 --埋点代码编写--匿名函数自调用创建标签引入|学习笔记
|
XML 编译器 Go
第四十五章 开发自定义标签 - 规则和操作
第四十五章 开发自定义标签 - 规则和操作
89 0
|
监控 Java Linux
系统规则|学习笔记
快速学习系统规则