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

alert_rule

告警规则表

alert_rule 是夜莺平台告警规则的记录表,根据配置中的 PromQL 去查询时序数据库,通过多种条件过滤,最终条件符合后生成告警事件 alert_cur_evernt ,其中更详细的生成告警逻辑可以参考夜莺小课堂 - 夜莺告警流程讲解及常见问题排查思路

名称 描述 类型
id bigint(20) unsigned PRI
group_id 业务组表id bigint(20) MUL
cate 数据源类型(host,prometheus等) varchar(128)
datasource_ids 关联数据源id,json格式数组 varchar(255)
cluster 集群 varchar(128)
name 规则名称 varchar(255)
note 规则备注 varchar(1024)
prod 规则类型(host,metric) varchar(255)
algorithm 规则算法('' | holtwinters),''代表使用阈值判断 varchar(255)
algo_params 算法参数('null' | json格式) varchar(255)
delay 延时执行默认0秒 int(11)
severity 告警级别,1:Emergency 2:Warning 3:Notice,新版使用 rule_config 存放级别 tinyint(1)
disabled 是否启用,0是1否 tinyint(1)
prom_for_duration 持续时长,单位秒 int(11)
rule_config 规则配置,json格式 text
prom_ql promql语句,新版使用 rule_config 存放 promql text
prom_eval_interval 执行频率,单位秒 int(11)
enable_stime 生效每天开始时间 varchar(255)
enable_etime 生效每天结束时间 varchar(255)
enable_days_of_week 生效时间天(0-6),多个空格分隔 varchar(255)
enable_in_bg 是否仅本业务组有效0否1是 tinyint(1)
notify_recovered 是否发生恢复通知0否1是 tinyint(1)
notify_channels 通知媒介(sms voice email dingtalk wecom),多个空格分隔 varchar(255)
notify_groups 告警接收组,团队id,多个空格分隔 varchar(255)
notify_repeat_step 重复通知间隔,单位分钟 int(11)
notify_max_number 最大发送次数,0为不限制 int(11)
recover_duration 留观时长,单位秒 int(11)
callbacks 回调地址,多个空格分隔 varchar(255)
runbook_url 预案链接,弃用 varchar(255)
append_tags 附加标签,多个空格分隔 varchar(255)
annotations 附加信息,json格式 text
create_at 创建时间 bigint(20)
create_by 创建人名称 varchar(64)
update_at 更新时间 bigint(20) MUL
update_by 更新人名称 varchar(64)
开源版
Flashcat
Flashduty