Skip to content

Latest commit

 

History

History
195 lines (148 loc) · 6.45 KB

File metadata and controls

195 lines (148 loc) · 6.45 KB

通用运维管理系统 - 项目状态总结

更新时间: 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 模块

接口路径 方法 视图类 状态
/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 ✅ 正常

五、已知问题

🔴 待解决

  1. Dashboard 500 错误

    • 描述: 打开仪表盘页面时,部分 API 返回 500 错误
    • 原因: 可能是数据库表不存在或数据为空
    • 影响: 监控统计、告警统计、巡检统计、任务统计无法加载
    • 解决: 启动后端服务,执行数据库迁移,检查数据表
  2. 采集测试页面报错

    • 描述: 访问 /monitor-test 时报错 Failed to fetch dynamically imported module
    • 原因: 可能是 Vite 开发服务器配置问题
    • 解决: 重启前端 dev server

🟡 注意事项

  1. 后端必须启动: 前端 API 调用需要后端服务运行在 localhost:8000
  2. 数据库迁移: 首次部署需要执行 python manage.py migrate
  3. 示例数据: 需要执行 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 驾驶舱页面完成

八、下一步计划

  1. 联调 Dashboard: 启动后端,验证各统计 API 正常返回数据
  2. 完善监控采集: 测试各协议(Ping/SNMP/HTTP)的实际采集功能
  3. 添加巡检任务: 实现定期自动巡检功能
  4. 报表功能: 开发统计报表页面
  5. 数据导入: 支持 Excel/CSV 批量导入资产数据

九、相关文档

  • 详细功能说明: README.md
  • SNMP 监控说明: 见 README.md 末尾
  • 数据库设计: 查看 backend/apps/*/models.py