API7 企业版:告警通知与 IM 集成指南

更新时间 4/24/2024

介绍

在当今企业的信息化环境中,监控告警的功能扮演着至关重要的角色,它不仅可以帮助企业及时发现系统异常,还能有效减少因故障带来的业务损失。API7 企业版网关提供了多种告警规则,支持用户设置灵活的告警策略,并通过 Webhook 模板通知的方式,将告警信息发送到我们常用的即时通信(IM)系统中。这样可以帮助我们及时有效地监控系统运行的状态,当业务服务异常时可以及时的安排人员响应保障业务的连续性和稳定性。

下面我们将详细介绍如何使用 API7 企业版设置告警规则,并将告警信息通过 Webhook 的方式发送到现有的 IM 系统中,从而帮助您轻松掌握这一场景的配置方法。

告警规则与告警通知

1.告警策略

API7 企业版目前支持多种告警策略,用户可以根据业务需求灵活进行设置,常用的告警策略主要有:

  • 证书将要过期时触发告警;
  • 网关实例离线时触发告警;
  • 根据状态码 4xx 和 5xx 的数量触发告警;
  • 根据状态码 4xx 和 5xx 的比例触发告警;

在实际运用的过程中,可以设置多种策略相组合来满足各种告警的需求,确保自动触发告警通知相关人员处理,提高故障修复的响应速度和效率。

2. 告警级别的定义与管理

告警级别是对不同告警情况的分类和标识,以便用户能够更清晰地识别告警的重要程度。常见的告警级别包括高、中、低三种级别。管理员通过设置不同的告警级别来确保重要的告警能够被及时关注和处理。API7 企业版网关支持用户轻松地进行告警级别的配置和管理,以满足不同场景下的监控需求。

3. 告警通知的机制

我们可以在 API7 企业版创建 Webhook 模板,当系统监测到异常情况并触发告警时,API7 企业版会自动调用预先配置的 Webhook 地址,将告警信息以 HTTP POST 请求的形式发送到指定的目标地址。Webhook 是一种常用的实现应用程序之间通信的技术,它允许用户在特定事件发生时,自动将数据发送到指定的 URL。

像常见的 IM 系统 Slack、Microsoft Teams、飞书、钉钉、企业微信等等,都提供了 Webhook 机器人来发送和接受消息。下面我们以飞书为例子,详细介绍如何使用 API7 企业版将告警通知与飞书集成。

与 IM 系统 Webhook 机器人集成

Webhook 机器人是 IM 系统中的一种特殊账号,它们被用来自动发送消息、通知事件或执行特定操作。通过配置 API7 企业版的 Webhook 模板通知对接到 IM 系统的 Webhook 机器人地址,就可以实现告警信息的自动推送,无需人工干预,极大地提高了告警通知的实时性和准确性。

配置飞书的 Webhook 机器人

  1. 首先,我们需要在飞书平台上创建并配置 Webhook 机器人。在对应的群组中,找到对应的添加群机器人,接着我们可以看到 Custom Bot 的选项。

Add custom bot on Lark

  1. 为机器人添加头像与相关描述后,点击下一步,可以看到 Webhook 地址,这个地址就是我们用来接收告警信息的地址。

Copy Webhook address

  1. 根据需要,你可以为你的机器人设置一些安全策略规则,像关键词,IP 白名单等等。

配置 API7 企业版告警规则

  1. 在 API7 企业版中添加一个告警策略,并添加对应的触发条件。

Add custom trigger conditions

  1. 配置 Webhook 通知模板。
1{ "msg_type": "text", "content":  { "text": "API7 EE Alarm: 4xx error" } }

Update Webhook template

  1. 为了便于之后的测试,我们将告警的检查间隔改为 1 分钟。

Adjust check interval

  1. 启用告警策略,并启用对应的 Webhook 通知。

Enable alert policy and notification

  1. 发送一条 401 的请求来触发告警。
1curl -i http://127.0.0.1:9080/get
2
3HTTP/1.1 401 Unauthorized
4...
5{"message":"Missing API key found in request"}
  1. 接着你可以在飞书的群组中看到 Webhook 机器人发送的对应的告警信息。

高级用法

API7 企业版支持通过 Webhook 传递告警上下文变量,常用的变量有:

  • Title: {{ .Title }} 告警标题
  • Severity: {{.Severity}} 告警级别
  • Detail: {{.Detail}} 告警描述信息
  • AlertEvents: {{ .AlertEvents.XXX }} 根据设置的不同策略获取对应的告警事件。

总结

API7 企业版网关提供了诸多强大的功能,为企业监控和管理提供了便利和支持。通过使用 Webhook 的告警通知机制与 IM 系统集成,使得告警信息可以快速、准确地传达给相关人员,提高了故障响应速度和质量。为企业带来更高效、更可靠的监控与管理体验。

微信咨询

获取方案