MeethDavda/OpsAgent

GitHub: MeethDavda/OpsAgent

一个基于 LLM 的自主事件响应 agent,自动完成从告警诊断到修复执行和事后复盘的全流程,减少值班工程师的重复劳动。

Stars: 0 | Forks: 0

# OpsAgent 一个自主的事件响应 agent。当系统警报触发时,OpsAgent 会诊断问题、应用修复方案、通知团队并撰写事后复盘报告——无需为常规事件唤醒工程师。 ## 问题背景 值班工程师在每个事件上花费 30 到 60 分钟进行重复性工作:阅读日志、判断适用哪个 runbook、重启或扩容服务、将更新粘贴到 Slack,以及撰写事后复盘报告。这些工作大部分遵循可预测的模式。OpsAgent 将其自动化。 ## 工作原理 1. 警报触发并命中 webhook endpoint 2. Redis 进行去重——5 分钟内的相同警报将被丢弃 3. Node 后端将警报转发给 Python agent 4. LangChain ReAct agent 运行推理循环: - 读取日志以了解发生了什么 - 从数据库中获取匹配的 runbook - 执行修复(重启、扩容、清除缓存) - 通知 Slack - 使用 GPT-4.1 生成事后复盘报告 5. 如果置信度较低或严重级别为 `critical`,agent 会将问题上报给值班工程师,而不是自行处理 6. 每一步的思考、动作和观察结果都会保存到数据库,并实时流式传输到前端 ## 技术栈 | 层级 | 技术组件 | | ------------------------- | -------------------------------------- | | Agent 大脑 | Python, FastAPI, LangChain ReAct | | LLM | OpenAI GPT-4.1 | | Webhook / API / WebSocket | Node.js, Express, TypeScript | | 输入校验 | Zod | | 前端 | Next.js, shadcn/ui, Tailwind CSS | | 数据库 | Appwrite (incidents, traces, runbooks) | | 警报去重 | Redis | ## 架构 ``` Alertmanager / curl | v Node.js :3001 --Redis dedup--> drops duplicate alerts within 5 min | | POST /run v Python FastAPI :8000 | v LangChain ReAct loop |-- query_logs |-- get_runbook --> Appwrite |-- execute_remediation |-- notify_slack --> Slack webhook |-- generate_postmortem --> OpenAI GPT-4.1 `-- escalate_to_human --> Slack @oncall | | saves every Thought / Action / Observation v Appwrite (incidents, agent_traces, runbooks) | v Node.js WebSocket :3001 --> Next.js frontend (live trace stream) ``` ## Agent 工具 | 工具 | 功能说明 | | --------------------- | -------------------------------------------------------------- | | `query_logs` | 返回某项服务最近的错误日志 | | `get_metrics` | 返回 CPU、内存和延迟指标 | | `get_runbook` | 根据事件类型从数据库获取修复步骤 | | `execute_remediation` | 运行修复方案:`restart_service`、`scale_up` 或 `clear_cache` | | `notify_slack` | 向 Slack webhook URL 发送消息 | | `generate_postmortem` | 调用 GPT-4.1 撰写总结、根本原因和待办事项 | | `escalate_to_human` | 当 agent 无法确定时,向 @oncall 发送 Slack 警报 |
标签:AIOps, AI运维, API集成, Appwrite, AV绕过, DLL 劫持, Express, FastAPI, GNU通用公共许可证, GPT-4, LangChain, LLM代理, MITM代理, Node.js, PMD, Python, React, ReAct推理, Redis, Runbook自动化, shadcn/ui, Slack通知, SRE, Syscalls, Tailwind CSS, TypeScript, Webhook, WebSocket, Zod, 事件管理, 事后报告分析, 依赖分析, 偏差过滤, 全栈, 力导向图, 可观测性, 可靠性工程, 后端开发, 告警去重, 告警管理, 大模型, 大语言模型, 安全插件, 实时流处理, 指标监控, 搜索引擎查询, 数据库, 无后门, 智能运维, 模块化设计, 系统运维, 自主事件响应, 自动化修复, 自动化运维, 轻量级, 运维自动化, 逆向工具, 验证