3.1 KiB
3.1 KiB
name, description
| name | description |
|---|---|
| edge-bugfix | edge_collector 缺陷排查与根因修复流程。用于用户报告边缘侧、云平台、协议采集、前端白屏、部署同步、远程主机 CPU/内存异常、脚本失败、接口失败等 Bug 或异常时,按读取证据、根因定位、最小修复、定向验证和报告沉淀推进。 |
edge_collector Bug 修复流程
适用范围
- 边缘服务:
collector、configurator、edgesystemd 服务。 - 云平台:
cloud_server、frontend/cloud_app、deploy_cloud.sh。 - 前端:
frontend/config_app、frontend/cloud_app。 - 协议采集:FANUC、西门子、Modbus、OPC UA、传感器等。
- 脚本/部署:
scripts/、package.sh、scripts/migrate_edge.sh。 - 远程主机:82/87/94/97、云服务器
119.45.4.75。
核心原则
- 先只读取证据,后修改。
- 必须定位根因,禁止只修表面症状。
- 不回滚用户改动,不清空运行配置。
- 涉及远程同步默认使用既有项目脚本,不手写替代流程。
- 修改后必须给出定向验证命令和关键结果。
排查流程
1. 收集现场
按问题类型优先读取:
- Git 状态:
git status --short - 相关日志:
logs/、journalctl -u edge、journalctl -u cloud-server - 配置:
runtime/edge/config/、collector/config/、configurator/config/ - 前端:浏览器错误、接口响应、构建产物、路由
- 远程主机:
uptime、free -h、df -h、systemctl status
远程数字主机遵循 host-connection-defaults;边缘同步遵循 edge-sync-host。
2. 定位根因
优先沿真实链路追踪:
用户现象
-> 前端页面 / API
-> configurator 或 cloud_server
-> collector / agent / 脚本
-> 配置文件 / SQLite / 网络 / systemd
典型链路:
- 前端白屏:CSS -> DOM -> JS -> API -> 构建产物。
- 云端接口失败:前端代理 -> cloud_server 路由 -> 数据库/外部服务。
- 采集异常:设备配置 -> DriverRegistry -> 驱动日志 -> 协议依赖库。
- 同步后异常:构建主机架构 -> 打包产物 -> runtime 配置排除 -> systemd 重启。
3. 修复策略
- 小范围修改,不做无关重构。
- C++ 遵循
cpp-coding-style。 - 后端接口/配置遵循
backend-conventions。 - 前端遵循
frontend-ui-conventions、frontend-debug、frontend-dialog。 - Shell 遵循
shell-scripting。 - 第三方库遵循
third-party-libs。
4. 验证要求
按改动选择最小但可信的验证:
- JSON 配置:
jq empty <file> - C++ collector:
cmake --build build --target collector -j2 - configurator/cloud_server:对应 target 或项目测试脚本。
- 前端:能运行 npm 的环境执行
npm run build。 - 边缘打包:
./package.sh --edge-only - 远程部署:按用户明确要求再同步/重启。
5. 报告沉淀
复杂 Bug 或远程事故修复后,在 docs/ 下写简短报告,建议位置:
- 远程主机/设备类:
docs/鲁班猫*/ - 协议类:
collector/docs/protocols/ - 通用事故:
docs/
报告至少包含:现象、根因、修复、验证、后续预防。