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

API 小达人
• 阅读 345

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


全局告警设置

邮件告警

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

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

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

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

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

注意事项:

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

告警邮件示例:

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

WebHook 告警

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

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

注意事项:

  • 回调 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

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

验证 SSL 证书

可以设置是否校验SSL证书

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

发送 Eolinker Token 头部

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

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

发送 no-chche 头部

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

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

告警频率

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

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

连续超时判断

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

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

告警人员设置

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

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

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

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

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


邮件告警

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

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

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

告警邮件示例:

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

WebHook 告警

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

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

注意事项:

  • 回调 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、邮件、钉钉、微信等方式及时通知相关运维人员。

点赞
收藏
评论区
推荐文章
好买-葡萄 好买-葡萄
3年前
窗体底端 有了这个告警系统,DBA提前预警不是难题
好买网www.goodmai.comIT技术交易平台摘要:告警功能是各大云平台必不可少的模块,个性化的告警配置,为帮助用户和运维人员及时发现问题发挥着重要作用。本文分享自华为云社区《GaussDB(DWS)数据库智能监控系统告警框架上线啦!》,作者:codefulture。本文将从一下几个方面介绍DMS告警框架:数据库智能监控系统告警
Stella981 Stella981
3年前
CODING DevOps 系列第六课:IT 运维之智能化告警实践
IT运维告警现状目前IT运维领域保证服务运行正常的主要方法是对相关运维指标进行实时监控,并根据经验设定一些规则,通过将实时监控的数据与规则进行对比,当某个指标监控值不符合设定的规则时,则判定为异常的状况,这样的话就会发送对应的告警到告警平台。告警平台收到通知后,会分配给对应的运维人员进行处理,运维人员去根据告警信息来排查,最终定
Stella981 Stella981
3年前
DevOps运维系统:监控管理
ITIL4的监控管理在DevOps风行的当下,人们越来越关注自动化运维。其中,监控预告警、监控自愈越发流行起来。在《DevOps实践指南》和《持续交付发布可靠软件的系统方法》两本书中(DevOps的教科书级别),都有涉及讲解监控管理和实施。其实,监控早不是什么新概念,运维界无论在理论还是工具中,一直在不断探索。监控管理虽然在I
Stella981 Stella981
3年前
Prometheus监控告警浅析
前言最近有个新项目需要搞一套完整的监控告警系统,我们使用了开源监控告警系统Prometheus;其功能强大,可以很方便对其进行扩展,并且可以安装和使用简单;本文首先介绍Prometheus的整个监控流程;然后介绍如何收集监控数据,如何展示监控数据,如何触发告警;最后展示一个业务系统监控的demo。监控架构Prometheus的整个
云监控告警2.0:革新传统告警机制,引领智能化监控新时代
云监控告警机制是云监控体系的核心组成部分,它负责在云服务出现异常或故障时,及时发出告警通知,以便运维人员迅速采取措施解决问题。传统的云监控告警机制虽然能够在一定程度上实现告警功能,但在告警准确性、实时性、智能化等方面存在诸多不足。云监控告警2.0则通过引入先进的技术和算法,对传统告警机制进行了全面升级,大大提高了告警的效率和准确性。
京东云开发者 京东云开发者
6个月前
pfinder实现原理揭秘
1.引言在现代软件开发过程中,性能优化和故障排查是保证应用稳定运行的关键任务之一。Java作为一种广泛使用的编程语言,其生态中涌现出了许多优秀的监控和诊断工具,诸如:SkyWalking、Zipkin等,它们帮助开发者和运维人员深入了解应用的运行状态,快速
融云IM即时通讯 融云IM即时通讯
1个月前
融云IM干货丨 IM调频API接口后,如何监控服务性能?
要确保IM服务API接口调频后的性能监控,可以采取以下策略和步骤:使用专业的监控工具:利用如Postman、Datadog、AWSCloudWatch、NewRelic等工具监控API性能。这些工具可以帮助你监控API的响应时间、吞吐量、错误率等关键性能指
小万哥 小万哥
1年前
C++异常和错误处理机制:如何使您的程序更加稳定和可靠
在C编程中,异常处理和错误处理机制是非常重要的。它们可以帮助程序员有效地处理运行时错误和异常情况。本文将介绍C中的异常处理和错误处理机制。什么是异常处理?异常处理是指在程序执行过程中发生异常或错误时,程序能够捕获并处理这些异常或错误的机制。例如,当
API 小达人 API 小达人
1年前
Eolink Apikit 如何对所有 API 异常请求实时监控 ?
API监控适合业务在互联网上,并且用户来自多个不同的地区,且对API的要求较高的场合,用于解决以下的问题:1.发现由于网络中断或者是API响应异常等导致的服务不可用;2.及时对异常的API进行告警;3.记录监控的日志,方便排查。EolinkApikit除了提供API的管理和自动化测试等功能,还提供API监控服务,可以为API设置定时拨测,并且支持多节点监控,可以从多个不同的地区节点来模拟用户的请求进行监控。
API 小达人 API 小达人
1年前
开发常用的 3种 API 监控报告- Eolink Apikit
API监控报告是一种监测API异常的工具。在API管理中,查看API异常监控的监控报告,是EolinkApikit常用的功能。EolinkApikit的监控报告有3种:单接口监控报告、流程监控报告、项目监控报告