Skip to content

Commit 343836e

Browse files
authored
Update Use Case: How to use eProsima DDS Record and Replay (#927)
* Update Use Cases eProsima DDS Record and Replay Signed-off-by: Denisa <denisa@eprosima.com> * Fix documentation to pass doc8-test Signed-off-by: Denisa <denisa@eprosima.com> * Add review comments to python_requirements.rst Signed-off-by: Denisa <denisa@eprosima.com> --------- Signed-off-by: Denisa <denisa@eprosima.com>
1 parent 3ee0df8 commit 343836e

File tree

6 files changed

+113
-263
lines changed

6 files changed

+113
-263
lines changed
Loading
Loading

docs/04-common/python_requirements.rst

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ SWIG
55

66
SWIG_ is a development tool that allows connecting programs written in C/C++ with a variety of
77
other programming languages, among them Python.
8-
SWIG 4.0 is required in order to build Fast DDS Python bindings.
8+
SWIG version lower than 4.2 is required to build Fast DDS Python bindings.
99

1010
.. note::
1111

@@ -21,6 +21,14 @@ For Ubuntu, please run:
2121
2222
sudo apt install swig
2323
24+
.. warning::
25+
26+
For Ubuntu 24.04, SWIG_ must be installed using the following command:
27+
28+
.. code-block:: bash
29+
30+
sudo apt install swig4.1
31+
2432
.. end-swig
2533
2634
.. begin-libpython-dev
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
.. include:: ../../../03-exports/aliases.include
2+
.. include:: ../../../03-exports/aliases-api.include
3+
.. include:: ../../../03-exports/roles.include
4+
5+
.. _dds_record_and_replay:
6+
7+
How to use eProsima DDS Record and Replay
8+
=========================================
9+
10+
`eProsima DDS Record and Replay <https://github.com/eProsima/DDS-Record-Replay>`_ is an end-user software application
11+
that efficiently saves DDS data published into a DDS environment in a MCAP format database.
12+
Thus, the exact playback of the recorded network events is possible as the data is linked to the
13+
timestamp at which the original data was published. This facilitates the debugging of DDS networks.
14+
15+
Getting started
16+
---------------
17+
18+
eProsima DDS Record & Replay includes the following tools:
19+
20+
- **DDS Recorder tool**: This tool's primary function is to store data in an MCAP database,
21+
including the publication timestamp, serialized data, and its format.
22+
The output MCAP file can be read by any compatible tool,
23+
as it contains all necessary information for data reproduction.
24+
25+
- **DDS Remote Controller tool**: This application enables remote control of the recording tool,
26+
allowing a user to start, stop, or pause data recording from another device.
27+
28+
- **DDS Replay tool**: This application allows replay of DDS traffic recorded with a DDS Recorder.
29+
Users can select messages to replay by setting a time range or by blocking/whitelisting specific topics.
30+
They can also adjust the playback rate and use different topic QoS settings from the original recording.
31+
32+
Prerequisites
33+
^^^^^^^^^^^^^
34+
35+
`eProsima DDS Record and Replay <https://github.com/eProsima/DDS-Record-Replay>`_ depends on
36+
eProsima Fast DDS library and certain Debian packages.
37+
For further information, please refer to the
38+
`installation guide <https://dds-recorder.readthedocs.io/en/latest/rst/installation/docker.html#docker>`_.
39+
40+
Furthermore, the example provided in this section requires
41+
`ShapesDemo <https://eprosima-shapes-demo.readthedocs.io/en/latest/index.html>`_
42+
to publish and subscribe shapes of different colors and sizes.
43+
44+
Example of usage: Recording Application
45+
---------------------------------------
46+
47+
This example will serve as a hands-on tutorial, aimed at introducing some of the key concepts and
48+
features that eProsima DDS Record & Replay recording application offers.
49+
50+
Start ShapesDemo
51+
^^^^^^^^^^^^^^^^
52+
53+
Let us launch a ShapesDemo instance and start publishing in topics ``Square`` with default settings.
54+
55+
.. figure:: /01-figures/fast_dds/recorder_shapesdemo_publisher.png
56+
:align: center
57+
:scale: 75 %
58+
59+
Recorder configuration
60+
^^^^^^^^^^^^^^^^^^^^^^
61+
62+
``ddsrecorder`` runs with default configuration settings.
63+
This default configuration records all messages of all DDS Topics found in
64+
DDS Domain ``0`` in the ``output_YYYY-MM-DD-DD_hh-mm-ss.mcap`` file.
65+
66+
Additionally, it is possible to change the default configuration parameters by means of a YAML configuration file.
67+
68+
.. note::
69+
Please refer to `Configuration <https://dds-recorder.readthedocs.io/en/latest/rst/recording/usage/configuration.html#recorder-usage-configuration>`_
70+
for more information on how to configure a ``ddsrecorder``.
71+
72+
Recorder execution
73+
^^^^^^^^^^^^^^^^^^
74+
75+
To start recording, execute the following command:
76+
77+
.. code-block:: bash
78+
79+
ddsrecorder
80+
81+
In order to know all the possible arguments supported by this tool, use the command:
82+
83+
.. code-block:: bash
84+
85+
ddsrecorder --help
86+
87+
88+
Let us launch a ShapesDemo instance and start publishing in topics ``Square`` with default settings.
89+
90+
.. figure:: /01-figures/fast_dds/recorder_shapesdemo_exec.png
91+
92+
Stop the recorder with ``Ctrl+C`` and check that the MCAP file exists.
93+
94+
Next Steps
95+
==========
96+
97+
The usage of the DDS Remote Controller and DDS Replay tools follows
98+
the same steps as the DDS Recorder tool.
99+
100+
For further information, please refer to the
101+
`eProsima DDS Record and Replay documentation
102+
<https://dds-recorder.readthedocs.io/en/latest/index.html>`_.

docs/fastdds/use_cases/rosbag_capture/rosbag_capture.rst

Lines changed: 0 additions & 260 deletions
This file was deleted.

0 commit comments

Comments
 (0)