vyshnavi1411/ai-incident-response-assistant

GitHub: vyshnavi1411/ai-incident-response-assistant

该工具通过 OpenAI 自动分析 Kubernetes 与 Jenkins 故障日志并生成根因报告和修复建议,帮助 DevOps 工程师减少手动排障时间。

Stars: 0 | Forks: 0

# 🤖 AI 驱动的故障响应助手 这是一款由 AI 驱动的工具,旨在帮助 DevOps 工程师快速定位 Kubernetes pod 故障和 Jenkins pipeline 错误。它会自动收集日志并发送至 OpenAI API 进行分析,随后返回简明的根因分析报告及可能的修复方案。 工程师无需再手动查阅冗长的日志,而是能直接收到清晰易懂的英文解释。 ## 🚀 功能 - 分析 Kubernetes pod 故障 - 分析 Jenkins pipeline 故障 - 自动收集日志 - 生成 AI 驱动的根因摘要 - 提供可能的修复建议 - 将故障摘要发送至 Slack - Human-in-the-loop 设计(不执行自动修复) ## 🛠 技术栈 - Node.js - Express.js - Kubernetes - Jenkins - Prometheus - Grafana - OpenAI API - Slack Webhooks - Docker ## 🏗 架构 ``` Kubernetes Jenkins │ │ └──────┬────────┘ │ Node.js Backend │ Collect Logs │ OpenAI API │ AI Root Cause Summary │ Slack Notification ``` ## ⚙️ 工作原理 1. Kubernetes pod 崩溃或 Jenkins 构建失败。 2. 后端从 Kubernetes 或 Jenkins 收集日志。 3. 从 Prometheus 获取资源指标。 4. 将日志和指标发送至 OpenAI API。 5. AI 生成: - 根本原因 - 详细解释 - 建议的修复方案 6. 摘要将被发布到 Slack。 ## 📁 项目结构 ``` ai-incident-response-assistant/ server/ ├── controllers/ ├── routes/ ├── services/ ├── utils/ ├── config/ README.md package.json Dockerfile ``` ## 📦 安装说明 克隆仓库 ``` git clone https://github.com/vyshnavi1411/ai-incident-response-assistant.git cd ai-incident-response-assistant ``` 安装依赖 ``` npm install ``` 创建 `.env` 文件 ``` OPENAI_API_KEY=your_api_key SLACK_WEBHOOK_URL=your_webhook KUBE_CONFIG_PATH=path_to_kubeconfig JENKINS_URL=your_jenkins_url JENKINS_USER=your_username JENKINS_TOKEN=your_token ``` 运行应用 ``` npm start ``` ## 📡 示例 ### 输入 ``` Pod Status: OOMKilled Memory Limit: 128Mi Memory Usage: 310Mi ``` ### AI 输出 ``` Root Cause The container exceeded its configured memory limit, causing Kubernetes to terminate the pod. Recommendation Increase the memory limit to 512Mi and monitor memory usage using Prometheus. ``` ## 🔮 未来改进 - 用于查看故障的 Dashboard - 存储故障历史记录 - 支持 AWS CloudWatch 日志 - 邮件通知 - 支持更多类型的 Kubernetes 故障 - 历史故障搜索 ## 👩‍💻 作者 **Vyshnavi Kusukuntla** GitHub: https://github.com/vyshnavi1411 LinkedIn: https://linkedin.com/in/vyshnavikusukuntla
标签:Jenkins, MITM代理, OpenAI, Petitpotam, 人体姿态估计, 人工智能, 内存规避, 子域名突变, 根因分析, 用户模式Hook绕过, 自定义请求头, 请求拦截, 运维