故障排查
常见问题
1. 谱图无法进入循环分析
现象:点击开始后,单次分析完成但不自动进入下一次循环。
原因分析:
- 循环配置未正确设置
- DriverMode 配置问题导致自动循环逻辑未触发
- 硬件未发送 Cmd 150 开始确认
解决方案:
- 检查循环配置:
- 检查系统配置:
- 查看日志确认 Cmd 150 是否收到:
修复代码(engine_scheduler.go):
2. 方法中打开谱图显示无历史记录
现象:报表查询可以看到历史记录,但方法页面打开谱图时列表为空。
原因分析:
- 前端传递的 deviceId 与实际存储的 device_id 不匹配
- 前端使用了默认 deviceId=1,但数据库中存储的是真实设备ID
解决方案:
检查前端代码(method.js):
验证:
3. 服务无法启动
现象:运行 collector.exe 后立即退出。
原因分析:
- 端口被占用
- 数据目录权限问题
- 配置文件损坏
解决方案:
- 检查端口占用:
- 更换端口启动:
- 检查数据目录权限:
- 查看启动日志:
4. 无法连接到硬件
现象:界面显示"未连接"状态。
原因分析:
- 串口配置错误
- 硬件未上电
- 驱动模式不匹配
解决方案:
- 检查串口配置:
- 检查驱动模式配置:
- 测试串口连接:
5. SiLA 2 客户端无法连接
现象:gRPC 客户端连接失败。
原因分析:
- gRPC 端口未开放
- 防火墙阻止连接
- 服务未正确启动
解决方案:
- 检查 gRPC 端口:
- 测试连接:
- 检查防火墙:
日志分析
日志级别
通过环境变量控制日志级别:
日志关键字搜索
数据恢复
备份数据库
恢复数据库
清理数据库(重置)
性能优化
内存使用
问题:长时间运行后内存占用过高。
解决方案:
- 定期清理历史数据
- 调整日志级别为 warn
- 限制保留的历史记录数量
CPU 使用
问题:CPU 占用率过高。
解决方案:
- 检查是否有无限循环
- 优化积分算法
- 调整采样频率
网络问题
SSE 连接断开
现象:实时谱图数据停止更新。
原因分析:
- 网络不稳定
- 服务器超时配置
- 客户端断开
解决方案:
- 检查 SSE 连接状态:
- 调整服务器超时配置(环境变量):
- 客户端重连逻辑:
硬件兼容性
FID 检测器
配置要求:
- driver_mode:
"FID (Legacy Board)"或空字符串 - 串口:
/dev/ttyS0(通常) - 波特率: 9600
TCD 检测器
配置要求:
- driver_mode:
"modular" - 使用 Modbus/TCP 协议
- 需要配置 OPC-UA 服务器
联系支持
如遇到无法解决的问题,请提供以下信息:
-
系统信息:
- 操作系统版本
- CPU 架构
- 内存大小
-
服务日志:
-
配置文件:
-
问题描述:
- 问题现象
- 复现步骤
- 预期结果
- 实际结果
