manya5/DevOps-Incident-Response-Agent
GitHub: manya5/DevOps-Incident-Response-Agent
基于 LangGraph 和 FastAPI 构建的 AI DevOps 代理,自动解析 Docker 容器日志以识别故障根因并生成修复建议。
Stars: 0 | Forks: 0
# DevOps 故障响应 Agent
本项目是一个小型 AI 驱动的故障分析助手,用于处理 Docker 和 container 日志。它使用 LangGraph 工作流和 LLM 来对故障进行分类、解释根本原因、建议修复步骤并评估严重程度。
## 项目功能
该 Agent 会读取一个示例 Docker 日志,并解析以下重要信号:
- 错误消息
- 退出代码
- OOM / 内存不足事件
- 重启活动
然后生成:
- 简短的故障类别
- 根本原因解释
- 修复建议
- 严重程度标签
## 项目结构
- app/agent.py — 运行分析 pipeline 的 LangGraph 工作流
- app/parser.py — Docker 日志文本解析器
- app/main.py — FastAPI 健康检查 endpoint
- sample_logs/docker_oom.log — 用于测试的示例故障日志
## 前置条件
- Python 3.10+
- 一个 Groq API key
- 用于调用 LLM API 的互联网连接
## 设置
1. 在项目文件夹中打开 PowerShell。
2. 创建并激活虚拟环境:
```
python -m venv venv
.\venv\Scripts\activate
```
3. 安装依赖项:
```
pip install -r requirements.txt
```
4. 在项目根目录下创建一个 .env 文件,并填入你的 Groq key:
```
GROQ_API_KEY=your_groq_api_key_here
```
## 运行 Agent
在项目根目录下,运行:
```
python -m app.agent
```
这将处理示例日志并打印分析结果。
## 运行 API
你也可以启动 FastAPI 应用:
```
uvicorn app.main:app --reload
```
然后打开:
```
http://127.0.0.1:8000/
```
## 注意事项
- 请从项目根目录运行命令。如果你在错误的文件夹中运行,Python 可能会抛出关于 app 的 ModuleNotFoundError。
- 示例日志展示了一个与 OOM 相关的 container 故障。
标签:AIOps, AV绕过, C2, Docker, FastAPI, LangGraph, Sysdig, 安全防御评估, 根因分析, 请求拦截, 运维, 逆向工具