更新时间: 2026-03-31 09:32
项目名称: 通用运维管理系统 (ops-system)
项目路径: /home/zhang/botcode/ops-system/
技术栈: Vue.js 3 + Django 4.2 + MySQL 8.0
项目用途: 多客户、多类型的IT资产管理,支持监控、告警、巡检、工单等功能
ops-system/
├── backend/ # Django后端
│ ├── apps/
│ │ ├── assets/ # 资产管理(完整)
│ │ ├── customers/ # 客户管理(完整)
│ │ ├── dashboard/ # 驾驶舱统计(完整)
│ │ ├── inspection/ # 巡检管理(完整)
│ │ ├── monitoring/ # 监控管理(完整)
│ │ ├── scheduler/ # 定时任务(完整)
│ │ ├── alerts/ # 告警管理(完整)
│ │ ├── users/ # 用户管理(完整)
│ │ └── workorder/ # 工单管理(完整)
│ ├── config/ # 配置文件
│ └── requirements.txt
│
├── frontend/ # Vue前端
│ ├── src/
│ │ ├── api/ # API调用模块
│ │ ├── views/ # 页面组件
│ │ ├── components/ # 通用组件
│ │ ├── router/ # 路由配置
│ │ └── stores/ # 状态管理
│ └── package.json
│
└── docs/ # 文档
| 模块 |
状态 |
说明 |
| 用户认证 |
✅ 完成 |
登录、权限、角色管理 |
| 客户管理 |
✅ 完成 |
CRUD、客户插件系统 |
| 资产管理 |
✅ 完成 |
基础资产 + 10种扩展资产类型 |
| 监控管理 |
✅ 完成 |
Ping/端口/SNMP/HTTP/SSL/性能监控 |
| 告警管理 |
✅ 完成 |
阈值告警、状态流转 |
| 巡检管理 |
✅ 完成 |
巡检计划、任务、记录 |
| 工单管理 |
✅ 完成 |
工单创建、审批流程 |
| Dashboard |
✅ 代码完成 |
API接口完整,待联调 |
| 模块 |
状态 |
说明 |
| 定时任务调度 |
🔧 待联调 |
scheduler 模块已实现 |
| 监控采集测试 |
🔧 页面存在 |
MonitorTest.vue 已创建 |
| 报表功能 |
📋 未开始 |
计划中 |
| 数据导入 |
📋 未开始 |
Excel/CSV导入 |
| 页面路径 |
组件 |
状态 |
/dashboard |
Dashboard.vue |
✅ 已完成 |
/assets |
assets/* |
✅ 已完成 |
/customers |
customers/* |
✅ 已完成 |
/monitoring |
monitoring/* |
✅ 已完成 |
/monitor-test |
monitoring/MonitorTest.vue |
✅ 已完成 |
/inspection |
inspection/* |
✅ 已完成 |
/scheduler |
scheduler/* |
✅ 已完成 |
/workorder |
workorder/* |
✅ 已完成 |
/alerts |
monitoring/alerts |
✅ 已完成 |
| 接口路径 |
方法 |
视图类 |
状态 |
/api/dashboard/stats/ |
GET |
DashboardStatsView |
✅ 正常 |
/api/dashboard/monitoring/ |
GET |
MonitoringStatsView |
✅ 正常 |
/api/dashboard/alerts/ |
GET |
AlertStatsView |
✅ 正常 |
/api/dashboard/inspection/ |
GET |
InspectionStatsView |
✅ 正常 |
/api/dashboard/tasks/ |
GET |
TaskStatsView |
✅ 正常 |
/api/dashboard/health/ |
GET |
AssetHealthView |
✅ 正常 |
| 接口路径 |
方法 |
视图类 |
状态 |
/api/assets/ |
GET/POST |
AssetViewSet |
✅ 正常 |
/api/assets/{id}/ |
GET/PUT/DELETE |
AssetViewSet |
✅ 正常 |
/api/assets/types/ |
GET |
AssetTypeViewSet |
✅ 正常 |
| 接口路径 |
方法 |
视图类 |
状态 |
/api/monitoring/tasks/ |
GET/POST |
MonitoringTaskViewSet |
✅ 正常 |
/api/monitoring/tasks/{id}/ |
GET/PUT/DELETE |
MonitoringTaskViewSet |
✅ 正常 |
/api/monitoring/results/ |
GET |
MonitoringResultViewSet |
✅ 正常 |
/api/monitoring/alerts/ |
GET |
AlertViewSet |
✅ 正常 |
-
Dashboard 500 错误
- 描述: 打开仪表盘页面时,部分 API 返回 500 错误
- 原因: 可能是数据库表不存在或数据为空
- 影响: 监控统计、告警统计、巡检统计、任务统计无法加载
- 解决: 启动后端服务,执行数据库迁移,检查数据表
-
采集测试页面报错
- 描述: 访问
/monitor-test 时报错 Failed to fetch dynamically imported module
- 原因: 可能是 Vite 开发服务器配置问题
- 解决: 重启前端 dev server
- 后端必须启动: 前端 API 调用需要后端服务运行在
localhost:8000
- 数据库迁移: 首次部署需要执行
python manage.py migrate
- 示例数据: 需要执行
python manage.py shell < ../scripts/init_extended_asset_types.py 初始化扩展资产类型
cd /home/zhang/botcode/ops-system/backend
source venv/bin/activate
python manage.py runserver 0.0.0.0:8000
cd /home/zhang/botcode/ops-system/frontend
npm install # 首次需要
npm run dev
| 日期 |
更新内容 |
| 2026-03-30 |
完成 MonitorTest.vue 采集测试页面 |
| 2026-03-28 |
SNMP 监控功能开发完成 |
| 2026-03-25 |
监控 Ping 检测、端口检测功能完成 |
| 2026-03-24 |
告警管理、工单管理功能完成 |
| 2026-03-20 |
Dashboard 驾驶舱页面完成 |
- 联调 Dashboard: 启动后端,验证各统计 API 正常返回数据
- 完善监控采集: 测试各协议(Ping/SNMP/HTTP)的实际采集功能
- 添加巡检任务: 实现定期自动巡检功能
- 报表功能: 开发统计报表页面
- 数据导入: 支持 Excel/CSV 批量导入资产数据
- 详细功能说明: README.md
- SNMP 监控说明: 见 README.md 末尾
- 数据库设计: 查看
backend/apps/*/models.py