.. include:: vars.rst .. _understand-spy-output: Understanding the Output ************************ *rtiddsspy*'s output is formatted as a list of lines, where each line is independent and describes a sample received. .. code-block:: bash RTI Connext DDS Spy built with DDS version: 7.0.0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 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 :ref:`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. 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*. .. code-block:: bash ---- 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 :link_connext_dds_pro_um:`PARTITION QosPolicy, in the RTI Connext DDS Core Libraries User's Manual <#users_manual/PARTITION_QosPolicy.htm>`. Sample There are two options to display the sample: - ``-printSample PLAIN``: This is the default option. It pretty-prints sample information for best readability. .. code-block:: bash 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. .. code-block:: bash 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}