Understanding the Output
rtiddsspy’s output is formatted as a list of lines, where each line is independent and describes a sample received.
RTI Connext DDS Spy
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rtiddsspy is listening for data, press CTRL+C to stop it.
16:12:49 New writer from 192.168.43.223 : topic="rti/distlog" type="com::rti::dl::LogMessage"
16:12:49 New writer from 192.168.43.223 : topic="rti/distlog/administration/state" type="com::rti::dl::admin::State"
16:12:49 New writer from 192.168.43.223 : topic="rti/distlog/administration/command_response" type="com::rti::dl::admin::CommandResponse"
12:12:29 New writer from 192.168.43.223 : topic="Circle" type="ShapeType"
16:12:49 New reader from 192.168.43.223 : topic="rti/distlog/administration/command_request" type="com::rti::dl::admin::CommandRequest"
09:34:35 New data from 192.168.43.223 : topic="Circle" type="ShapeType"
09:34:35 Modified instance from 192.168.43.223 : topic="Circle" type="ShapeType"
---- Statistics ----
Discovered 4 DataWriters and 1 DataReaders
Received samples (Data, Dispose, NoWriters):
0, 0, 0 (Topic="rti/distlog" Type="com::rti::dl::LogMessage")
0, 0, 0 (Topic="rti/distlog/administration/state" Type="com::rti::dl::admin::State")
0, 0, 0 (Topic="rti/distlog/administration/command_response" Type="com::rti::dl::admin::CommandResponse")
2, 0, 0 (Topic="Circle" Type="ShapeType")
The descriptions of output described in the following sections are the same as
provided when you use the -hOutput
option (described in Spy-Specific Options).
Default Output
In the default output, you can find the following information per line:
- source_timestamp
Timestamp that appears in the SampleInfo associated with each sample. This timestamp represents the source-time when the sample was generated. It is printed in Coordinated Universal Time (UTC).
For example:
14:59:16
.A timestamp of
xx:xx:xx
indicates that the sample was not valid. For example, it could have been a dispose sample.The timestamp format can be changed using the
-timeFormat
option:
-timeFormat SHORT
: This is the default option. It prints the time in the formathh:mm:ss
.
-timeFormat FULL
: Adds the date and fractional seconds to the time. For example:2024-05-24 03:07:56.867176
.
-timeFormat EPOCH
: Prints the time as seconds since the Unix epoch, for example:1716520340.463813
.- Info
Description of the received sample. The value distinguishes between discovery and user traffic.
For example:
New writer
.
- “New writer”/”New reader”:
Indicates discovery traffic. It means that rtiddsspy found a new writer/reader in another application.
- “Updated writer”/”Updated reader”:
Indicates discovery traffic.
It means that the entity was explicitly updated by an application by changing any entity configuration parameter such as the partition, lifespan, or content-filtered topic expression.
- “Deleted writer”/”Deleted reader”:
Indicates discovery traffic.
It means that the entity was explicitly deleted by an application or has otherwise lost liveliness.
- “New data” indicates user traffic.
For keyed data: Indicates a sample was received for a new instance that rtiddsspy has never seen before.
For unkeyed data: Indicates a sample was received.
- “Modified instance” indicates user traffic.
Indicates a modified instance that rtiddsspy has seen before.
- “Disposed instance” indicates user traffic.
Indicates that an instance was disposed.
- “No writers” indicates user traffic.
Indicates that an instance has no more registered writers.
- Src IP
IPv4 address of the writer that sent the sample. This value is the first IPv4 element of the unicast_locators of the DataWriter or its DomainParticipant. If no such element exists or it cannot be parsed, then
unknown ip
is displayed.For example:
from 192.168.43.223
.- Topic
Topic name. For discovery messages, this refers to the Topic that has been discovered.
For example:
topic="Circle"
.- Type
Type name. For discovery messages, this refers to the type of the Topic that has been discovered.
For example:
type="ShapeType"
.- Statistics
rtiddsspy prints how many endpoints have been discovered and how many samples have been received, by Topic.
In the following example, rtiddsspy has discovered 4 DataWriters and 1 DataReader. rtiddsspy has received 2 samples from the Topic
"Circle"
and 0 samples from the rest of the Topics.---- Statistics ---- Discovered 4 DataWriters and 1 DataReaders Received samples (Data, Dispose, NoWriters): 0, 0, 0 (Topic="rti/distlog" Type="com::rti::dl::LogMessage") 0, 0, 0 (Topic="rti/distlog/administration/state" Type="com::rti::dl::admin::State") 0, 0, 0 (Topic="rti/distlog/administration/command_response" Type="com::rti::dl::admin::CommandResponse") 2, 0, 0 (Topic="Circle" Type="ShapeType")
Additional Output
The following fields do not appear by default, they need to be requested by command-line arguments:
- Object GUID/Key
To enable this information, use
-showHandle
.This field contains the 12-byte instance handle that appears in the SampleInfo associated with each sample.
Note that the information is only displayed for Topics that have a key. Note also that for simple key formats that can fit in 12 bytes, it will exactly match the key.
For example:
For discovery data:
guid="0x0101888C,0x46C9EF71,0xFA7ED5AE:0x80004202"
.For user data:
key="c317c2ca.8e3f3618.ee0e16f1.86e8f9de"
.- Sample Identity
To enable this information, use
-showSampleIdentity
.This field contains the original publication virtual GUID and the original publication virtual sequence number that appears in the SampleInfo associated with each sample.
For example:
virtual_guid="0x0101888C,0x46C9EF71,0xFA7ED5AE:0x80004202"
virtual_sn="(0, 6140280)"
.- Related Sample Identity
To enable this information, use
-showSampleIdentity
.This field contains the related original publication virtual GUID and the related original publication virtual sequence number that appears in the SampleInfo associated with each sample.
For example:
related_virtual_guid="0x0101888C,0x46C9EF71,0xFA7ED5AE:0x80004202"
related_virtual_sn="(0, 6140280)"
.- Flags
To enable this information, use
-showSampleFlags
.This field shows the active flags associated with each sample.
For example:
flags="LR"
.The possible flags are:
R
: the sample has been redelivered by RTI Queuing Service.
I
: a response sample is not the last sample for a given request. This bit is usually set by Connext Repliers sending multiple responses for a request.
P
: a sample must be broadcast by one RTI Queuing Service replica to other replicas.
L
: a response sample is the last sample in a SharedReaderQueue for a QueueConsumer DataReader.- Entity Name
To enable this information, use
-showEntityName
.This field contains the name of the entity discovered or the name of the DataWriter sending data. For example:
name="roleName:testDataWriter"
.By default, the entity name is printed each time an entity is discovered. For example:
16:12:49 New writer from 192.168.43.223 : topic="rti/distlog" type="com::rti::dl::LogMessage"
By default, the DataWriter name is not printed each time it sends data. For example:
09:34:35 New data from 192.168.43.223 : topic="Circle" type="ShapeType"
- Partition
To enable this information, use
-showPartition
.This field contains the partition of the entity discovered or the partition of the DataWriter sending data.
For example:
partition="A,B,C"
.For information on partitions, see PARTITION QosPolicy, in the RTI Connext DDS Core Libraries User’s Manual.
- Sample
There are two options to display the sample:
-printSample PLAIN
: This is the default option. It pretty-prints sample information for best readability.12:35:24 New data from 192.168.43.223 : topic="Circle" type="ShapeType" color: "BLUE" x: 53 y: 190 shapesize: 30 fillKind: SOLID_FILL angle: 0
-printSample COMPACT
: This option prints sample information in a single line using a JSON format.12:38:15 New data from 192.168.43.223 : topic="Circle" type="ShapeType" sample={"color":"BLUE","x":202,"y":175,"shapesize":30,"fillKind":"SOLID_FILL","angle":0}