ROS 2 日志的三种面孔:90%的排查低效都源于混淆它们
很多 ROS 2 开发者在排查问题时,第一反应就是去ros2_ws/log里大海捞针。
其实,ROS 2 的"日志"并不是一个整体,而是由三个完全不同的机制产生、服务于不同问题域的系统。把它们混为一谈,不仅浪费大量时间,甚至会导致错误的排查方向。
一、先建立认知:ROS 2 的"日志"不是一个东西
很多排查低效的根因,是把三类日志当成了一件事。实际上它们由不同的机制产生、服务于不同的问题域。
| 优先级 | 类型 | 默认路径 | 产生者 | 解决什么问题 |
|---|---|---|---|---|
| ★★★ | 业务运行日志 | 自定义,如/tmp/monitor_demo.log | 开发者代码 | 逻辑对不对:周期是否达标、有无阻塞、异常归因 |
| ★★☆ | 系统运行日志 | ~/.ros/log/ | ROS 2 运行时 | 节点是否意外退出、启动是否成功 |
| ★☆☆ |