RootSeeker:让“线上报错”变成“可执行的根因结论”

5 阅读4分钟

线上告警响了、日志刷屏了、堆栈看起来很熟,但真正耗时间的往往是下一步: 到底是哪段代码、哪条链路、什么条件触发、如何复现、怎么修 。 RootSeeker(root_seek)是一套面向内网部署的 AI 根因定位平台,把“日志 + 代码 + 检索 + 大模型推理”串成一条闭环,让排障从“经验驱动”升级为“证据驱动”。

项目地址:RootSeeker / root_seek

它解决什么问题?

  • 从一堆日志里快速收敛根因 :自动提取关键异常、堆栈、上下文,组织成可分析的任务。
  • 把日志直接对齐到代码证据 :同时使用精确代码检索与语义检索,找到最相关的代码片段与模块边界。
  • 输出工程师可执行的结论 :不是“可能是网络问题”这种泛泛而谈,而是面向修复的“原因假设 + 证据 + 修改建议”。 如果你的团队正在经历:告警多、排查慢、知识难沉淀、定位依赖“熟人”,RootSeeker 就是为这类场景而生。

核心亮点(为什么值得关注)

1) 双检索加持:既快又准

RootSeeker 把两类检索能力组合起来:

  • Zoekt 精确检索 :适合大规模代码库里的快速命中(堆栈、关键字、符号)。
  • Qdrant 向量检索 :适合“语义相关”场景(同类问题、相似实现、隐含关联模块)。 两者结合,既能“秒级命中”,也能“举一反三”找出真正相关的代码上下文。

2) 多渠道日志接入,面向真实生产环境

支持通用日志接入,也支持阿里云 SLS webhook 等方式,把线上错误自然接入分析链路,减少“复制粘贴堆栈”的手工成本。

3) 仓库同步与索引管理:把代码证据变成基础设施

提供统一的 GitSource 抽象能力,对接常见代码平台,支持仓库发现、分支选择、同步、索引与状态查询。RootSeeker 不只是“问答工具”,而是可以持续运行的工程化服务。

4) 管理端配套:配置、凭证、AI 能力集中治理

项目内置管理端(基于 RuoYi 二次开发),用于维护仓库/凭证与 AI 配置,并与分析服务通过 HTTP 协同,适合团队化使用与权限化管理。

一条典型链路:从报错到建议

  1. 线上错误日志进入 RootSeeker(Webhook/接口)。
  2. RootSeeker 生成分析任务并抽取关键信息。
  3. 通过 Zoekt 精确命中堆栈与关键符号定位“候选代码点”。
  4. 通过向量检索补齐相关上下文(相似实现/关联模块/相近问题)。
  5. 大模型在“日志证据 + 代码证据 + 配置上下文”基础上输出:
    • 根因推断与置信依据
    • 影响范围提示
    • 修复路径与建议 最终交付的是“可落地的排障结果”,而不是“更多的不确定性”。

开箱即用:内网部署友好

RootSeeker 提供 Docker Compose 级别的一键启动,默认编排常见依赖(MySQL、Qdrant、Zoekt、RootSeeker、Admin),适合在内网快速落地验证与试运行;也支持非 Docker 的一键拉起脚本,方便本地开发联调。

适用人群与场景

  • SRE / 运维:告警洪峰、重复故障、排障时间不可控
  • 后端/平台研发:复杂微服务、错误链路长、定位依赖经验
  • 团队管理者:希望把排障知识沉淀成体系,把 MTTR 真实降下来

欢迎参与共建

RootSeeker 的目标不是替代工程师,而是把工程师从“机械排查”中解放出来,让每一次线上报错都更快变成“可验证的根因结论”。 如果你对日志分析、代码检索、向量检索、LLM 工程化落地感兴趣,欢迎关注、试用与一起完善。

你可以从这些方向开始贡献:

  • 新的代码平台接入(GitSource 适配)
  • 更多日志源/告警平台的接入
  • 更强的索引策略与检索融合
  • 更贴近生产的分析模板与评估体系

立即访问项目主页 | 查看部署文档