第30章:系统监控与维护

运维 (Operations) 是物联网项目生命周期中最长的一环。

30.1 设备健康度模型

不要只看“在线/离线”,要量化设备的健康状况。

  • 指标维度
    • 信号质量:RSSI < -90dBm 为“差”。
    • 掉线频率:每天掉线 > 5次 为“不稳定”。
    • 电池电压:< 3.5V 为“低电量”。
    • 重启原因:看门狗复位、Brownout(欠压)复位。
  • 评分系统:综合上述指标,给每台设备打分(0-100)。低于 60 分的列入“重点观察名单”。

30.2 远程日志 (Remote Logging)

设备出问题时,如果还要派人去现场插串口线看日志,成本就太高了。

  • 日志分级ERROR, WARN, INFO, DEBUG。默认只上传 ERROR 级别。
  • 动态调整:云端下发指令,临时开启某台设备的 DEBUG 级别日志上传,定位问题后再关闭。
  • 存储:日志通常是非结构化文本,适合存入 Elasticsearch (ELK Stack) 或 Loki。

30.3 远程调试 (Remote Debugging)

  • 远程 SSH/Shell
    • 对于 Linux 网关,可以通过反向隧道(如 FRP, Ngrok)建立 SSH 连接。
    • 安全警告:必须严格鉴权!
  • 云端诊断命令
    • 利用 MQTT 下发诊断指令(如 ping www.baidu.com, get_memory_usage),设备执行后返回结果。

30.4 巡检与 SLA

  • 自动化巡检:每天凌晨跑脚本,统计全网设备在线率、数据完整率。
  • **SLA (服务等级协议)**:对客户承诺的可用性(如 99.9%)。
    • 计算公式可用性 = (总时间 - 故障时间) / 总时间

即使有监控,故障依然会发生。下一章我们将总结常见的故障排查经验。

« 上一篇 设备部署策略 下一篇 » 故障排查与优化