使用跟踪工具构建ROS 2 [175]

本指南介绍了如何使用``ros2_tracing``提供的跟踪工具构建ROS 2。更多信息请参见`存储库 <https://github.com/ros2/ros2_tracing>`__。 [176]

ROS 2源代码中包含了工具仪器。然而,如果使用二进制文件或从源代码构建时,默认情况下工具仪器不会触发跟踪点。要获取跟踪点,需要安装LTTng跟踪器,然后重新从源代码构建ROS 2的一部分。 [177]

注解

本指南仅适用于Linux系统,并假设使用的是Ubuntu。 [178]

先决条件 [15647]

设置您的系统以从源代码构建ROS 2。有关更多信息,请参阅:doc:源安装页面[180]

安装追踪器 [181]

安装 LTTng追踪器 及其相关工具和依赖项。 [182]

sudo apt-get update
sudo apt-get install -y lttng-tools liblttng-ust-dev python3-lttng python3-babeltrace babeltrace

这只安装了LTTng用户空间追踪器,而不安装LTTng内核追踪器,因为它不需要跟踪ROS 2应用程序。 [183]

构建中 [184]

这一步取决于您是从源代码构建ROS 2还是使用ROS 2二进制文件。 [185]

使用源代码安装 [186]

如果在安装LTTng之前已经 从源代码构建了ROS 2,您将需要重新构建至少到 tracetools 软件包: [187]

cd ~/ws
colcon build --packages-up-to tracetools --cmake-force-configure

使用二进制安装 [188]

如果您依赖于ROS 2二进制文件(Debian packages <../Installation/Ubuntu-Install-Debians>`或:doc:"fat" archive <../Installation/Alternatives/Ubuntu-Install-Binary>`),您需要将``ros2_tracing``存储库克隆到您的工作空间中,并至少构建到``tracetools``包为止: [189]

cd ~/ws/src
git clone https://github.com/ros2/ros2_tracing.git
cd ../
colcon build --packages-up-to tracetools

正在验证 [190]

源代码并验证跟踪已启用: [191]

cd ~/ws
source install/setup.bash
ros2 run tracetools status

它应该打印出: [192]

Tracing enabled

如果打印出其他内容,那么出现了错误。 [193]

禁用跟踪 [194]

如果在构建``tracetools``时安装并找到了LTTng用户空间跟踪器,将自动启用跟踪。或者,要从ROS 2中构建并完全删除跟踪点和跟踪工具,将``TRACETOOLS_DISABLED`` CMake选项设置为``ON``: [195]

colcon build --cmake-args -DTRACETOOLS_DISABLED=ON --no-warn-unused-cli