raman01211/incident-response-automation

GitHub: raman01211/incident-response-automation

自动化事件响应平台,整合 PagerDuty 值班、Slack 通知、Kubernetes 自动化 Runbook 和无指责复盘报告生成,覆盖事件全生命周期管理。

Stars: 1 | Forks: 0

# 事件响应自动化 ![Python](https://img.shields.io/badge/python-3.11-blue) ![PagerDuty](https://img.shields.io/badge/integration-PagerDuty-orange) ![Slack](https://img.shields.io/badge/integration-Slack-green) ![Docker](https://img.shields.io/badge/container-Docker-2496ED) ![Prometheus](https://img.shields.io/badge/monitoring-Prometheus-E6522C) ## 架构 ``` ┌─────────────┐ ┌──────────────┐ ┌──────────────────┐ │ Prometheus │────▶│ Alertmanager │────▶│ Incident API │ │ (alerts) │ │ (routing) │ │ (Flask) │ └─────────────┘ └──────────────┘ └────────┬─────────┘ │ ┌─────────────────────────────┤ │ │ │ ┌─────▼────┐ ┌─────▼────┐ ┌──────▼─────┐ │PostgreSQL│ │ Slack │ │ Grafana │ │(storage) │ │(notify) │ │(dashboard) │ └──────────┘ └──────────┘ └────────────┘ │ ┌─────▼────┐ │PagerDuty │ │(on-call) │ └──────────┘ ``` ## 功能 - **告警接入**:接收来自 Alertmanager 和 PagerDuty 的 webhook - **事件管理**:支持完整生命周期的创建、确认和解决 - **Slack 通知**:为每次状态变更发送丰富的 Block Kit 消息 - **自动化 Runbook**:K8s pod 重启、扩容、回滚及健康检查 - **无指责复盘**:自动生成包含时间线和行动项的 Markdown 报告 - **仪表盘**:Grafana 仪表盘,用于实时查看事件状态 - **值班集成**:支持 PagerDuty 排班感知的升级机制 ## 快速开始 ``` # 启动 stack make up # 模拟告警 make simulate-alert # 模拟完整的事件生命周期 make simulate-incident # 列出事件 make list-incidents # 生成 postmortem make generate-postmortem # 打开 Grafana dashboard make dashboard # 销毁 make down ``` ## 前置条件 - Docker 和 Docker Compose - Python 3.11+ - Kubernetes 集群(用于执行 Runbook) - Slack webhook URL(可选,用于通知) - PagerDuty API key(可选,用于值班同步) ## 命令 | 命令 | 描述 | |---------|-------------| | `make up` | 启动所有服务 | | `make down` | 停止所有服务 | | `make simulate-alert` | 发送测试 Alertmanager webhook | | `make simulate-incident` | 运行完整的事件生命周期模拟 | | `make list-incidents` | 列出所有事件 | | `make generate-postmortem` | 为最近的事件生成复盘报告 | | `make dashboard` | 打开 Grafana | | `make clean` | 删除所有数据卷 |
标签:Python, Slack, 子域名突变, 无后门, 测试用例, 网络调试, 自动化, 自定义请求头, 请求拦截, 运维, 逆向工具