Apikit 自学日记:如何使用 API 异常监控-告警规则

在 APIkit 中也有 API 异常监控功能,针对异常可以发送告警。

本文将分两部分介绍告警设置:全局告警设置以及项目告警设置

邮件告警

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

 

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

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

 

注意事项:

  • 发送告警邮件需要消耗告警资源包。API告警、API恢复正常,均会产生告警邮件。

  • 告警邮件以项目为单位,同一时刻内,监控到异常的API和场景,会发送一封邮件。

  • API和场景的新建、修改、开启监控操作会立即发送监控,结果异常会产生首次告警:

  • (1)监控频率<五分钟的,邮件间隔时间五分钟一次;

  • (2)监控频率≥五分钟的,按照监控频率发送;

  • 场景和API首次告警后,后续的所有告警会累计到5分钟再整合发送一封邮件。

  • 告警邮件示例:

 

WebHook告警

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

 

注意事项:

  • 回调 API 最多支持设置三个,API 推送消息次数每日无上限。

  • 回调API能够自定义接收的告警信息的数据类型,类型包括:JSON、Query参数、FormData、XML。

  • API和场景的新建、修改、开启监控操作会立即发送监控,结果异常会产生首次告警:

(1)监控频率<五分钟的,邮件间隔时间五分钟一次;

(2)监控频率≥五分钟的,按照监控频率发送。

  • 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 状态码为301、302)

 

验证SSL证书

可以设置是否校验SSL证书

 

发送Eolinker Token头部

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

 

发送no-chche头部

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

 

告警频率

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

 

连续超时判断

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

 

告警人员设置

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

 

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

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

 

邮件告警

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

 

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

告警邮件示例:

 

WebHook告警

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

 

注意事项:

  • 回调 API 最多支持设置三个,API 推送消息次数每日无上限。

  • 回调API能够自定义接收的告警信息的数据类型,类型包括:JSON、Query参数、FormData、XML。

  • API和场景的新建、修改、开启监控操作会立即发送监控,结果异常会产生首次告警:

(1)监控频率<五分钟的,邮件间隔时间五分钟一次;

(2)监控频率≥五分钟的,按照监控频率发送。

  • 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
        ]
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《电子工程师自学速成:提高篇》是一本针对电子工程师的自学提高资料,旨在帮助电子工程师通过自学提升自己的技能水平和知识深度。 首先,这本书适合已经具备了一定电子工程基础知识的工程师。它通过系统地介绍了电子工程师日常工作所需的各种专业知识和技能,如嵌入式系统设计、电路设计与分析、电子元器件选型与应用等。 其次,这本书采用了实际案例和具体应用场景进行讲解,帮助工程师更好地理解理论知识的实际应用。通过理论与实践的紧密结合,读者可以更加深入地了解各种电子设备的工作原理和设计思路,进一步提高自己的实际应用能力。 此外,这本书还包含了大量的实践性项目和实验,可以帮助读者巩固所学知识,并通过实际操作提高自己的动手能力。这些项目和实验都经过精心设计,力求符合实际应用场景和需求,读者在完成项目和实验的过程中能够真实地感受到电子工程的魅力和挑战。 最后,这本书还提供了一些学习方法和技巧,帮助读者更加高效地进行自学。这些方法和技巧包括如何制定学习计划、如何高效学习文献和资料、如何解决学习中遇到的问题等。这些内容不仅有助于读者在学习电子工程知识的过程中取得更好的效果,还可以帮助他们养成良好的学习习惯和科学的思维方式。 综上所述,《电子工程师自学速成:提高篇》是一本全面、系统、实践性强的电子工程师自学资料。通过学习这本书,电子工程师可以提高自己的专业技能和知识水平,成为一个更加出色的工程师。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值