DIYA73/flux-ops
GitHub: DIYA73/flux-ops
一个面向微服务架构的 AI 驱动实时可观测性平台,通过 WebSocket 持久连接收集服务健康指标,自动检测异常并触发事件响应工作流。
Stars: 0 | Forks: 0
# Flux-Ops
**AI 驱动的微服务可观测性与事件响应平台**
面向现代微服务架构的实时全局智能仪表盘与 AI 驱动的监控平台。
## 功能特性
- **实时 WebSocket 代理** - 服务通过持久化 WebSocket 流上报健康指标
- **AI 异常检测** - 自动检测异常,建议根本原因,起草事件报告
- **多租户 SaaS** - 每个团队拥有独立的隔离仪表盘
- **一键 Runbooks** - 自动化事件响应工作流
## 架构
```
┌─────────────┐ WebSocket ┌─────────────────────────┐
│ Agents │ ──────────────────► │ NestJS Gateway │
│ (Services) │ ◄────────────────── │ + WebSocket Server │
└─────────────┘ Heartbeats └───────────┬─────────────┘
│
▼
┌──────────────────────────┐
│ PostgreSQL + TimescaleDB│
│ + Redis │
└───────────┬──────────────┘
│
▼
┌──────────────────────────┐
│ React Dashboard │
│ (Real-time charts) │
└──────────────────────────┘
```
## 技术栈
| 层级 | 技术 |
|-------|------------|
| 后端 | NestJS (TypeScript) |
| 前端 | React 19 + Vite |
| 实时通信 | WebSockets (ws) |
| 数据库 | PostgreSQL + TimescaleDB |
| 缓存 | Redis |
| 包管理器 | pnpm (workspaces) |
## 快速开始
### 前置条件
- Node.js >= 20
- pnpm >= 9
- PostgreSQL 15+ (包含 TimescaleDB 扩展)
- Redis 7+
### 安装
```
pnpm install
```
### 开发
```
# 并行运行所有 apps
pnpm dev
# 或单独运行
pnpm --filter @flux-ops/backend dev
pnpm --filter @flux-ops/web dev
```
### 构建
```
pnpm build
```
## 项目结构
```
flux-ops/
├── apps/
│ ├── backend/ # NestJS WebSocket server
│ │ ├── src/
│ │ │ ├── gateway/ # WebSocket gateway & connection manager
│ │ │ ├── auth/ # JWT authentication
│ │ │ ├── metrics/ # Metrics storage service
│ │ │ └── health/ # Health check endpoints
│ │ └── package.json
│ └── web/ # React dashboard
│ ├── src/
│ │ ├── App.tsx # Main dashboard component
│ │ └── index.css # Global styles
│ └── package.json
├── packages/
│ └── shared/ # Shared types & constants
│ └── src/
│ ├── types/ # TypeScript types
│ └── constants.ts
└── package.json # Root workspace config
```
## WebSocket 协议
### 消息 (客户端 → 服务端)
```
// Authenticate
{ type: 'auth', token: string }
// Send heartbeat with metrics
{ type: 'heartbeat', payload: AgentHeartbeat }
// Subscribe to topic
{ type: 'subscribe', topic: string }
// Unsubscribe from topic
{ type: 'unsubscribe', topic: string }
```
### 消息 (服务端 → 客户端)
```
// Auth success
{ type: 'auth_success', tenantId: string, serviceId: string }
// Heartbeat acknowledged
{ type: 'heartbeat_ack', serviceId: string, timestamp: Date }
// Metric update (broadcast)
{ type: 'metric', payload: MetricValue, serviceId: string }
// Incident alert
{ type: 'incident', payload: IncidentAlert }
```
## 数据库架构
即将推出:包含 TimescaleDB hypertables 和 Row-Level Security 策略的 Prisma schema。
## 许可证
MIT
标签:AIOps, IT运维, NestJS, PostgreSQL, React, Redis, SaaS, Socks5代理, Syscalls, TimescaleDB, WebSocket, 主机安全, 云端监控, 人工智能, 仪表盘, 依赖分析, 全链路监控, 可观测性平台, 团队协作, 容器监控, 库, 应急响应, 异常检测, 搜索引擎查询, 智能告警, 根因分析, 测试用例, 现代化架构, 用户模式Hook绕过, 自动化攻击, 自动化运维, 运维自动化