夜莺-Nightingale
夜莺V7
项目介绍 功能概览
部署升级 部署升级
数据接入 数据接入
告警管理 告警管理
数据查看 数据查看
功能介绍 功能介绍
数据库表结构 数据库表结构
API FAQ
夜莺V6
项目介绍 架构介绍
快速开始 快速开始
黄埔营
安装部署 安装部署
升级
采集器 采集器
使用手册 使用手册
API API
数据库表结构 数据库表结构
FAQ FAQ
开源生态
Prometheus
版权声明
第1章:天降奇兵 第1章:天降奇兵
第2章:探索PromQL 第2章:探索PromQL
第3章:Prometheus告警处理 第3章:Prometheus告警处理
第4章:Exporter详解 第4章:Exporter详解
第5章:数据与可视化 第5章:数据与可视化
第6章:集群与高可用 第6章:集群与高可用
第7章:Prometheus服务发现 第7章:Prometheus服务发现
第8章:监控Kubernetes 第8章:监控Kubernetes
第9章:Prometheus Operator 第9章:Prometheus Operator
参考资料

通知规则配置指南

功能概述

夜莺监控采用告警规则与通知规则分离的架构设计:

  • 告警规则:负责检测指标异常并生成告警事件
  • 通知规则:负责定义告警事件的通知渠道、接收人及发送策略

该设计支持按告警级别配置差异化通知策略,例如:Critical 级别告警通过电话、短信、钉钉发送,Info 级别告警仅通过邮件发送。

架构优势

相较于早期版本在告警规则中直接配置通知方式,当前架构具备以下优势:

特性 说明
告警级别与通知媒介联动 支持在启用告警抑制的场景下,为不同级别的告警事件配置独立的通知媒介
灵活的媒介接入方式 提供通用 HTTP 和脚本发送方式,支持自定义 HTTP 参数、Header 及 Body
通知配置集中管理 告警规则与通知规则解耦,修改通知策略仅需调整通知规则,即可批量生效至关联的所有告警规则
消息模板自定义 支持为同一通知媒介配置多个消息模板,满足不同团队的个性化需求

工作流程

告警事件的发送流程如下图所示:

通知规则和告警规则的联动逻辑

流程说明

  1. 告警规则检测到异常指标后生成告警事件
  2. 告警事件根据关联的通知规则确定发送策略
  3. 通知规则按照配置的媒介和接收人发送告警通知

多个告警规则可关联同一通知规则,实现通知策略的统一管理。

通知规则配置

配置说明

通知规则支持为不同告警级别配置独立的通知媒介。以下为配置示例:

通知规则配置样例

配置项说明

  • 生效级别:指定该通知媒介适用的告警级别(Critical/Warning/Info)
  • 通知媒介:选择用于发送告警的渠道
  • 接收人/接收团队:指定告警通知的接收人或团队

内置通知媒介

系统预置以下通知媒介,可直接使用:

内置媒介列表

通知媒介变量配置

应用场景

当多个团队需要使用同一类型的通知媒介但配置不同参数时(例如:DBA 团队和大数据团队使用不同的企业微信机器人),可通过变量配置实现。

配置方法

以企业微信机器人为例,内置的企微通知媒介包含以下两个变量参数:

变量名 说明
Key 企业微信机器人的唯一标识
Bot Name 机器人名称(备注信息,便于识别)

在通知媒介的 HTTP 配置中引用变量(变量配置部分类似 function 的参数,下面部分类似 function 的实现,实现部分可以引用参数):

通知媒介变量定义

配置完成后,各团队在创建通知规则时选择企微媒介并填写各自的机器人 Key 即可。

用户联系方式关联

对于短信、电话等需要使用用户个人联系方式的场景,系统支持从用户 Profile 中自动获取联系信息。

配置步骤

  1. 在通知媒介的变量配置中,将联系方式设置为相应类型(如 Phone)

通知媒介管理用户 Profile

  1. 配置完成后,系统将自动实现以下功能:
    • 通知规则配置界面支持选择联系人或团队作为接收对象
    • HTTP 请求的 Body 或 Query String 中可使用 {{ $sendto }} 变量引用接收人的联系方式

说明{{ $sendto }} 为系统内置变量,用于动态获取通知接收人的联系信息。

媒介对接指南

IM 类媒介配置

请参考以下文档完成 IM 类通知媒介的对接:

通知媒介 配置文档
钉钉 对接钉钉告警
企业微信 对接企微告警
飞书 对接飞书告警
钉钉(含 @人功能) 对接钉钉告警-配置 @人
多媒介综合配置 对接钉钉、飞书、企微通知
阿里云短信 对接阿里云短信

提示:微信视频号「SRETALK」提供飞书告警对接的视频教程,可搜索查看。

邮件告警配置

邮件告警配置包含以下 4 个步骤:

步骤 1:配置 SMTP 发信服务器

  1. 进入 系统配置 > 通知媒介 菜单
  2. 选择内置的 Email 通知媒介,点击编辑
  3. 填写 SMTP 服务器配置信息:

邮件通知媒介配置

必填参数

参数 说明
服务器 邮件服务器主机名或 IP 地址
端口 邮件服务器端口号(通常为 25、465 或 587)
用户名 SMTP 服务器认证用户名
密码 SMTP 服务器认证密码或授权码
发件人 用于发送告警邮件的邮箱地址

步骤 2:配置用户收件邮箱

  1. 点击页面右上角用户头像
  2. 进入 个人信息 配置页面
  3. 在联系方式中填写收件邮箱地址

步骤 3:创建邮件通知规则

  1. 进入 通知规则 菜单
  2. 点击 新建通知规则(或编辑现有规则)
  3. 配置通知规则参数:

邮件通知规则配置

配置项说明

配置项 说明
生效级别 选择需要邮件通知的告警级别
通知媒介 选择 Email
接收对象 选择接收告警的用户或团队
  1. 点击 通知测试,选择一条历史告警事件进行发送测试
  2. 在告警规则中关联该通知规则

步骤 4:自定义邮件消息模板(可选)

  1. 进入 消息模板 菜单
  2. 选择 Email 消息模板进行编辑

模板变量说明

变量名 说明
content 邮件正文内容
subject 邮件主题

说明:消息模板使用 Go Template 语法,可根据业务需求自定义邮件内容格式。

快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云
OpenSource
开源版
Flashcat
Flashcat
Flashduty
Flashduty