![]() |
rmw_stats_shim package from graph_monitor repormw_stats_shim rosgraph_monitor rosgraph_monitor_msgs |
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-tooling/graph-monitor.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-04-09 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Bonsai Robotics Engineering
Authors
RMW Stats Shim
Depends on a modified version of rmw_implementation
to provide topic statistics calculation within the RMW layer of each node, without having to instrument application code.
This component
- Wraps & intercepts some RMW API calls
- Calculates “published period” statistics for every Publisher
- Calculates “received period” statistics for every Subscription
- Calculates “take age” statistics for every Subscription
- This is the different between publish system timestamp and the time at which
rmw_take
is called, so is the sum of network latency plus executor latency
- This is the different between publish system timestamp and the time at which
- Creates a
/topic_statistics
Publisher for every Node and publishes to it periodically about the statistics from within the node
Key points:
- Requires no subscriptions, no extra copies, to do statistics on all topics
- Requires no modification to application code to use
Configuration
Set the following environment variables before launching a node to configure topic statistics
- Required:
RMW_IMPLEMENTATION_WRAPPER=rmw_stats_shim
-
ROS_TOPIC_STATISTICS_WINDOW_SIZE
- how many messages to use in rolling buffer for stats (stores only timestamp information, not contents data)- Default:
50
- Default:
-
ROS_TOPIC_STATISTICS_TOPIC_NAME
- name of the topic to publish statistics on- Default:
/topic_statistics
- Default:
-
ROS_TOPIC_STATISTICS_PUBLISH_PERIOD
- Interval in seconds at which to periodically publish stats- Default:
1.0
- Default:
Usage
colcon build --packages-select rmw_implementation rmw_stats_shim
source install/setup.bash
export RMW_IMPLEMENTATION_WRAPPER=rmw_stats_shim
# run any ROS 2 node/launch/etc
Changelog for package rmw_stats_shim
0.1.1 (2025-04-09)
- Initial package setup
- Contributors: Emerson Knapp
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
ament_lint_auto | |
ament_lint_common | |
rosgraph_monitor_msgs | |
rosidl_runtime_cpp | |
rosidl_typesupport_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged rmw_stats_shim at Robotics Stack Exchange
![]() |
rmw_stats_shim package from graph_monitor repormw_stats_shim rosgraph_monitor rosgraph_monitor_msgs |
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-tooling/graph-monitor.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-04-09 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Bonsai Robotics Engineering
Authors
RMW Stats Shim
Depends on a modified version of rmw_implementation
to provide topic statistics calculation within the RMW layer of each node, without having to instrument application code.
This component
- Wraps & intercepts some RMW API calls
- Calculates “published period” statistics for every Publisher
- Calculates “received period” statistics for every Subscription
- Calculates “take age” statistics for every Subscription
- This is the different between publish system timestamp and the time at which
rmw_take
is called, so is the sum of network latency plus executor latency
- This is the different between publish system timestamp and the time at which
- Creates a
/topic_statistics
Publisher for every Node and publishes to it periodically about the statistics from within the node
Key points:
- Requires no subscriptions, no extra copies, to do statistics on all topics
- Requires no modification to application code to use
Configuration
Set the following environment variables before launching a node to configure topic statistics
- Required:
RMW_IMPLEMENTATION_WRAPPER=rmw_stats_shim
-
ROS_TOPIC_STATISTICS_WINDOW_SIZE
- how many messages to use in rolling buffer for stats (stores only timestamp information, not contents data)- Default:
50
- Default:
-
ROS_TOPIC_STATISTICS_TOPIC_NAME
- name of the topic to publish statistics on- Default:
/topic_statistics
- Default:
-
ROS_TOPIC_STATISTICS_PUBLISH_PERIOD
- Interval in seconds at which to periodically publish stats- Default:
1.0
- Default:
Usage
colcon build --packages-select rmw_implementation rmw_stats_shim
source install/setup.bash
export RMW_IMPLEMENTATION_WRAPPER=rmw_stats_shim
# run any ROS 2 node/launch/etc
Changelog for package rmw_stats_shim
0.1.1 (2025-04-09)
- Initial package setup
- Contributors: Emerson Knapp
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
ament_lint_auto | |
ament_lint_common | |
rosgraph_monitor_msgs | |
rosidl_runtime_cpp | |
rosidl_typesupport_cpp |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged rmw_stats_shim at Robotics Stack Exchange
![]() |
rmw_stats_shim package from graph_monitor repormw_stats_shim rosgraph_monitor rosgraph_monitor_msgs |
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-tooling/graph-monitor.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-04-09 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Bonsai Robotics Engineering
Authors
RMW Stats Shim
Depends on a modified version of rmw_implementation
to provide topic statistics calculation within the RMW layer of each node, without having to instrument application code.
This component
- Wraps & intercepts some RMW API calls
- Calculates “published period” statistics for every Publisher
- Calculates “received period” statistics for every Subscription
- Calculates “take age” statistics for every Subscription
- This is the different between publish system timestamp and the time at which
rmw_take
is called, so is the sum of network latency plus executor latency
- This is the different between publish system timestamp and the time at which
- Creates a
/topic_statistics
Publisher for every Node and publishes to it periodically about the statistics from within the node
Key points:
- Requires no subscriptions, no extra copies, to do statistics on all topics
- Requires no modification to application code to use
Configuration
Set the following environment variables before launching a node to configure topic statistics
- Required:
RMW_IMPLEMENTATION_WRAPPER=rmw_stats_shim
-
ROS_TOPIC_STATISTICS_WINDOW_SIZE
- how many messages to use in rolling buffer for stats (stores only timestamp information, not contents data)- Default:
50
- Default:
-
ROS_TOPIC_STATISTICS_TOPIC_NAME
- name of the topic to publish statistics on- Default:
/topic_statistics
- Default:
-
ROS_TOPIC_STATISTICS_PUBLISH_PERIOD
- Interval in seconds at which to periodically publish stats- Default:
1.0
- Default:
Usage
colcon build --packages-select rmw_implementation rmw_stats_shim
source install/setup.bash
export RMW_IMPLEMENTATION_WRAPPER=rmw_stats_shim
# run any ROS 2 node/launch/etc
Changelog for package rmw_stats_shim
0.1.1 (2025-04-09)
- Initial package setup
- Contributors: Emerson Knapp
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
ament_cmake | |
ament_lint_auto | |
ament_lint_common | |
rosgraph_monitor_msgs | |
rosidl_runtime_cpp | |
rosidl_typesupport_cpp |