versus-incident
AI SRE 智能体自动学习日志正常模式,零规则配置检测异常,多渠道告警+On-Call升级
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
AI SRE 智能体自动学习日志正常模式,零规则配置检测异常,多渠道告警+On-Call升级
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
图1:Versus Incident 项目 Logo
凌晨3点,你被手机震醒——Slack、PagerDuty、邮件同时涌来几十条告警。你睡眼惺忪地点开每一条,逐条排查,40分钟后才发现只是某台服务器的定时任务导致的噪音日志。这不是故事,这是每一位 SRE(Site Reliability Engineer)的日常。
Versus Incident 想要终结这种"告警疲劳"。它不是一个传统的告警聚合工具,而是一个自托管的 AI SRE 智能体:你只需要告诉它日志源在哪里,它会自动学习"正常长什么样",然后只在出现真正异常时——真正新的错误、意想不到的流量尖峰、规律被打破时——才发出事故单,其余噪音一律忽略。
传统的告警体系依赖工程师手动编写告警规则:error rate > 5%、latency p99 > 500ms、CPU > 80%。这些规则在系统初期运转良好,但随着系统规模扩大、业务逻辑复杂化,告警规则本身成为了新的负担:规则之间相互依赖、阈值需要持续调优、新服务上线时要重新配置、误报和漏报永远在博弈。
Versus Incident 的出现正是对这一痛点的直接回应。区别于 incident.io、Rootly 等 SaaS 平台,Versus 完全开源,企业可以完全自托管,数据不离开自己的基础设施。同时,它将 AI 能力下沉到了告警入口,让 LLM 在日志层面就开始发挥作用,而非只是在事故发生后的摘要阶段介入。
Versus Incident 采用典型的前后端分离 + 云原生架构:
图2:Versus Incident 品牌标识
| 层级 | 技术选型 | 说明 |
|---|---|---|
| 后端核心 | Go 1.25 + Fiber v2 | 高性能 HTTP 框架,非 Gin/标准库 |
| AI 引擎 | cloudwego/eino + OpenAI | AI SRE Agent 的推理核心 |
| 前端 | React 18 + TypeScript + Vite | 最新 React 生态 |
| UI 风格 | Tailwind CSS 3.4 + Lucide React | 简洁现代的图标和界面 |
| 状态管理 | TanStack Query v5 | 数据获取和缓存 |
| 数据存储 | PostgreSQL (pgx/v5) + Redis | 事故单存储 + Agent 状态缓存 |
| 日志源支持 | 文件/Elasticsearch/Loki/CloudWatch/Graylog/Splunk | 覆盖主流日志方案 |
| 通知渠道 | Slack/飞书/Telegram/Viber/Email/MS Teams | 几乎覆盖所有主流 IM |
值得特别关注的是 cloudwego/eino —— 这是字节跳动开源的 AI 应用框架,专门用于构建 LLM 应用。Versus 将其作为 AI Agent 的推理引擎,驱动日志异常检测和事故分析的整个 AI 链路。这在开源事故管理工具中是相对少见的选型,主流竞品(如 Grafana/onCall)更倾向于直接调用 OpenAI API。
Versus 的 AI SRE Agent 支持三种工作模式,覆盖从学习到上岗的全生命周期:
AI Agent 开始观察日志流,学习"正常"的模样。它会记录各种日志事件的频率、错误类型、时间分布,建立基线模型。这个阶段不产生任何告警,纯粹是数据积累。
图3:Training Mode 界面 — AI 正在学习日志正常模式
AI Agent 基于训练阶段学到的基线,开始主动检测异常。任何与基线显著偏离的事件都会被标记:当某个错误类型首次出现、当流量突然出现尖峰、当某个服务的日志量骤降——这些都会被 AI 识别并自动生成事故单。
Detect Mode 是 Versus 的核心差异化能力:与传统的阈值告警不同,AI Agent 能感知上下文、识别未知异常、发现人类工程师可能遗漏的模式。
在影子模式下,AI Agent 继续检测和标记异常,但不会真正发出告警通知。这相当于一个"并行观察"阶段:团队可以在不影响现有告警体系的情况下,验证 AI 检测的准确性,逐步建立对 AI 的信任。
一旦 AI Agent 创建了事故单,Versus 提供了完整的通知和升级路径:
agent_lark.tmpl),对中国企业用户非常友好。
图4:Slack 中的事故告警卡片部署 Versus 非常简单。项目提供了完整的多阶段构建 Dockerfile:
npm run build)CGO_ENABLED=0)docker-compose 一行命令即可启动完整环境,Helm Chart 支持生产级 Kubernetes 部署,Chart 依赖 Redis(Bitnami)。唯一需要额外配置的是 PostgreSQL 数据库连接。
硬件要求极低:2GB RAM、500MB 磁盘、无需 GPU。官方建议配合外部 PostgreSQL 和 Redis 使用(如已有云厂商 RDS,直接配置连接即可)。
需要注意的局限:
最适合的场景:
Versus Incident 代表了一个值得关注的方向:用 LLM 重新定义告警入口。传统告警的核心矛盾是"规则永远滞后于业务变化",而 AI Agent 的思路是"让系统自己学会什么是正常"。这种范式转移在 AI Ops 领域已有探索,但 Versus 将其落地为完整的开源产品。
对比来看,PagerDuty 作为行业标杆已有 700+ 集成和成熟的 SaaS 生态,但其 AI 能力(2024年才推出)仍依赖与 OpenAI 的深度集成且数据需上云。incident.io 则在 AI-native 路线上走得最远,但其全 SaaS 模式不适合对数据合规有要求的企业。Versus 的定位恰好填补了两者之间的空白:开源 + AI-native + 可自托管。
572 颗星、92 个 Fork、持续更新的 CHANGELOG 和活跃的 GitHub Actions CI/CD,显示出这个项目正处于健康的活跃状态。随着 AI Agent 在运维领域的逐步落地,Versus 的技术路线——自托管 AI SRE 智能体——有潜力成为企业构建内部 AI Ops 平台的基础组件。
一句话评价:如果你正在寻找一个不需要月费、数据不出域、同时具备 AI 检测能力的事故管理工具,Versus Incident 是目前开源世界里最接近这个目标的选择。