chibuchi001/Aegisops

GitHub: chibuchi001/Aegisops

AI驱动的智能事件响应平台,自动化日志调查、根因分析、修复执行并生成RCA报告,显著缩短运维团队的事件响应时间。

Stars: 0 | Forks: 0

# AegisOps — AI驱动的智能事件响应平台 AegisOps 是一个由 AI 驱动的事件响应和运维情报平台,专为现代工程团队构建。它能够检测事件、自主调查日志、识别根本原因、执行修复并生成专业的 RCA 报告 — 所有操作都在安全的认证界面后完成。 ## 🛡️ 核心功能 | 功能 | 描述 | |---------|-------------| | **安全认证** | JWT 登录、bcrypt 密码加密、httpOnly cookie 会话、基于角色的访问控制(管理员 / 工程师) | | **路由守卫** | Next.js 中间件 — 未认证用户重定向至 `/login` | | **实时事件仪表盘** | 实时 KPI、严重程度图表、事件趋势和服务健康网格 | | **AI 调查引擎** | 跨 10 个故障领域的日志模式分析,带置信度评分 | | **修复建议引擎** | 上下文感知的修复方案,包含风险评估和可执行命令 | | **一键修复模拟** | 模拟终端执行修复,逐步输出流 | | **RCA 报告生成器** | 自动生成的根本原因分析报告,可下载为 `.txt` 格式 | | **实时日志流** | 跨所有监控服务的 WebSocket 日志推送 | | **服务健康监控** | 每个服务的正常运行时间和事件跟踪 | ## 🏗️ 系统架构 ``` +--------------------------------------+ � Browser � � Login page � Dashboard � Reports � +--------------------------------------+ � httpOnly cookie (JWT) +-------?--------+ � Next.js 14 � � App Router � � middleware.ts � ? route guards � /api/auth/* � ? login / logout / me +-----------------+ � Authorization: Bearer +------------?-------------------------+ � FastAPI (Python 3.11) � � /api/v1/auth/login (public) � � /api/v1/incidents (protected) � � /api/v1/analyze (protected) � � /api/v1/resolve (protected) � � /api/v1/reports (protected) � � /api/v1/metrics (protected) � � ws://�/ws/logs/{id} (WebSocket) � +--------------------------------------+ � +------------?------------+ � SQLite (aiosqlite) � � SQLAlchemy 2 async ORM � +-------------------------+ ``` ### 技术栈 | 层级 | 技术 | |-------|-----------| | **前端框架** | Next.js 14 (App Router)、TypeScript | | **样式** | Tailwind CSS | | **图表** | Recharts | | **图标** | Lucide React | | **会话管理** | httpOnly cookie + Next.js 中间件 | | **后端框架** | FastAPI (Python 3.11)、uvicorn | | **认证** | JWT (python-jose + HS256) + bcrypt (passlib) | | **ORM** | SQLAlchemy 2.0 async + aiosqlite | | **数据库** | SQLite(零配置演示) | | **实时通信** | WebSockets | | **AI / LLM** | 内置模式引擎 + OpenAI API(可选)| ## 🚀 快速开始 ### 前置条件 - Node.js 18+ - Python 3.11+ - npm ### 1. 安装前端依赖 ``` cd aegisops npm install ``` ### 2. 安装后端依赖 ``` pip install -r backend/requirements.txt ``` ### 3. 启动后端(终端 1) ``` # Windows PowerShell $env:PYTHONPATH = "C:\path\to\aegisops" python -m uvicorn backend.main:app --port 8000 # macOS / Linux PYTHONPATH=. python -m uvicorn backend.main:app --port 8000 ``` 后端自动完成以下操作: - 创建 SQLite 数据库(`aegisops.db`)和所有表 - 填充 6 个演示事件 + 两个用户账户 ### 4. 启动前端(终端 2) ``` npm run dev # Opens on http://localhost:3001 ``` ### 5. 登录 打开 **http://localhost:3001** — 中间件将重定向您到登录页面。 | 角色 | 用户名 | 密码 | |------|----------|----------| | 管理员 | `admin` | `aegisops2026` | | 工程师 | `engineer` | `engineer123` | ### 可选:OpenAI 集成 ``` cp .env.example .env.local # Edit .env.local and add: OPENAI_API_KEY=sk-... ``` ## 🔐 认证 AegisOps 实现了生产级认证栈: - **后端** 通过 `POST /api/v1/auth/login` 发放签名的 JWT(HS256,8 小时过期) - **Next.js API 路由**(`/api/auth/login`)调用后端,将令牌存储在 **httpOnly cookie** 中(防 XSS) - **`middleware.ts`** 在每个请求时在服务端运行: - 访问 `/dashboard/*` 且无 cookie → 重定向至 `/login` - 访问 `/login` 且有 cookie → 重定向至 `/dashboard` - 访问 `/api/v1/*` 且有 cookie → 注入 `Authorization: Bearer ` 请求头 - 所有后端路由(除 `/auth/login` 外)都需要 `Depends(get_current_user)` - 密码使用 **bcrypt** 加密;`sameSite: lax` cookie 防护 CSRF 攻击 ## 📖 使用指南 ### 1. 登录 访问 `http://localhost:3001`。使用上述演示凭据登录。 ### 2. 仪表盘 - **KPI 卡片**:活跃事件、严重事件数、今日已解决、平均修复时间、AI 分析数、自动解决数 - **事件频率图表**:按严重程度显示 12 小时趋势 - **严重程度分布**:环形图 - **服务健康网格**:每个服务的状态及正常运行时间条形图 - **实时日志流**:实时 WebSocket 推送(暂停/恢复) ### 3. 事件调查 1. 从 **事件** 页面打开任意事件 2. 在 AI 面板中点击 **"运行 AI 分析"** 3. AI 将识别根本原因、时间线、业务影响和修复建议 4. 展开修复建议 → 点击 **"执行修复 — 模拟"** 进行终端模拟 ### 4. RCA 报告 导航至 **RCA 报告** 预览或下载自动生成的事后分析报告。 ### 5. 退出登录 使用侧边栏底部的 **退出登录** 按钮。 ## 🤖 AI 引擎 跨 **10 个故障领域** 的模式匹配智能: | 领域 | 示例 | |--------|----------| | 数据库 | 连接池耗尽、慢查询、复制延迟 | | 内存 | OOM 错误、GC 压力、堆内存耗尽 | | 认证 | JWT 失败、会话过期、暴力破解峰值 | | 网络 | 超时、DNS 失败、SSL/TLS 错误 | | 缓存 | Redis 未命中级联、驱逐风暴 | | 支付 | Webhook 失败、网关超时 | | 部署 | 部署后回退、Schema 迁移错误 | | CPU | 节流、热线程 | | 网络分区 | 脑裂、共识失败 | | 通用 | 未分类的错误峰值 | ### 可选:真实 OpenAI 集成 在 `.env.local` 中设置 `OPENAI_API_KEY=sk-...` 以使用 GPT-4o-mini。当密钥缺失或 API 不可用时,模式引擎将作为后备方案。 ## 📁 项目结构 ``` aegisops/ +-- app/ � +-- layout.tsx # Root layout � wraps AuthProvider � +-- login/page.tsx # Login page � +-- dashboard/ � � +-- page.tsx # Main dashboard � � +-- incidents/ � � � +-- page.tsx # Incident list � � � +-- [id]/page.tsx # Detail + AI analysis � � +-- reports/page.tsx � � +-- activity/page.tsx � +-- api/ � +-- auth/login/route.ts # Sets httpOnly cookie � +-- auth/logout/route.ts # Clears cookie � +-- auth/me/route.ts # Reads cookie, proxies /auth/me +-- backend/ � +-- main.py # FastAPI app � +-- config.py # Settings (SECRET_KEY, DB URL, �) � +-- database.py # Async engine + Base � +-- models.py # Incident, Analysis, User, RCAReport, � � +-- security.py # JWT utils, get_current_user � +-- routes/ � � +-- auth.py # /auth/login + /auth/me � � +-- incidents.py � � +-- analyze.py � � +-- resolve.py � � +-- reports.py � � +-- metrics.py � +-- services/ � � +-- ai_engine.py � � +-- seeder.py # Demo data + user seeding � +-- ws/log_stream.py +-- components/layout/Sidebar.tsx # User info + sign out +-- contexts/AuthContext.tsx # AuthProvider + useAuth() +-- middleware.ts # Route guards + token injection +-- presentation.html # Slide deck (open ? Print ? Save as PDF) +-- DEMO_SCRIPT.md ``` ## 🏆 黑客松提交 **项目**:AegisOps **赛道**:最佳 AI 创新 **活动**:量子黑客松 2026 ### 问题陈述 生产事件平均造成每分钟 5,600 美元损失(Gartner)。73% 的平均修复时间用于手动日志调查。工程师在 Slack 战室中花费数小时,搜索数千行日志以找出问题所在。 ### 解决方案 AegisOps 使用 AI 调查引擎自动分析日志、确定根本原因、建议针对性修复方案并生成事后分析报告 — 将平均修复时间从数小时缩短至 10 分钟以内。完整的认证层提供安全的基于角色的访问。 ### 创新亮点 - **零配置 AI** — 无需任何 API 密钥即可使用内置模式智能 - **安全设计** — 从第一天起就包含完整的 JWT 认证栈(非后期添加) - **自动事后分析** — RCA 报告在事件关闭时自动生成 - **实时架构** — WebSocket 日志推送、实时仪表盘指标 - **生产级技术栈** — 异步 FastAPI + SQLAlchemy ORM + httpOnly cookie 认证 ## 📜 许可证 MIT 许可证 — 为量子黑客松 2026 构建 *AegisOps:用智能事件响应守护您的系统。*
标签:AI运营平台, AV绕过, FastAPI, JWT认证, Python, RCA报告, React, Streamlit, Syscalls, WebSocket, 依赖分析, 安全运营, 扫描框架, 故障检测, 无后门, 根因分析, 自动化攻击, 自动化运维, 访问控制