【ROS2】初级:CLI工具-使用 rqt_console 查看日志

目标:了解 rqt_console ,一种用于内省日志消息的工具。

 教程级别:初学者

 时间:5 分钟

 目录

  •  背景

  •  先决条件

  •  任务

    •  设置

    • 在 rqt_console 上的 2 条消息

    •  日志级别 3

  •  摘要

  •  下一步

 背景

rqt_console 是用于在 ROS 2 中内省日志消息的 GUI 工具。通常,日志消息会显示在您的终端上。使用 rqt_console ,您可以随着时间的推移收集这些消息,更密切、更有组织地查看它们,过滤它们,保存它们,甚至重新加载保存的文件以在不同的时间内省察。

节点使用日志以多种方式输出有关事件和状态的消息。它们的内容通常是信息性的,为了用户。

 先决条件

您将需要安装 rqt_console 和 turtlesim。

始终不要忘记在您打开的每个新终端中获取 ROS 2 的源。

任务

 1. 设置

启动 rqt_console 在新终端中使用以下命令:

ros2 run rqt_console rqt_console

打开 rqt_console 窗口:

aed2537ece79a7d1dcd81db75b917ded.png

控制台的第一部分是系统日志消息显示的地方。

在中间,您可以通过排除严重性级别来过滤消息。您还可以使用右侧的加号按钮添加更多排除过滤器。

底部区域用于突出显示包含您输入的字符串的消息。您也可以在此区域添加更多过滤器。

现在使用以下命令在新终端中启动 turtlesim :

2 消息在 rqt_console 上 

为了生成日志消息供 rqt_console 显示,让乌龟撞墙吧。在新的终端中,输入下面的 ros2 topic pub 命令(在主题教程中有详细讨论):

ros2 topic pub -r 1 /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0,y: 0.0,z: 0.0}}"

由于上述命令正在以稳定的速度发布主题,乌龟不断地撞向墙壁。在 rqt_console 中,您将反复看到带有 Warn 严重性级别的相同消息,如下:

8c0681cd56af4d3d6bbc0e8b6435bc7c.png

189506108803d767303b8e9cf9755923.png

在您运行 ros2 topic pub 命令的终端中按 Ctrl+C ,以防止您的乌龟撞墙。

3. 日志级别

ROS 2 的日志级别按严重性排序:

Fatal
Error
Warn
Info
Debug

没有确切的标准来指示每个级别代表什么,但可以安全地假设:

  • Fatal 条消息表明系统将终止运行,以保护自己免受损害。

  • Error 条消息表明存在重大问题,这些问题不一定会损坏系统,但却阻止了系统的正常运行。

  • Warn 消息表示出现了意外活动或非理想的结果,这可能代表有更深层次的问题,但并不直接损害功能性。

  • Info 条消息表示事件和状态更新,作为系统按预期运行的视觉验证。

  • Debug 条消息详细描述了系统执行的整个逐步过程。

默认级别为 Info 。您只会看到默认严重性级别及以上级别的消息。

通常,只有 Debug 消息被隐藏,因为它们是唯一比 Info 级别轻微的。例如,如果您将默认级别设置为 Warn ,您只会看到 Warn 、 Error 和 Fatal 级别的消息。

3.1 设置默认日志记录器级别 

您可以在首次运行 /turtlesim 节点时使用重映射设置默认记录器级别。在您的终端中输入以下命令:

ros2 run turtlesim turtlesim_node --ros-args --log-level WARN

现在,当您启动 turtlesim 时,您将不会看到上次在控制台中出现的初始 Info 级别消息。这是因为 Info 消息的优先级低于新的默认严重性级别 Warn 。

 摘要

如果您需要仔细检查系统的日志消息, rqt_console 可以非常有帮助。您可能出于多种原因想要检查日志消息,通常是为了找出问题所在以及导致该问题的一系列事件。

 下一步

下一个教程将教您如何使用 ROS 2 Launch 一次启动多个节点https://docs.ros.org/en/jazzy/Tutorials/Beginner-CLI-Tools/Launching-Multiple-Nodes/Launching-Multiple-Nodes.html。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值