426 lines
9.6 KiB
Markdown
426 lines
9.6 KiB
Markdown
# FastBee IoT平台 - 运维管理功能说明
|
||
|
||
## 一、运维管理概述
|
||
|
||
**运维管理**是FastBee IoT平台中用于系统运维、监控和管理的功能模块集合。它提供了协议管理、日志查看、客户端监控、固件管理、通知管理等核心运维功能,帮助管理员更好地维护和管理IoT平台。
|
||
|
||
## 二、运维管理功能模块
|
||
|
||
### 2.1 协议管理
|
||
|
||
**功能位置**: 运维管理 → 协议管理
|
||
**路径**: `/iot/protocol/index`
|
||
**权限**: `iot:protocol:list`
|
||
|
||
#### 作用
|
||
- 管理IoT设备通信协议
|
||
- 支持多种协议类型(JAR、JS、C程序)
|
||
- 配置协议解析规则
|
||
- 管理协议文件上传和版本控制
|
||
|
||
#### 主要功能
|
||
1. **协议列表查询**
|
||
- 查看所有已配置的协议
|
||
- 支持按协议名称、协议编码搜索
|
||
|
||
2. **协议详情查看**
|
||
- 查看协议详细信息
|
||
- 查看协议数据格式配置(Groovy脚本)
|
||
|
||
3. **协议配置**
|
||
- 编辑协议数据格式
|
||
- 支持Groovy脚本编写
|
||
- 配置协议显示状态
|
||
|
||
4. **协议类型**
|
||
- `0`: 未知类型
|
||
- `1`: JAR包协议
|
||
- `2`: JS脚本协议
|
||
- `3`: C程序协议
|
||
|
||
#### 使用场景
|
||
- 新增设备协议支持
|
||
- 修改协议解析规则
|
||
- 查看协议配置信息
|
||
- 管理协议版本
|
||
|
||
---
|
||
|
||
### 2.2 设备服务下发日志
|
||
|
||
**功能位置**: 运维管理 → 设备服务下发日志
|
||
**路径**: `/iot/log/index`
|
||
**权限**: `iot:log:list`
|
||
|
||
#### 作用
|
||
- 记录所有设备服务下发操作的详细日志
|
||
- 追踪设备控制指令的执行情况
|
||
- 排查设备控制问题
|
||
- 审计设备操作记录
|
||
|
||
#### 主要功能
|
||
1. **日志查询**
|
||
- 按日志名称、类型、设备ID等条件查询
|
||
- 支持多条件组合查询
|
||
- 分页显示日志列表
|
||
|
||
2. **日志信息**
|
||
- 日志名称
|
||
- 日志值
|
||
- 日志类型(属性上报、事件上报、调用功能等)
|
||
- 日志级别
|
||
- 设备信息(设备ID、设备名称)
|
||
- 用户信息(用户ID、用户昵称)
|
||
- 租户信息
|
||
- 触发源
|
||
- 告警信息(是否生成告警、告警处理状态)
|
||
- 创建时间
|
||
|
||
3. **日志管理**
|
||
- 新增日志(手动记录)
|
||
- 修改日志
|
||
- 删除日志
|
||
- 导出日志
|
||
|
||
#### 日志类型
|
||
- `1`: 属性上报
|
||
- `2`: 事件上报
|
||
- `3`: 调用功能
|
||
- `4`: 设备升级
|
||
- `5`: 设备上线
|
||
- `6`: 设备离线
|
||
- `7`: 运算数据上报
|
||
|
||
#### 使用场景
|
||
- 查看设备控制指令是否成功下发
|
||
- 排查设备响应异常问题
|
||
- 审计设备操作历史
|
||
- 分析设备使用情况
|
||
|
||
---
|
||
|
||
### 2.3 产品固件管理
|
||
|
||
**功能位置**: 运维管理 → 产品固件
|
||
**路径**: `/iot/firmware/index`
|
||
**权限**: `iot:firmware:list`
|
||
|
||
#### 作用
|
||
- 管理产品固件版本
|
||
- 固件升级任务管理
|
||
- 固件详情查看
|
||
- 设备固件升级
|
||
|
||
#### 主要功能
|
||
1. **固件管理**
|
||
- 上传固件文件
|
||
- 管理固件版本
|
||
- 查看固件详情
|
||
|
||
2. **固件任务**
|
||
- 创建固件升级任务
|
||
- 管理升级任务状态
|
||
- 查看升级进度
|
||
|
||
3. **固件详情**
|
||
- 查看固件版本信息
|
||
- 查看固件文件信息
|
||
- 查看升级记录
|
||
|
||
#### 使用场景
|
||
- 设备固件版本管理
|
||
- 批量设备固件升级
|
||
- 固件升级任务监控
|
||
|
||
---
|
||
|
||
### 2.4 设备模拟
|
||
|
||
**功能位置**: 运维管理 → 设备模拟
|
||
**路径**: `/iot/simulate/index`
|
||
**权限**: `iot:simulate:list`
|
||
|
||
#### 作用
|
||
- 模拟设备数据上报
|
||
- 测试设备功能
|
||
- 调试设备协议
|
||
- 开发测试支持
|
||
|
||
#### 主要功能
|
||
1. **设备模拟**
|
||
- 创建模拟设备
|
||
- 模拟设备数据上报
|
||
- 模拟设备响应
|
||
|
||
2. **模拟日志**
|
||
- 查看模拟设备日志
|
||
- 追踪模拟数据
|
||
|
||
#### 使用场景
|
||
- 开发阶段测试
|
||
- 协议调试
|
||
- 功能验证
|
||
- 系统演示
|
||
|
||
---
|
||
|
||
### 2.5 通知管理
|
||
|
||
#### 2.5.1 通知渠道
|
||
|
||
**功能位置**: 运维管理 → 通知渠道
|
||
**路径**: `/notify/channel/index`
|
||
**权限**: `notify:channel:list`
|
||
|
||
#### 作用
|
||
- 配置通知发送渠道
|
||
- 管理短信、邮件、微信等通知方式
|
||
- 配置渠道参数
|
||
|
||
#### 主要功能
|
||
- 添加通知渠道(短信、邮件、微信、钉钉等)
|
||
- 配置渠道参数
|
||
- 测试渠道连接
|
||
- 启用/禁用渠道
|
||
|
||
---
|
||
|
||
#### 2.5.2 通知模板
|
||
|
||
**功能位置**: 运维管理 → 通知模板
|
||
**路径**: `/notify/template/index`
|
||
**权限**: `notify:template:list`
|
||
|
||
#### 作用
|
||
- 管理通知消息模板
|
||
- 配置告警通知模板
|
||
- 自定义通知内容格式
|
||
|
||
#### 主要功能
|
||
- 创建通知模板
|
||
- 编辑模板内容
|
||
- 配置模板变量
|
||
- 预览模板效果
|
||
|
||
---
|
||
|
||
#### 2.5.3 通知日志
|
||
|
||
**功能位置**: 运维管理 → 通知日志
|
||
**路径**: `/notify/log/index`
|
||
**权限**: `notify:log:list`
|
||
|
||
#### 作用
|
||
- 查看所有通知发送记录
|
||
- 追踪通知发送状态
|
||
- 排查通知发送问题
|
||
|
||
#### 主要功能
|
||
- 查询通知日志
|
||
- 查看通知详情
|
||
- 查看发送状态(成功/失败)
|
||
- 查看发送时间
|
||
|
||
---
|
||
|
||
### 2.6 指令权限
|
||
|
||
**功能位置**: 运维管理 → 指令权限
|
||
**路径**: `/iot/order/index`
|
||
**权限**: `order:control:list`
|
||
|
||
#### 作用
|
||
- 控制设备指令下发权限
|
||
- 管理用户对设备的控制权限
|
||
- 防止未授权操作
|
||
|
||
#### 主要功能
|
||
- 配置设备控制权限
|
||
- 管理用户指令权限
|
||
- 查看权限配置
|
||
- 权限审计
|
||
|
||
---
|
||
|
||
## 三、Netty管理(独立模块)
|
||
|
||
**功能位置**: Netty管理(独立主菜单)
|
||
**路径**: `/iot/netty/clients`
|
||
**权限**: `monitor:server:list`
|
||
|
||
### 3.1 客户端管理
|
||
|
||
#### 作用
|
||
- 监控MQTT/TCP客户端连接
|
||
- 查看在线客户端信息
|
||
- 管理客户端连接
|
||
- 排查连接问题
|
||
|
||
#### 主要功能
|
||
1. **客户端列表**
|
||
- 查看所有连接的客户端
|
||
- 显示客户端ID、类型、连接状态
|
||
- 查看客户端订阅的主题
|
||
- 查看连接时间、心跳间隔
|
||
|
||
2. **客户端类型**
|
||
- `server`: 服务器端(红色标签)
|
||
- `web`: Web客户端(绿色标签)
|
||
- `phone`: 手机客户端(黄色标签)
|
||
- `test`: 测试客户端(灰色标签)
|
||
- 其他: 设备客户端(蓝色标签)
|
||
|
||
3. **客户端操作**
|
||
- 查看客户端详情
|
||
- 查看订阅主题列表
|
||
- 强制断开客户端连接
|
||
|
||
4. **连接状态**
|
||
- 已连接(绿色标签)
|
||
- 未连接(灰色标签)
|
||
|
||
5. **客户端信息**
|
||
- 客户端ID
|
||
- 客户端类型
|
||
- 连接状态
|
||
- 心跳间隔(KeepAlive)
|
||
- 用户名
|
||
- 订阅主题数量
|
||
- 连接时间
|
||
|
||
#### 使用场景
|
||
- 监控设备连接状态
|
||
- 查看在线设备数量
|
||
- 排查设备连接问题
|
||
- 强制断开异常连接
|
||
- 查看设备订阅的主题
|
||
|
||
---
|
||
|
||
### 3.2 事件日志
|
||
|
||
**功能位置**: IoT管理 → 事件日志
|
||
**路径**: `/iot/log/index`
|
||
**权限**: `iot:event:list`
|
||
|
||
#### 作用
|
||
- 记录系统事件日志
|
||
- 追踪系统运行状态
|
||
- 排查系统问题
|
||
|
||
#### 主要功能
|
||
- 查询事件日志
|
||
- 查看事件详情
|
||
- 导出事件日志
|
||
- 事件统计分析
|
||
|
||
---
|
||
|
||
## 四、运维管理使用场景
|
||
|
||
### 4.1 日常运维场景
|
||
|
||
1. **协议问题排查**
|
||
- 设备数据解析异常 → 查看协议管理,检查协议配置
|
||
- 新增设备协议支持 → 在协议管理中配置新协议
|
||
|
||
2. **设备控制问题排查**
|
||
- 设备控制失败 → 查看设备服务下发日志,检查下发记录
|
||
- 设备无响应 → 查看Netty客户端管理,检查设备连接状态
|
||
|
||
3. **系统监控**
|
||
- 查看在线设备数量 → Netty管理 → 客户端
|
||
- 查看系统事件 → 事件日志
|
||
- 查看通知发送情况 → 通知日志
|
||
|
||
4. **固件升级管理**
|
||
- 批量升级设备固件 → 产品固件 → 固件任务
|
||
- 查看升级进度 → 固件详情
|
||
|
||
### 4.2 故障排查流程
|
||
|
||
```
|
||
设备异常
|
||
↓
|
||
1. 检查设备连接状态(Netty管理 → 客户端)
|
||
↓
|
||
2. 查看设备服务下发日志(设备服务下发日志)
|
||
↓
|
||
3. 检查协议配置(协议管理)
|
||
↓
|
||
4. 查看事件日志(事件日志)
|
||
↓
|
||
5. 查看通知日志(通知日志)
|
||
```
|
||
|
||
### 4.3 系统维护场景
|
||
|
||
1. **协议升级**
|
||
- 在协议管理中更新协议配置
|
||
- 测试协议解析是否正确
|
||
|
||
2. **通知配置**
|
||
- 配置通知渠道(短信、邮件等)
|
||
- 创建通知模板
|
||
- 测试通知发送
|
||
|
||
3. **权限管理**
|
||
- 配置设备控制权限
|
||
- 管理用户指令权限
|
||
|
||
## 五、核心代码位置
|
||
|
||
### 5.1 协议管理
|
||
- **控制器**: `fastbee-open-api/src/main/java/com/fastbee/controller/protocol/ProtocolController.java`
|
||
- **服务**: `fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/service/IProtocolService.java`
|
||
- **前端**: `vue/src/views/iot/protocol/index.vue`
|
||
|
||
### 5.2 设备服务下发日志
|
||
- **前端**: `vue/src/views/iot/log/index.vue`
|
||
- **实体**: `fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/domain/FunctionLog.java`
|
||
|
||
### 5.3 Netty客户端管理
|
||
- **前端**: `vue/src/views/iot/netty/clients.vue`
|
||
- **后端**: MQTT Broker相关代码在 `fastbee-server/mqtt-broker/`
|
||
|
||
### 5.4 通知管理
|
||
- **通知渠道**: `vue/src/views/notify/channel/index.vue`
|
||
- **通知模板**: `vue/src/views/notify/template/index.vue`
|
||
- **通知日志**: `vue/src/views/notify/log/index.vue`
|
||
|
||
## 六、注意事项
|
||
|
||
1. **协议管理**
|
||
- 修改协议配置需要谨慎,可能影响设备数据解析
|
||
- 协议文件需要正确上传和配置
|
||
|
||
2. **日志管理**
|
||
- 日志数据量可能很大,建议定期清理
|
||
- 重要日志建议导出备份
|
||
|
||
3. **客户端管理**
|
||
- 强制断开客户端连接会影响设备通信
|
||
- 建议在确认异常后再断开连接
|
||
|
||
4. **通知管理**
|
||
- 通知渠道需要正确配置参数
|
||
- 通知模板变量需要正确配置
|
||
|
||
5. **权限管理**
|
||
- 指令权限配置会影响设备控制功能
|
||
- 建议根据实际需求合理配置权限
|
||
|
||
---
|
||
|
||
**文档版本**: v1.0
|
||
**最后更新**: 2024-12-20
|
||
**维护者**: FastBee开发团队
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|