eProsima / Fast-DDS-monitor

eProsima Fast DDS Monitor is a graphical desktop application aimed at monitoring DDS environments deployed using the eProsima Fast DDS library. Looking for commercial support? Contact info@eprosima.com
https://eprosima.com
GNU General Public License v3.0
40 stars 10 forks source link

Fast DDS monitor - Network Latency #159

Closed ccpjboss closed 1 year ago

ccpjboss commented 2 years ago

OS: Ubuntu 20.04 ROS 2 distro: Galactic built from source


Hello!

I am trying to use Fast DDS Monitor to monitor network latency between two hosts running in a ROS 2 network. I am able to get Fast DDS running correctly by following your documentation and tutorials.

However in you documentation it says:

For this case, we will choose FASTDDS_LATENCY. This data is called like this because it represents the time elapsed between the user call write function and the reader in the other endpoint receives it in the user callback. For the network latency there is other topic named NETWORK_LATENCY. However our endpoints are not storing neither publishing this type of data, and so it can not be monitored.

I wanted to monitor the NETWORK_LATENCY topic but it does not show up as an option. How can I enable this topic?

EduPonz commented 2 years ago

Hi @ccpjboss ,

Mind that Fast DDS needs to be built with a specific CMake flag -DFASTDDS_STATISTICS=ON to publish statistics data. You have two options here:

  1. Checkout Vulcanexus. We provide binary packages and docker images ready to use which have a statistics-ready Fast DDS.
  2. Add the flag in your ROS 2 build command either with --cmake-args while running colcon build, or use a colcon.meta file and specify the flag for the fastrtps package.
ccpjboss commented 2 years ago

Hi @EduPonz! Thank you for your reply! I did compile with that CMake flag. That is why other statistics like DDS Latency and throughput are working.

Is Vulcanexus compatible with the ROS 2 Navigation stack?