abhranil1113/Incident-ops

GitHub: abhranil1113/Incident-ops

一个基于 FastAPI 的生产级事件管理后端脚手架,提供从告警接入到事件追踪、实时通知和计费管理的完整后端起点。

Stars: 0 | Forks: 0

# IncidentOps – 自动化事件管理系统 IncidentOps 是一个生产级的后端脚手架,用于事件检测、告警接入、事件生命周期管理、通知、监控以及支付/计费工作流。 ## 技术栈 - FastAPI - SQLAlchemy 2.0 - PostgreSQL - Alembic - JWT 认证 - Socket.IO 通知 - Docker / docker-compose - Prometheus / Grafana - Kubernetes manifests - Razorpay 支付占位符 ## 功能特性 - 基于邮箱 + 密码的注册/登录(使用 JWT) - 会话跟踪 - 组织/团队/服务管理 - 事件生命周期:创建、从告警自动创建、确认、解决、关闭 - 评论、附件、标签、升级、复盘 - 告警源、规则、webhook 接入、健康检查、指标摘要 - 通过 Socket.IO 进行实时通知 - 套餐、订阅、发票、支付订单、支付验证、webhook 捕获 - Prometheus 指标和健康探针 ## 项目结构 ``` app/ api/v1/endpoints/ core/ db/ schemas/ services/ repositories/ sockets/ integrations/ middleware/ tasks/ monitoring/ k8s/ alembic/ ``` ## 设置说明 1. 复制 `.env.example` 为 `.env` 2. 填写 `DATABASE_URL` 和密钥 3. 安装依赖 pip install -r requirements.txt 4. 本地运行 uvicorn app.main:socket_app --reload --host 0.0.0.0 --port 8000 ## 数据库 - 创建迁移: alembic revision --autogenerate -m "init" - 应用迁移: alembic upgrade head ## Docker ``` docker compose up --build ``` 服务: - API: http://localhost:8000 - Swagger: http://localhost:8000/docs - Prometheus: http://localhost:9090 - Grafana: http://localhost:3000 ## 监控 - 指标端点:`/api/v1/metrics` - 健康端点: - `/api/v1/health` - `/api/v1/health/live` - `/api/v1/health/ready` ## Socket.IO - 端点路径:`/socket.io` - 在连接期间使用 `auth={"token": ""}` 进行身份验证 - 自动加入房间 `user:` ## 支付 - Razorpay 占位符通过配置和服务类实现。 - 提供用于创建套餐、订阅、发票、创建订单、验证和 webhook 捕获的端点。 ## 注意事项 - 此代码库是一个健壮的脚手架/启动模板,专注于清晰的架构、REST 接口面积和部署准备。 - 对于生产环境,请扩展授权、更丰富的持久化规则、alembic 自动生成的迁移、电子邮件/短信发送适配器以及 webhook 签名验证。
标签:AV绕过, Docker, FastAPI, IT运维, PostgreSQL, SaaS平台, Socks5代理, 事件管理, 后端开发, 告警与监控, 子域名突变, 安全防御评估, 测试用例, 自定义请求头, 请求拦截, 逆向工具