第5章 监控与回归测试:日志收集 · 代码覆盖率 · 静态分析 · 质量门
在前四章中,我们实现了从环境搭建、流水线编译、自动化测试到 OTA 发布的闭环。本章聚焦“持续监控 与 回归测试”环节,旨在让您的嵌入式项目不仅能自动构建和交付,更能实时感知运行状况,并通过代码覆盖率、静态分析和质量门来阻断风险,保证每一次变更都在可控范围之内。
5.1 日志收集与可视化
5.1.1 为什么要做日志监控
-
端到端可视:设备上线后、真实环境中运行状况一目了然。
-
故障排查:快速定位异常发生阶段与原因。
-
指标量化:借助图表量化关键性能指标(如启动时间、错误率、内存占用)。
5.1.2 架构与组件选型
组件 | 功能 | 选型建议 |
---|---|---|
采集 Agent | 将嵌入式设备日志汇聚到中心化平台 | 使用 Fluentd(轻量)、Filebeat(Elastic 提供) |
传输通道 | 将日志送入消息队列或存储服务 | TCP/UDP、MQTT、HTTP API |
存储与索引 | 长期存储与全文检索 | Elasticsearch |
可视化 | 实时仪表盘与警报 | Kibana 或 Grafana |
5.1.3 嵌入式设备端日志策略
-
串口输出
-
将关键日志(INFO/ERROR/WARNING)通过 UART 输出,CI 中或网关设备接收。
-
格式化:采用 JSON-Lines 格式,便于后端解析:
{"timestamp":"2025-05-18T10:00:00Z","level":"INFO","module":"sensor","msg":"温度采集成
-