Keep 告警自动化完整指南:5 分钟跑起来,从接入告警到自动响应
【免费下载链接】keepThe open-source AIOps and alert management platform项目地址: https://gitcode.com/GitHub_Trending/kee/keep
凌晨三点,手机把你叫醒,同一条"Pod 重启"的告警已经响了几十次,列表一片红色。如果你也被这种告警刷屏折磨过,Keep 这个开源项目值得看一眼——它就是冲着告警管理和告警自动化来的:把各家监控工具的告警收拢到一个页面,先去重、关联,再用工作流自动处理,人只在需要拍板的时候才被叫醒。
Keep 是什么,一句话说清
一句话定位:开源的 AIOps 与告警管理平台。核心能力就三件事:
- 一个界面看所有监控工具来的告警,可按严重级别、状态、来源筛选
- 降噪三板斧:去重、AI 关联、正则提取加映射,还能配维护窗口压住计划内维护的噪音
- 工作流引擎:告警满足条件就自动执行动作——发通知、建工单、跑脚本都行
5 分钟上手:一条命令拉起整个平台
最短路径就是在仓库根目录用 docker compose 跑起来,默认配置不启用认证,第一次体验最省事:
git clone https://gitcode.com/GitHub_Trending/kee/keep.git && cd keep docker compose up -d启动后打开前端页面就是告警主界面(Feed),左侧能按 severity、状态、来源、负责人这些维度过滤,右上角还支持从 SQL 导入数据来发测试告警:
告警怎么进 Keep
Keep 里的核心概念叫 Provider(提供者):每接入一个第三方系统,就对应一个 provider,负责协议适配和告警格式转换。仓库里有一百多个,Prometheus、Datadog、CloudWatch、Grafana、PagerDuty 这些常用的都在,完整清单可以翻 keep/providers/ 目录。
接入有两条路:各监控系统通过 Webhook 把告警推到 Keep 的 API,或者由 Keep 主动去数据源拉取。批量推送、异步查询这些接口细节官方文档里有,这里只演示一下用 API 看告警列表:
curl -H "Authorization: Api-Key YOUR_API_KEY" \ http://localhost:8080/api/v1/alerts核心玩法
告警进来了,接下来才是真正解决问题的部分。
告警去重怎么配
同一条告警反复触发,列表很快就被刷爆。解法是给每个数据源配一条去重规则:指定几个字段做"指纹",新告警的指纹和已有告警一致时,就当同一条处理(只更新状态,不新增行)。比如 Datadog 的告警一般拿 monitor_id 做指纹。规则在界面上直接配:
工作流自动处理告警
工作流用 YAML 写:先定触发条件(告警命中、手动、定时),再列一串动作,每个动作调用一个 provider——发 Slack 消息、建 Jira 工单、跑 Bash 脚本……比如把 CloudWatch 的告警转到 Slack:
workflow: id: cloudwatch-to-slack name: Forward CloudWatch alerts to Slack triggers: - type: alert actions: - provider: type: slack with: message: "新告警:{{ alert.name }}"界面上能直接创建和上传工作流,也有一堆现成模板;仓库的 examples/workflows/ 目录里有一百多个可以直接抄的例子,覆盖各种常见场景:
AI 关联告警
跨多个来源的相关告警,靠人一条条对很费劲。AI 关联会用模型判断告警之间的相似度,把足够像的自动归到同一个事件里,阈值和训练参数都能在界面上调,执行日志里能看到每条告警拿到的关联分数和归属的事件:
提取、映射与拓扑
告警进来之前还能先加工:提取规则用正则从告警文本里把字段抠成结构化属性,映射规则把外部数据(比如服务拓扑)挂到告警上,让你知道这条告警属于哪个服务、影响谁。有了这些属性,后面工作流的过滤条件写起来准确得多。
老用户经验:几个容易踩的坑
都是趟过一遍才懂的:
- 先只接一个数据源,把"进来 → 去重 → 通知"这条路完整验证通,再接别的。否则出了问题你分不清是接入、去重还是通知的锅。
- 去重规则是最容易漏的一步。不配指纹的话,一条告警 firing/resolved 来回切一次,列表里就多一行,噪音直接翻倍。
- 工作流的过滤条件用的是 CEL 表达式,语法不熟就直接翻仓库里的示例文件,抄改比手快。
- 每个工作流都有手动触发(manual trigger),上线前先点一下手动跑一遍,别等真告警来了才发现字段名写错。
接下来往哪看
完整文档在 docs/ 目录,providers 的逐个配置说明都在里面,照着填就行。Keep 不打算替你重建监控系统,它干的是夹在监控工具和值班人之间的那层活——把"告警来了"变成"告警处理好了"。要是你的告警也在刷屏,克隆下来跑一把就知道它合不合适了。
【免费下载链接】keepThe open-source AIOps and alert management platform项目地址: https://gitcode.com/GitHub_Trending/kee/keep
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考