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绕过, 自定义请求头, 请求拦截, 运维