No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/bonsairobotics/ros_health_components.git
VCS Type git
VCS Version main
Last Updated 2024-11-26
Dev Status UNMAINTAINED
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

Partial RMW shim library to instrument RMW API calls

Additional Links

No additional links.

Maintainers

  • Bonsai Robotics Engineering

Authors

No additional authors.

RMW Stats Shim

By using https://github.com/BonsaiRobotics/rmw_implementation, provides an implementation for RMW_IMPLEMENTATION_WRAPPER

Does the following:

  • 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
  • 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

Currently uses environment variables rather than Parameters system due to ease of integration.

  • ROS_TOPIC_STATISTICS_WINDOW_SIZE - how many messages to use in rolling buffer for stats (stores only timestamp information, not contents data)
    • Default: 50
  • ROS_TOPIC_STATISTICS_TOPIC_NAME - name of the topic to publish statistics on
    • Default: /topic_statistics
  • ROS_TOPIC_STATISTICS_PUBLISH_PERIOD - Interval in seconds at which to periodically publish stats
    • Default: 1.0

Usage

colcon build --packages-select rmw_implementation rmw_stats_shim
export RMW_IMPLEMENTATION=<whatever e.g. rmw_cyclonedds_cpp>
export RMW_IMPLEMENTATION_WRAPPER=rmw_stats_shim
# run any ROS 2 node/launch/etc

CHANGELOG
No CHANGELOG found.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rmw_stats_shim at Robotics Stack Exchange

No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.