一、工具安装与基本操作
1. 安装 CLI 工具
- 命令:
cargo install iceoryx2-cli - 查看子命令:
iox2 --list
二、服务与节点发现
1. 节点管理
- 列出所有节点:
iox2 node list - 查看节点详情:
iox2 node details <节点ID/名称/PID>- 节点 ID 是一个长十六进制数字(例如
00000000067ab750000005550000dcf7)
- 节点 ID 是一个长十六进制数字(例如
2. 服务管理
- 列出所有服务:
iox2 service list
三、调试方法
1. 数据透视
- 订阅服务数据(查看实时数据流):
iox2 service subscribe "distance_to_obstacle" - 监听服务通知(检查通知是否送达):
iox2 service listen "distance_to_obstacle" 2. 数据注入
- 发送事件通知(用于直接触发服务响应):
iox2 service notify --event-id 5 --num 10 distance_to_obstacle - 手动发布测试数据:
- 需要先获取数据类型的十六进制表示。
- 示例:
iox2 service publish -d IOX2DUMP --type-name Distance --type-size 16 \
--type-alignment 8 --type-variant FIXEDSIZE --repetitions 10 \
--message "09 00 00 00 1b 00 00 00 ae 47 e1 7a 14 8d bc 40" \
distance_to_obstacle 3. 数据录制与回放
- 录制数据流(默认 10 秒):
iox2 service record -t 10 -o record.dat "distance_to_obstacle" - 播放录制数据:
iox2 service replay -i record.dat - 文件结构:
- 元数据(服务信息、消息模式等)
- 十六进制格式的有效载荷数据(带时间戳)
🧠 核心价值
- 观测工具:帮助排查节点或服务的异常状态。
- 调试支持:可以通过注入数据制造场景,辅助问题定位。
- 可重复测试:录制现场数据并回放,用于测试场景(如验证算法修复后的行为)。
✅ 适用场景
- 节点或服务出现异常表现
- 数据未按预期发送
- 需要离线测试或验证修复
- 急需模拟特定情境以定位问题
🔗 相关文章章节:
iceoryx2 Book → Command Line Tools and Debugging
希望这份总结可以帮你快速理解和运用 iceoryx2 的调试工具!