... | @@ -1259,7 +1259,10 @@ The DDS monitor _fastdds_monitor_ can show all DDS Participants (peers) for the |
... | @@ -1259,7 +1259,10 @@ The DDS monitor _fastdds_monitor_ can show all DDS Participants (peers) for the |
|
|
|
|
|
**Solution**
|
|
**Solution**
|
|
|
|
|
|
Important is that in order to enable publishing of this meta data, it must be enabled via an environment variable in the shall that any peers are run in (i.e. in publishers and subscribers, not in the shell where the fastdds_monitor is running. For example:
|
|
Important is that in order to enable publishing of this meta data, it must be enabled either via an environment variable in the shell that the DDS application is run in (i.e. in publishers and subscribers, not in the shell where the fastdds_monitor is running, OR (preferably) set in the XML QoS file.
|
|
|
|
|
|
|
|
Using the environment variable:
|
|
|
|
|
|
```plaintext
|
|
```plaintext
|
|
export FASTDDS_STATISTICS="HISTORY_LATENCY_TOPIC;NETWORK_LATENCY_TOPIC;PUBLICATION_THROUGHPUT_TOPIC;\
|
|
export FASTDDS_STATISTICS="HISTORY_LATENCY_TOPIC;NETWORK_LATENCY_TOPIC;PUBLICATION_THROUGHPUT_TOPIC;\
|
|
RTPS_SENT_TOPIC;RTPS_LOST_TOPIC;HEARTBEAT_COUNT_TOPIC;ACKNACK_COUNT_TOPIC;NACKFRAG_COUNT_TOPIC;\
|
|
RTPS_SENT_TOPIC;RTPS_LOST_TOPIC;HEARTBEAT_COUNT_TOPIC;ACKNACK_COUNT_TOPIC;NACKFRAG_COUNT_TOPIC;\
|
... | @@ -1267,10 +1270,55 @@ GAP_COUNT_TOPIC;DATA_COUNT_TOPIC;RESENT_DATAS_TOPIC;SAMPLE_DATAS_TOPIC;PDP_PACKE |
... | @@ -1267,10 +1270,55 @@ GAP_COUNT_TOPIC;DATA_COUNT_TOPIC;RESENT_DATAS_TOPIC;SAMPLE_DATAS_TOPIC;PDP_PACKE |
|
DISCOVERY_TOPIC;PHYSICAL_DATA_TOPIC"
|
|
DISCOVERY_TOPIC;PHYSICAL_DATA_TOPIC"
|
|
```
|
|
```
|
|
|
|
|
|
Once this is done it appears the statistics are working fine.
|
|
Setting in the QoS XML file:
|
|
|
|
```plaintext
|
|
|
|
<participant profile_name="MyApp_Default_Participant">
|
|
|
|
<rtps>
|
|
|
|
<propertiesPolicy>
|
|
|
|
<properties>
|
|
|
|
<!-- Activate Fast DDS Statistics Module -->
|
|
|
|
<property>
|
|
|
|
<name>fastdds.statistics</name>
|
|
|
|
<value>HISTORY_LATENCY_TOPIC;NETWORK_LATENCY_TOPIC;PUBLICATION_THROUGHPUT_TOPIC;RTPS_SENT_TOPIC;RTPS_LOST_TOPIC;HEARTBEAT_COUNT_TOPIC;ACKNACK_COUNT_TOPIC;NACKFRAG_COUNT_TOPIC;GAP_COUNT_TOPIC;DATA_COUNT_TOPIC;RESENT_DATAS_TOPIC;SAMPLE_DATAS_TOPIC;PDP_PACKETS_TOPIC;EDP_PACKETS_TOPIC;DISCOVERY_TOPIC;PHYSICAL_DATA_TOPIC</value>
|
|
|
|
</property>
|
|
|
|
</properties>
|
|
|
|
</propertiesPolicy>
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
Once this is done, the statistics are visible. Note that not all statistics (e.g. the QoS of a participant) are correctly displayed by the DDS Monitor, this is slowly being improved with each release.
|
|
|
|
|
|
I already have some comments/feedback to eProsima. I welcome any feedback from your tests as well.
|
|
I already have some comments/feedback to eProsima. I welcome any feedback from your tests as well.
|
|
|
|
|
|
It appears all MAL DDS peers have the name “RTPSParticipant”. I am sure this can be set in DDS and this is the default name (tbc).
|
|
By default all MAL DDS peers have the name “RTPSParticipant”.
|
|
|
|
There are two ways to set a custom name:
|
|
|
|
|
|
|
|
A participant name can be assigned in the XML QoS file as follows:
|
|
|
|
|
|
|
|
```plaintext
|
|
|
|
<participant profile_name="MyApp_Default_Participant">
|
|
|
|
<rtps>
|
|
|
|
<name>MyApp_Participant</name>
|
|
|
|
</rtps>
|
|
|
|
```
|
|
|
|
|
|
|
|
However this means all participants sharing this profile have the same name.
|
|
|
|
|
|
|
|
Using the MAL Property to allow setting the participant name, which will set and/or override any participant name read from the QoS file.
|
|
|
|
The property is: dds.qos.participant.name
|
|
|
|
For example it may be used as follows:
|
|
|
|
|
|
|
|
```plaintext
|
|
|
|
const ::elt::mal::Mal::Properties pubprops {
|
|
|
|
{"dds.qos.profile.library", env_var},
|
|
|
|
{"dds.qos.profile.name.publisher", "MyApp_Default_Publisher"},
|
|
|
|
{"dds.qos.profile.name.writer", "MyApp_Default_Writer"},
|
|
|
|
{"dds.qos.profile.name.topic", "MyApp_Default_Topic"},
|
|
|
|
{"dds.qos.participant.name", "icd-demo-publisher"},
|
|
|
|
{"dds.qos.profile.name.participant", "MyApp_Default_Participant"}
|
|
|
|
};
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
***Example***
|
|
***Example***
|
|
build and install icd-demo:
|
|
build and install icd-demo:
|
... | | ... | |