From 343836ebbe2655134e3b4e309255afea5255e76a Mon Sep 17 00:00:00 2001 From: Denisa Alexandru <104530408+depink5@users.noreply.github.com> Date: Tue, 8 Oct 2024 07:18:28 +0200 Subject: [PATCH] Update Use Case: How to use eProsima DDS Record and Replay (#927) * Update Use Cases eProsima DDS Record and Replay Signed-off-by: Denisa * Fix documentation to pass doc8-test Signed-off-by: Denisa * Add review comments to python_requirements.rst Signed-off-by: Denisa --------- Signed-off-by: Denisa --- .../fast_dds/recorder_shapesdemo_exec.png | Bin 0 -> 116958 bytes .../recorder_shapesdemo_publisher.png | Bin 0 -> 30734 bytes docs/04-common/python_requirements.rst | 10 +- .../dds_record_and_replay.rst | 102 +++++++ .../rosbag_capture/rosbag_capture.rst | 260 ------------------ docs/fastdds/use_cases/use_cases.rst | 4 +- 6 files changed, 113 insertions(+), 263 deletions(-) create mode 100644 docs/01-figures/fast_dds/recorder_shapesdemo_exec.png create mode 100644 docs/01-figures/fast_dds/recorder_shapesdemo_publisher.png create mode 100644 docs/fastdds/use_cases/dds_record_and_replay/dds_record_and_replay.rst delete mode 100644 docs/fastdds/use_cases/rosbag_capture/rosbag_capture.rst diff --git a/docs/01-figures/fast_dds/recorder_shapesdemo_exec.png b/docs/01-figures/fast_dds/recorder_shapesdemo_exec.png new file mode 100644 index 0000000000000000000000000000000000000000..1b3dbaf9f9bcdcfb05c36bce2b1e6a43034c8c99 GIT binary patch literal 116958 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

b2EBgtP1*Cia8NziS)__`IA4ddFyoCgKD#%!r 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%0D3E5kAl&~;1qe3`P% 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 is an end-user software application +that efficiently saves DDS data published into a DDS environment in a MCAP format database. +Thus, the exact playback of the recorded network events is possible as the data is linked to the +timestamp at which the original data was published. This facilitates the debugging of DDS networks. + +Getting started +--------------- + +eProsima DDS Record & Replay includes the following tools: + +- **DDS Recorder tool**: This tool's primary function is to store data in an MCAP database, + including the publication timestamp, serialized data, and its format. + The output MCAP file can be read by any compatible tool, + as it contains all necessary information for data reproduction. + +- **DDS Remote Controller tool**: This application enables remote control of the recording tool, + allowing a user to start, stop, or pause data recording from another device. + +- **DDS Replay tool**: This application allows replay of DDS traffic recorded with a DDS Recorder. + Users can select messages to replay by setting a time range or by blocking/whitelisting specific topics. + They can also adjust the playback rate and use different topic QoS settings from the original recording. + +Prerequisites +^^^^^^^^^^^^^ + +`eProsima DDS Record and Replay `_ depends on +eProsima Fast DDS library and certain Debian packages. +For further information, please refer to the +`installation guide `_. + +Furthermore, the example provided in this section requires +`ShapesDemo `_ +to publish and subscribe shapes of different colors and sizes. + +Example of usage: Recording Application +--------------------------------------- + +This example will serve as a hands-on tutorial, aimed at introducing some of the key concepts and +features that eProsima DDS Record & Replay recording application offers. + +Start ShapesDemo +^^^^^^^^^^^^^^^^ + +Let us launch a ShapesDemo instance and start publishing in topics ``Square`` with default settings. + +.. figure:: /01-figures/fast_dds/recorder_shapesdemo_publisher.png + :align: center + :scale: 75 % + +Recorder configuration +^^^^^^^^^^^^^^^^^^^^^^ + +``ddsrecorder`` runs with default configuration settings. +This default configuration records all messages of all DDS Topics found in +DDS Domain ``0`` in the ``output_YYYY-MM-DD-DD_hh-mm-ss.mcap`` file. + +Additionally, it is possible to change the default configuration parameters by means of a YAML configuration file. + +.. note:: + Please refer to `Configuration `_ + for more information on how to configure a ``ddsrecorder``. + +Recorder execution +^^^^^^^^^^^^^^^^^^ + +To start recording, execute the following command: + +.. code-block:: bash + + ddsrecorder + +In order to know all the possible arguments supported by this tool, use the command: + +.. code-block:: bash + + ddsrecorder --help + + +Let us launch a ShapesDemo instance and start publishing in topics ``Square`` with default settings. + +.. figure:: /01-figures/fast_dds/recorder_shapesdemo_exec.png + +Stop the recorder with ``Ctrl+C`` and check that the MCAP file exists. + +Next Steps +========== + +The usage of the DDS Remote Controller and DDS Replay tools follows +the same steps as the DDS Recorder tool. + +For further information, please refer to the +`eProsima DDS Record and Replay documentation +`_. diff --git a/docs/fastdds/use_cases/rosbag_capture/rosbag_capture.rst b/docs/fastdds/use_cases/rosbag_capture/rosbag_capture.rst deleted file mode 100644 index 7a58b7d5d..000000000 --- a/docs/fastdds/use_cases/rosbag_capture/rosbag_capture.rst +++ /dev/null @@ -1,260 +0,0 @@ -.. include:: ../../../03-exports/aliases.include -.. include:: ../../../03-exports/aliases-api.include -.. include:: ../../../03-exports/roles.include - -.. _rosbag_capture: - -How to use eProsima DDS Record and Replay (rosbag2 and DDS) -=========================================================== - -*eProsima DDS Record and Replay* allows the user to continuously monitor the ROS 2 traffic in real time, -and to play it back at any given time. -This highly contributes to facilitating simulation of real life conditions, -application testing, optimizing data analysis and general troubleshooting. -`rosbag2 `_ is a ROS 2 application that can be used to capture DDS messages -and store them on an SQLite database which allows inspecting and replaying said messages at a later time. - -rosbag2 interactions with a native Fast DDS application -------------------------------------------------------- - -Using rosbag2 to capture traffic between ROS 2 talkers and listeners is straightforward. -However, recording and replaying messages sent by Fast DDS participants outside ROS 2 ecosystem requires some -modifications. - -Prerequisites -^^^^^^^^^^^^^ - -A Fast DDS installation, either binary or from sources is required. -Fast DDS-Gen is also required for generating the examples and Fast DDS TypeSupport from the IDL file. -A ROS 2 installation with the rosbag2 package is needed as well. - -DDS IDL interoperability with ROS 2 messages -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -DDS uses IDLs to define the data model being exchanged by the applications. -While ROS 2 can use IDL files to define the messages, there are some rules that these IDL files must follow so -compatibility between ROS 2 and Fast DDS native applications can be achieved. -Specifically, the type definition must be nested inside the type module name and then the generator to be used. -For ROS 2 messages, the generator would be ``msg``, whereas in this case, the ``idl`` generator must be used. -Assuming that the type module name selected is ``fastdds_record_typesupport`` the following ``HelloWorld.idl`` -file could be defined. -This IDL file will be the one used in the following steps. - -.. code-block:: omg-idl - - module fastdds_record_typesupport - { - module idl - { - struct HelloWorld - { - unsigned long index; - string message; - }; - }; - }; - -By default, rosbag2 can only recognize those Topics which types ROS 2 has already defined in its different TypeSupport -libraries. -Therefore, a new ROS 2 TypeSupport module library generated with the previously defined types must be created, -so rosbag2 would be able to parse the message contents coming from the Fast DDS application. -First, the new ROS 2 TypeSupport package should be created. -Follow the instructions below, after having sourced your ROS 2 installation: - -.. code-block:: bash - - ros2 pkg create --build-type ament_cmake fastdds_record_typesupport - -This command will create a new ROS 2 package named ``fastdds_record_typesupport`` with the following folder structure: - -.. code-block:: shell-session - - . - └── fastdds_record_typesupport - ├── include - │ └── fastdds_record_typesupport - ├── src - ├── CMakeLists.txt - └── package.xml - -ROS 2 TypeSupport code generators expect IDL files inside their own idl folder, so the final folder structure would be -like this: - -.. code-block:: shell-session - - . - └── fastdds_record_typesupport - ├── idl - │ └── HelloWorld.idl - ├── include - │ └── fastdds_record_typesupport - ├── src - ├── CMakeLists.txt - └── package.xml - -In order to generate the TypeSupport interfaces required, the CMakeLists.txt file should be modified accordingly so the -ROS 2 TypeSupport generator is called. -Please add the following lines to the CMakeLists.txt file before calling ``ament_package()``: - -.. code-block:: cmake - - find_package(rosidl_default_generators REQUIRED) - - set(idl_files - "idl/HelloWorld.idl" - ) - - rosidl_generate_interfaces(${PROJECT_NAME} - ${idl_files} - ) - -Similarly, the ``package.xml`` file should be modified adding the ROS 2 TypeSupport generator dependency. -Add the following lines to the ``package.xml`` file after the ``buildtool_depend`` tags: - -.. code-block:: bash - - rosidl_default_generators - rosidl_default_runtime - rosidl_interface_packages - -The last step would be to build the package. -Run the following command within the ``fastdds_record_typesupport`` folder: - -.. code-block:: bash - - RMW_IMPLEMENTATION=rmw_fastrtps_cpp colcon build - -The build process will create inside the install folder a new ROS 2 overlay with all the required -libraries and scripts for the ROS 2 applications to use te type defined in the IDL file. - -Fast DDS Application tuning -^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -ROS 2 adds special tokens to the topic names depending on the ROS 2 subsystem the topic belongs to. -More information on this topic can be found `on ROS 2 design documentation -`_ . - -Using the same IDL file defined earlier, Fast DDS-Gen can generate the required code to handle the new type in -Fast DDS. -The changes required in the Fast DDS application so rosbag2 can communicate with it are going to be illustrated via the -Publisher/Subscriber example generated automatically from an IDL using Fast DDS-Gen. -An in-depth guide to Fast DDS-Gen can be found -`here `_. - -In the case of plain topics, the namespace "rt/" is added by ROS 2 to the DDS topic name. -DataType names for ROS 2 generated types are structured concatenating the modules names. -For the IDL being used in this example the data type name would be "fastdds_record_typesupport::idl::HelloWorld". - -Create a new workspace different from the ROS 2 one used previously. -Copy inside the same IDL file and run Fast DDS-Gen to generate -the TypeSupport and the example source files. - -.. important:: - - If using Fast DDS *v3.0.0* or newer and generating the type with Fast DDS-Gen *v4.0.0*, the extensibility - must be explicitly marked as ``@extensibility(FINAL)`` in idl structs. - Starting from Fast DDS-Gen *v4.0.1*, it can be left unspecified, as it defaults to ``@final``. - Please, refer to :ref:`Fast DDS data types extensibility ` for further information about type - extensibility. - -.. note:: - - Fast DDS-Gen :code:`-no-typeobjectsupport` option is advisable to be enabled as this feature does not ensure vendor - interoperability for the moment. - -.. code-block:: bash - - mkdir HelloWorldExample - cd HelloWorldExample - cp /fastdds_record_typesupport/idl/HelloWorld.idl . - fastddsgen -example CMake -typeros2 -no-typeobjectsupport HelloWorld.idl - -This command will populate the current folder with the required header and source files to build the TypeSupport, -and the Publisher and Subscriber applications. - -.. code-block:: shell-session - - └── HelloWorldExample -    ├── CMakeLists.txt -    ├── HelloWorldCdrAux.hpp -    ├── HelloWorldCdrAux.ipp -    ├── HelloWorld.hpp -    ├── HelloWorld.idl -    ├── HelloWorldPublisher.cxx -    ├── HelloWorldPublisher.h -    ├── HelloWorldPubSubMain.cxx -    ├── HelloWorldPubSubTypes.cxx -    ├── HelloWorldPubSubTypes.h -    ├── HelloWorldSubscriber.cxx -    └── HelloWorldSubscriber.h - -The Fast DDS-Gen example should be modified taking into account the topic and type name mangling -applied by ROS 2 so communication can be established with rosbag2. -Having used the ``-typeros2`` Fast DDS-Gen option when generating the TypeSupport, the generated type -name would already include the ROS 2 naming rule mangling. -However, the topic name must be modified manually both in the Publisher and Subscriber applications. -Look for the ``create_topic`` command in both the ``HelloWorldPublisher.cxx`` and the ``HelloWorldSubscriber.cxx`` -files and modify the topic name: - -.. literalinclude:: /../code/DDSCodeTester.cpp - :language: c++ - :start-after: //CREATE THE TOPIC FOR ROSBAG - :end-before: //! - :dedent: 4 - -To build this example run the following commands: - -.. code-block:: bash - - mkdir build && cd build - cmake .. - make - -This will create a HelloWorld binary file inside the build directory that can be used to launch both the Publisher -and the Subscriber applications. -Run each application in a terminal and confirm that the communication is established. - -.. code-block:: bash - - ./HelloWorld publisher|subscriber - - -eProsima DDS Record and Replay -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -In order to use the generated ROS 2 TypeSupport package, the ROS 2 workspace should be sourced besides the -ROS 2 installation. -This allows rosbag2 to record the data types used in this example. -To start recording the traffic being exchanged between the Publisher/Subscriber applications the corresponding -ROS 2 Topic name has to be passed to rosbag2 (not to be mistaken with the DDS Topic name). -Remember also to ensure that Fast DDS is the ROS 2 middleware being used by setting the environment variable -``RMW_IMPLEMENTATION``. - -.. code-block:: bash - - export RMW_IMPLEMENTATION=rmw_fastrtps_cpp - source /fastdds_record_typesupport/install/setup.bash - ros2 bag record /HelloWorldTopic - -Having the Publisher application running already, the following rosbag2 log discovery info would be shown: - -.. code-block:: bash - - [INFO] [1644320308.422161532] [rosbag2_recorder]: Subscribed to topic '/HelloWorldTopic' - [INFO] [1644320308.422292205] [rosbag2_recorder]: All requested topics are subscribed. Stopping discovery... - -rosbag2 will proceed to create a folder named ``rosbag2_`` with an SQLite database inside (``db3`` extension) -where the received messages will be recorded. -Within the folder a ``YAML`` file provides metadata information about the record: type and topic name, number of -messages recorded, record duration, etc. -The path to this database file can be used to replay the recorded messages. -Having the Subscriber application running, the previously recorded traffic will be replayed. -After stopping the rosbag2 application, rerun it in replay mode running the following command. -The recorded messages will be published by rosbag2 at their original publishing rate and the Subscriber application -will receive them: - -.. code-block:: bash - - export RMW_IMPLEMENTATION=rmw_fastrtps_cpp - source /fastdds_record_typesupport/install/setup.bash - ros2 bag play diff --git a/docs/fastdds/use_cases/use_cases.rst b/docs/fastdds/use_cases/use_cases.rst index a55848155..3b69f2e65 100644 --- a/docs/fastdds/use_cases/use_cases.rst +++ b/docs/fastdds/use_cases/use_cases.rst @@ -89,7 +89,7 @@ with distributed systems: this documentation includes a whole independent section to show the use of the library in ROS 2, and how to take full advantage of *Fast DDS* wide set of capabilities in a ROS 2 project. -+ :ref:`rosbag_capture`. ++ :ref:`dds_record_and_replay`. Instructions on how to tune your application to be able to record and replay your DDS messages using ROS 2 rosbag2 package. @@ -117,6 +117,6 @@ with distributed systems: /fastdds/use_cases/unique_network_flows/unique_network_flows.rst /fastdds/use_cases/statistics_module/statistics_module.rst /fastdds/use_cases/dynamic_network_interfaces/dynamic_network_interfaces.rst - /fastdds/use_cases/rosbag_capture/rosbag_capture.rst + /fastdds/use_cases/dds_record_and_replay/dds_record_and_replay.rst /fastdds/use_cases/request_reply/request_reply.rst /fastdds/use_cases/remote_type_discovery_matching/remote_type_discovery_matching.rst