2. Usage

eProsima DDS Record is a user application executed from command line.

2.1. Starting Recording Application

2.1.1. Docker Image

The recommended method to run the DDS Recorder is to instantiate a Docker container of the DDS Recorder image. Here are the instructions to download the compressed DDS Recorder Docker image and load it locally.

To run the DDS Recorder from a Docker container execute the following command:

docker run -it \
    --net=host \
    --ipc=host \
    -v /<dds_recorder_ws>/DDS_RECORDER_CONFIGURATION.yaml:/root/DDS_RECORDER_CONFIGURATION.yaml \
    ubuntu-ddsrecorder:v<X.X.X> ddsrecorder

2.1.2. Installation from sources

eProsima DDS Record depends on fastrtps, fastcdr and ddspipe libraries. In order to correctly execute the recorder, make sure that fastrtps, fastcdr and ddspipe are properly sourced.

source <path-to-fastdds-installation>/install/setup.bash
source <path-to-ddspipe-installation>/install/setup.bash
source <path-to-ddsrecorder-installation>/install/setup.bash

Note

If Fast DDS, DDS Router and DDS Recorder have been installed in the system, these libraries would be sourced by default.

To start eProsima DDS Record with a default configuration, enter:

ddsrecorder

2.2. Closing Recording Application

2.2.1. SIGINT

To close eProsima DDS Record, press Ctrl+C. eProsima DDS Record will perform a clean shutdown.

2.2.2. SIGTERM

Write command kill <pid> in a different terminal, where <pid> is the id of the process running the DDS Recorder. Use ps or top programs to check the process ids.

2.2.3. TIMEOUT

Setting a maximum amount of seconds that the application will work using argument --timeout will close the application once the time has expired.

2.3. Recording Service Command-Line Parameters

The DDS Recorder application supports several input arguments:

Command

Description

Option

Possible Values

Default Value

Help

It shows the usage information
of the application.

-h
--help

Version

It shows the current version
of the DDS Recorder and the
hash of the last commit of
the compiled code.

-v
--version

Configuration File

Configuration file path.

-c
--config-path

./DDS_RECORDER_CONFIGURATION.yaml

Reload Timer

The configuration file will be
automatically reloaded
according to the specified
time period.

-r
--reload-time

Unsigned Integer

0

Timeout

Set a maximum time while the
application will be running.
0` means that the application
will run forever (until kill
via signal).

-t
--timeout

Unsigned Integer

0

Debug

Enables the DDS Recorder
logs so the execution can be
followed by internal
debugging information.
Sets Log Verbosity
to info and
Log Filter
to DDSRECORDER.

-d
--debug

Log Verbosity

Set the verbosity level so
only log messages with equal
or higher importance level
are shown.

--log-verbosity

info
warning
error

warning

Log Filter

Set a regex string as filter.

--log-filter

String

"DDSRecorder"