Home
User`s Manual - Community RTI Connext Users
Contents
1. sess 9 3 Remote Control Messages eerte reina oe atra rase nean ad 9 4 Using the Example Remote Access Application Record Shell 9 4 Record Shell s Commands eene 9 4 2 Running Multiple Record Tools in the Same Domain Chapter 1 Welcome to RTI Recording Service RTI Recording Service includes IJ Record an RTI Data Distribution Service application that records both RTI Data Distribution Service discovery and topic data All recorded data is stored in one or more SQL database files 21 Replay a tool that can play back the recorded data Replay injects the recorded data back into the DDS cloud you even have the option of replaying the data with different data rates or QoS settings see Chapter 5 Using the Replay Tool L Convert a utility that enables serialized or deserialized data recorded with Record to be exported to CSV HTML SQL or XML formats see Chapter 6 View ing Recorded Data with SQLite LJ A SOL command line tool sqlite3 which provides another way to view the data files Not provided for Windows CE and Yellow Dog Linux platforms Recording Features 1 Records data from applications in multiple domains 1 Records entire Topics or specific Topic fields based on POSIX file name match ing expressions I Records all data types except bit fields LJ Records to multiple files with configurable file size limits
2. Property Syntax Description Specifies the first segment to use in the fileset If the segment number is gt 0 that is the first segment num lt segment_number gt ber in the fileset segment_ Dunbar DDS Long Default 1 The next available segment number will be used segment number starting at 0 Note the set number is determined first then the segment number Specifies the set number to use in the fileset s t lt set_number gt If the set_number is gt 0 that specific fileset number is used ber DDS Long In this case the lt overwrite gt property takes effect m set number Default 1 The next available set number will be used start ing at 0 The Record tool stores data in a set of SQL database files Note however that you do not need to install any database software to use the Record tool A fileset is a named collection of file segments which belong to the same recording ses sion Each of these file segments contains discovery and user data and the format is determined by SQLite The Record tool uses a fixed file naming scheme name_set number_segment number Where l name is the base filename for the fileset specified in the configuration file with the lt name gt property Ll set number is an integer identifying the fileset specified in configuration file with the lt set number gt property I segment number is an integer identifying the file segment within t
3. I STATE Which DomainParticipant the Record tool is connected to HOSTID APPID J GUID The GUID of the Record Shell itself 9 4 Using the Example Remote Access Application Record Shell 9 4 1 6 9 4 1 7 9 4 1 8 9 4 1 9 9 4 1 10 9 4 1 11 9 4 1 12 model This command prints the current model of the Record tool RTI Record Shell gt model modify This command adds new entities to the Record tool or updates existing entities The modify command has the following format modify lt model gt pause This command pauses the recording of entities in the Record tool The pause command has the following format pause lt model gt resume This command resumes the recording of already paused entities in the Record tool The resume command has the following format resume lt model gt shutdown This command causes the Record tool to shut down and terminate This command can only be issued when the Record tool has been stopped start The start command is used to start the Record tool Note that this command only works after stopping the Record tool first since the tool is started when it is launched When the start command is given the Record tool will shut down completely delete all state and objects and start from scratch By default the Record tool will create a new file set each time it is started status When the Record tool is configured with remote access enabled it will periodically send
4. database name max file size 2000 kB max file size max file segments 1000 max file segments rollover yes lt rollover gt record database recorder dds Expected Outcome Up to 1 000 files will be created if necessary named mydomaindata 0 0 mydomaindata 0 1 etc up to mydomaindata 0 999 How To Record Serialized Data Scenario Due to space limitations and speed you want to store serialized data Configuration File lt dds gt recorder name scenario4 domain name mydomain gt domain id 98 domain id deserialize mode RTIDDS DESERIALZEMODE NEVER deserialize mode domain 8 5 How To Record Using Best Effort Reliability lt recorder gt lt dds gt Expected Outcome All samples will be stored in a single column along with SampleInfo and other meta data 85 HowTo Record Using Best Effort Reliability Scenario You have a DDS system with multiple DataWriters of the same topic Some of these use best effort reliability while others use strict reliability You want to minimize the impact that the Record tool has on the system Configuration File lt dds gt recorder name scenario5 topic group name Sensor gt topics topic expr Sensor topic expr topics field expr value field expr datareader qos reliability kind BEST EFFORT RELIABILITY QOS lt kind gt
5. See the RTI Data Distribution Service User s Manual s chapter on Configuring QoS with XML lt datawriter_qos gt datawriter_qos DDS_DataWriterQos lt datawriter_qos gt lt topic_qos gt Specifies the QoS settings to be applied to the topic topic_qos DDS_TopicQos when creating a DataWriter to write the data to be lt topic_qos gt replayed 4 7 Time Control Properties The lt time_control gt element can be applied to any of Replay s major entities lt replay_service gt lt replay_database gt lt session gt and lt replay_topic gt l The index time of the replay service is the earliest index time of all of its compo nent replay_database entities l The index time of a lt replay_database gt is the earliest timestamp of the database taken from its creation log L The index time of a replay topic is the earliest timestamp of the topic taken from the first recorded sample of the topic All time control properties are optional The start_time and stop_time values of a child entity are constrained by the start_time and stop_time settings of its parent entities If a start_time or stop_time value is explic 4 7 Time Control Properties itly specified and constrained by one of its parent entities Replay will issue a warning that the value has been truncated The start_mode of a child entity overrides the start_mode setting of its parent entities The time mode value of a child entit
6. ccccc dd dd suited to machine parsing where each c is either T or F and dd is a decimal number query The meanings of each T F entry are enabled started pending paused and completed The decimal numbers are the number of child topics owned by the entity and the number of active child topics owned by the entity resume Resume replay of an entity step Replays a single sample from the entity Changes the replay rate of an entity The rate is a multiplier from 0 1 to 4 billion It replays at the speed of the multi mone plier 2 2x 0 5 1 2x etc Default 1 exit Exits the shell The Replay Shell commands use this format lt command gt lt replay_service gt lt entity gt value where I command is one of the supported commands see Table 5 3 L replay service is the name given to the Replay service by one of the following in descending order of precedence The value specified with the appName command line option used when starting the Replay tool highest precedence The value for the replay service administration name element see page 2 12 The value for the replay service name attribute lowest precedence see Section 4 3 L entity is any one of the service entities expressed in this hierarchical form database name session name topic name ood 6uiApjdes Ss Chapter 5 5 4 5 6 Note In this releas
7. little endian 0 big endian 6 1 3 Other Tables You will notice that the Record tool creates two additional tables RTILog and RTIVer sion You do not need to use these tables they are for internal use by the Record tool 6 3 DiDq pepiooey Bulmel 9 Chapter 6 6 4 Chapter 7 Exporting Recorded Data RTI Recording Service includes a conversion utility that enables serialized or deserialized data recorded with the Record tool to be exported to CSV HTML SQL or XML formats The utility merges the data from all the segments in a fileset It converts recorded data either serialized or deserialized into one of the available formats The output data is deserialized The executable rtirecconv is located in lt install dir gt bin lt architecture gt The script to launch the Convert tool is in lt install dir gt scripts rtirecconv To see a list of available options enter rtirecconv help You will see the following rtirecconv options fileset Options help Print out this text version Print out the version verbosity 0 6 verbosity from 0 to 6 forceXMLTypes Always use XML type definitions if available compact lt mode gt How to read octet char arrays and sequences Default auto auto Detect automatically how data is stored and compact do not compact each type of data accordingly yes Show the structures with compact data regardless of how they are stored no Do not com
8. 8 Remote Administration Properties sse eee nnn 2 11 Type Config uration eiei teisene Esaera eE e aieiai ie EEES LEESE EEE EEE Eien 2 13 Using the Replay Tool 5 1 Recording Data for Replay rettet rer ene tae tne EKEren a E SAREAN 5 2 Starting and Stopping the Replay Tool sese 5 21 Stopping the Replay Tol eee 5 9 Using the Replay Shell teet mette Peeters 5 4 Performance and Indexing eterna in Viewing Recorded Data with SQLite 6 1 Format of the Recorded Doata sees eene nnne nnne 61 1 Discovery IDatacusosiiieniiam atas enean HE HR EUR 61 2 User Data ecc etre ee ener Rem Ane es e dE tases 6 4 3 Other Tabl S iere m e S ene i Er rea Exporting Recorded Data Example Configuration Files 81 How to Record All Topics in a Single Domain eee 8 2 How To Record a Subset of Data from Multiple Domains 83 How To Record Data to Multiple Files sse 84 How To Record Serialized Data essent nenne 85 How To Record Using Best Effort Reliability sesssssssesee 8 6 How To Enable Remote Access esses eene nennen nennen nnns Accessing the Record Tool from a Remote Location OT OVervie Wiss co tesiererde a teen tete nte tree see Pot EYED E REVO Re E aree NS aU euet abuse erae reus 9 2 Establishing a Connection with the Record Tool
9. Optionally overwrites the oldest file when the maximum number of files has been reached I Records the DDS Samplelnfo structure and a timestamp for both discovery data and user data Records using either Best Effort or Reliable communications 1 Optionally records data from only specified partitions euJo9JleM L Chapter 1 1 Supports remote operation Replay Features Publishes data samples that were recorded in serialized format LI Highly configurable you can Choose which serialized topics to replay Set the replay rate faster or slower or use the original rate Change the QoS of the publications Configure the QoS for the tool itself Dynamically control the replay start stop pause and single step through the data samples This document assumes you have a basic understanding of DDS terms such as Domain Participants Publishers DataWriters Topics and Quality of Service QoS policies For an overview of DDS terms please see the RTI Data Distribution Service User s Manual Chapter 2 Configuring the Record Tool When you start the Record tool you may specify a configuration file in XML format it is not required In that file you can set properties that control what to record how to record and where to save the recorded data This chapter describes how to write a con figuration file 2 1 How to Load the XML Configuration The Record tool loads its XML configuration from multiple locations
10. The default values to use when there are unbounded strings in a type This over rides the parent max_sequence max sequence Integer max sequence The default values to use when there are unbounded sequences in a type This overrides the parent file name file name element File Name lt element gt lt file_name gt A list of the files that contain XML type definitions The element tag can be repeated Chapter 3 Using the Record Tool 3 1 This chapter describes how to start and stop the Record tool Starting the Record Tool The executable for the Record tool is in lt install directory gt bin lt architecture gt A script to run the executable is in lt install directory gt scripts To see a list of available arguments enter rtirecord help To run the tool you must select a configuration name with cfgName For example cd rtirecord 4 5 x scripts rtirecord cfgName default To see which configurations are available use the listCfgs option cd rtirecord 4 5 x scripts rtirecord listCfgs To use your own configuration file cd rtirecord 4 5 x scripts rtirecord cfgFile config file xml cfgName my record cfg Table 3 1 describes the command line options Chapter 2 Configuring the Record Tool describes the contents of the configuration file Example files are provided in the installation directory gt examples directory 3 1 p109
11. and configure its behavior A Remote Access section is not required in the configuration file The remote application can send commands to the Record tool that will LL Start stop recording Shutdown the Record tool 1 Reconfigure the Record tool Table 2 8 describes the Remote Access properties All Remote Access properties must be specified inside remote access and remote access tags All remote access proper ties are optional unless otherwise noted 2 8 Remote Access Properties Table 2 8 Remote Access Properties Property Syntax Description Specifies if the Record tool will accept com accept QuugsDe PBrgdquede commands mands that have been broadcast to any Record tool or only accept commands addressed spe broadcast DDS Bode cifically to it See Chapter 9 Accessing the commands SOBSOBDU broadcast comiands Record Tool from a Remote Location Default true Enables or disables remote access to the lt enabled gt Record tool from another application See enabled DDS_Boolean Chapter 9 Accessing the Record Tool from a lt enabled gt Remote Location datareader_qos lt datareader_qos gt DDS_DataReaderQos datareader qos Default false remote access disabled Configures the QoS for the DataReader created by the Record tool s Remote Access module Default default DataReader QoS settings datawriter qos datawriter qos DDS DataWriterQos datawriter qos Configures
12. and Stopping the Replay Tool Table 5 1 Replay Tool s Command line Options Command line Option Description identifyExecution Appends the host name and process ID to the appName to help using unique names noAutoEnable Use this option if you plan to enable the Replay tool remotely remoteAdministrationDomainId int Enables remote administration and sets the domain ID for the communication Default remote administration is not enabled srvName name Specifies a name that will be used to identify the service verbosity value Specifies what type of logging information should be printed 0 Silent 1 Exceptions both RTI Data Distribution Service and the Replay tool 2 Warnings the Replay tool only e Information the Replay tool only 4 Warnings both RTI Data Distribution Service and the Replay tool 5 Tracing the Replay tool only 6 Tracing both RTI Data Distribution Service and the Replay tool Default 1 version Prints the Replay tool s version ood BulApjdey Ss Chapter 5 5 3 Using the Replay Shell The Replay Shell is an RTI Data Distribution Service application that can remotely control the Replay tool To start the Replay Shell L On Linux systems enter gt lt install dir gt scripts rtireplaysh options _ On Windows systems From the Start menu select RTI RTI Recording Service version RTI
13. arrays individual elements in separate columns it is not compact DDS Boolean char array x recommended as the number of columns stored can lt compact_char_array gt become very large Default true Store array of octet in a single column The default true saves the most space While it is possible to store compact octet array Ner uoi individual elements in separate columns it is not compact DDS Boolean P recommended as the number of columns stored can become very large Default true compact char sequence compact char sequence DDS Boolean compact char sequence Store sequence of char in a single column The default true saves the most space While it is possible to store individual elements in separate columns it is not recommended as the number of columns stored can become very large Default true 2 13 Buipio2ey amp uun6yuo z Chapter 2 Table 2 5 TopicGroup Properties Property Syntax Description compact_ octet_ sequence lt compact_octet_sequence gt DDS_Boolean lt compact_octet_sequence gt Store sequence of octet in a single column The default true saves the most space While it is possible to store individual elements in separate columns it is not recommended as the number of columns stored can become very large Default true datareader _qos lt datareader_qos gt DDS_DataReaderQos datareader qos Spec
14. code fragment in Figure 9 4 shows how to set the message type in the remote access application Depending on the message type the correct union member must also be filled in For example Figure 9 5 shows how to construct a message to the Record tool to read a new configuration from a file In this example the new configuration is to be read from a file on the same file system as the Record tool Figure 9 4 Assigning a Message Type C Language 9 4 RTIRemoteCtxMsg msg msg RTIRemoteCtxMsgPlugin create sample msg msg d RTI REMOTECTX MSG RECORD START 9 3 Remote Control Messages Figure 9 5 Sending a Command to the Record Tool to Read a New Configuration File RTIRemoteCtxMsg msg DDS ReturnCode t retcode Struct DDS SampleInfo info msg RTIRemoteCtxMsgPlugin create sample msg msg d RTI REMOTECTX MSG RECORD CONFIGURE This is the last part of the configuration If the configuration spans multiple samples then only the last one should have this set to TRUE Sy msg msg u config final config DDS BOOLEAN TRUE Tell the Record Tool that the filename to read from follows in the config from string text string msg msg u config config from file DDS BOOLEAN TRUE copy the name of file that the Record tool shall read from strncpy msg msg u config config from string filename 512 copy the configuration name of the recorder ta
15. data structure will have its own column in the table The maximum number of columns is approximately 1 950 Therefore if you have a data type that would require more than 1 950 columns you must set the deserialize_mode property to RTIDDS_DESERIALIZEMODE_NEVER Disregarding this limit will cause recording to fail Note each primitive type is considered a column For example the following would require 3 000 columns long Array 3000 As another example the following would require separate columns for y 0 x a y 0 x b y 1 x a y 1 x b etc struct X long a long b 1 struct Y X x 1 struct Z Y y 10 j 2 12 2 6 TopicGroup Properties 2 6 TopicGroup Properties A TopicGroup is an optional logical collection of Topics If you are not going to have a RecordGroup in the configuration file you do not need a TopicGroup See Section 2 7 Table 2 5 describes the TopicGroup properties The following properties are required L1 field expr LJ shared table LI topics Table 2 5 TopicGroup Properties Octet array compact octet array Property Syntax Description auto auto detect reliability If set to true use the same reliability as the Publisher of detect DDS Boolean the matched Topic reliability auto detect reliability Default false Store array of char in a single column The default true saves the most space While it is possible to store t lt compact cher
16. element File Name element file name A list of the files that contain XML type definitions The element tag can be repeated Chapter 5 Using the Replay Tool 5 1 5 2 This chapter describes how to use the Replay tool included with RTI Recording Service This tool replays the recorded data by publishing it just like the original DDS applica tion did You can use the original domain ID QoS settings and data rate or make changes to test different scenarios Recording Data for Replay The Replay tool can replay information that has been stored in either serialized or deseri alized form If Replay is to be used to replay deserialized data ensure that all of the fields of the sample data are recorded as Replay is unable to replay partial data Note SQLite is unable to look at the individual fields in the sample data of files recorded in serialized mode Starting and Stopping the Replay Tool The Replay tool s executable is in lt install directory gt bin lt architecture gt A script to run the executable is in lt install directory gt scripts On Linux systems Open a command prompt change to the lt install dir gt scripts directory and enter gt rtireplay cfgFile lt file gt cfgName lt configuration gt 5 1 ood 6uiApjdes S Chapter 5 On Windows systems From the Start menu select RTI RTI Recording Service lt version gt Replay At the resulting command prompt enter
17. its current status The Record Shell stores the most recent status The current status is dis played with the status command 9 1 ssedoy ejoweyY 6 Chapter 9 RTI Record Shell gt status The output is similar to the following Version 1 4 2 v20080528205153 Timestamp Mon Apr 28 20 02 48 2008 1182222168 58877000 State 22222 amp STOPPED Config file simple config xml Database file simple config dat 34 3 Received bytes 86653952 Saved bytes 2127872 2 IJ Version The Record tool s version L Timestamp The timestamp of the Record tool when status message was sent Ll State The Record tool s state The following states are possible e IDLE e RECORDING e STOPPED the Record tool has been stopped and is not recording any user data e RECONFIGURE e SHUTDOWN e RESTART e DOWNLOAD the Record tool is downloading a new configuration L Config file The name of the file from which the Record tool read its configura tion If the configuration was received with configure localfile this field is not available L Database file The file segment currently being written to LJ Received bytes Total amount of data that has been written to file IJ Saved bytes Total number of data that has is currently saved to file Note that if the rollover property is true then Saved bytes may be less than Received bytes 9 4 1 13 stop This command stops the Record tool from recordi
18. lt reliability gt lt datareader_qos gt lt topic_group gt lt recorder gt lt dds gt Expected Outcome The Record tool will use DataReaders with best effort Reliability to record all data suoupinGyuo ejduupxa g Chapter 8 8 6 How To Enable Remote Access Scenario The Record tool is part of a larger system that must reach a steady state before it starts recording The Record tool should use domain ID 54 and partition rti for communica tion with the controller Configuration File dds recorder name scenario6 remote access enabled yes lt enabled gt publish status period 10 publish status period remote access domain domain54 remote access domain gubscriber qos partition lt name gt lt element gt rti lt element gt lt name gt lt partition gt lt subscriber_qos gt lt remote_access gt lt domain name domain54 gt lt domain_id gt 54 lt domain_id gt lt domain gt lt recorder gt lt dds gt Expected Outcome The Record tool will communicate with a remote controller on domain ID 54 using parti tion rti Status information will be published every 10 seconds Chapter9 Accessing the Record Tool from a 9 1 Remote Location Perhaps you want to start stop the Record tool from another machine or even reconfig ure it to change what is being recorded You can create an RTI Data Distribution Service
19. name of the type_code to be used in writing matching topics This parameter will default to if not specified Replay will search for a match ing type name only within matching topic records record group name record group name String record group name Required Specifies the name of the record eroup that was specified in the Record tool s configuration file or a regular or wildcard expression domain name String domain name domain name Required Specifies the name of the domain name that was specified in the Record tool s configuration file or a regular or wildcard expression 2 7 Ap dey amp uun6yuo p Chapter 4 All output properties Table 4 7 are optional Table 4 7 Output Properties Property Syntax Description lt topic_name gt topic_name String lt topic_name gt Specifies the name to be assigned to the topic when creating a DataWriter to write the data to be replayed lt topic_name gt type_name String lt topic_name gt Specifies the name to be assigned to the type when creating a DataWriter to write the data to be replayed Specifies the QoS settings for all DataWriters created for this Replay_Topic A DataWriter is created for each Topic that matches the topic_expr All the DataWriters for the Replay_Topic will use the same set of QoS pol icies You can specify all of the QoS policies with this datawriter_qos property
20. the Replay tool or any of its individual entities Ap dey amp uun6yuo p Chapter 4 Section Using the Replay Shell Section 5 3 describes the command format and individ ual commands available in rtireplaysh Replay s remote administration utility Table 4 11 describes the Remote Administration properties All remote administration properties are optional All Remote Administration properties must be specified inside lt administration gt and lt administration gt tags Table 4 11 Remote Administration Properties Property Syntax Description lt name gt Assigns a name to the replay service You can use this name String name when sending commands via RTI Replay Shell lt name gt see Section 5 3 lt domain_id gt domain_id DDS_Long Sets the domain ID Default 0 lt domain_id gt participant_qos lt participant_qos gt DDS_ParticipantQos participant qos Configures the QoS for the Participant created by the Replay tool s Remote Access module Defaults See the RTI Data Distribution Service online HTML documentation on DomainParticipants publisher qos publisher qos DDS PublisherQos publisher qos Configures the QoS for the Publisher created by the Replay tool s Remote Access module Defaults See the RTI Data Distribution Service online HTML documentation on Publishers subscriber qos gubscriber qos DDS QosPolicy gubscriber qos Configures the Qo
21. the contents of the mes Service Remote sage Control Instructs the Record tool to update entities based on the contents of the Application RECORD UPDATE imessage To RECORD_ MODIFY Instructs the Record tool to add OR modify entities based on the contents The Record tool of the message RECORD DELETE Instructs the Record tool to delete entities based on the contents of the message RECORD PAUSE Instructs the Record tool to pause entities based on the contents of the message RECORD RESUME Instructs the Record tool to resume recording of previously paused enti ties based on the contents of the message A a RECORD PING Instructs the Record tool to send the recording model to the Remote Control application To When the Record tool publishes statistics it periodically sends out this Your RTI Data Distribution Ser vice Remote Control Application From The Record tool RECORD_INFO message type RECORD_RESPONSE Indicates that this message is a response to a command a The recording model is an XML representation of two aspects of the Record tool 1 The configuration model the XML config uration similar to the XML configuration file used to configure the Record tool and 2 The run time model an XML description of the DDS entities that have been created based on the configuration Note that only a a minimal model is returned the QoS are not returned 9 6 9 4 Using the Example Remote Access Applicat
22. the following command gt rtireplay cfgFile lt file gt cfgName lt configuration gt Note You may see the following messages in the command shell they are benign Replay 2 x initializing PLAYBACKCfgFileParser_loadCfgFile No configuration file found PLAYBACKService_initialize load configuration file PLAYBACKService new init replay service main create replay service Terminating service C Program Files RTI RTI Recording Service version scripts Table 5 1 lists the command line options 5 2 1 Stopping the Replay Tool To stop the Replay tool use lt Control c gt Table 5 1 Replay Tool s Command line Options Command line Option Description appName lt name gt Specifies an application name which is used to identify the application for remote administration Default cfg Name cfgFile lt file gt cfgName lt name gt Required Used to identify the XML configuration file Required Identifies the configuration within the XML configuration file The Replay tool will load the lt replay_service gt with the same name as this value domainIdBase int Adds this value to the domain IDs in the configuration file Default 0 When used with XML Type Configuration this option instructs forceXmlTypes Replay to always use type code from the XML file even if an alternate is available from recorded data help Displays this information 5 2 Starting
23. DomainParticipant s QoS policies Default default DomainParticipant QoS settings See the RTI Data Distribution Service User s Manual for details See the chapter on Configuring QoS with XML Domain properties must be specified inside domain name String gt and lt domain gt tags If you want to use a RecordGroup Section 2 7 you must assign a domain name with these tags even if you do not specify any domain properties because the domain name is needed in the RecordGroup s domain_ref property You may specify more than one Domain Each one must have a unique name with its own domain name String gt and lt domain gt tags Note Transports are configured through the Property QoS under the participant_gos tag Buipio ey amp uun6yuo zZ Chapter 2 For example the following creates a Domain named mydomain using domain ID 68 The data will be recorded in serialized format The DomainParticipant will use default QoS settings except for the Discovery QoS policy s accept unknown peers field domain name mydomain domain id 68 domain id deserialize mode RTIDDS DESERIALZEMODE NEVER deserialize mode participant qos discovery accept unknown peers false accept unknown peers discovery participant qos lt domain gt 2 5 1 Recording Large User Data Types When the Record tool records serialized user data each primitive type in the topic s
24. Ly Buisn Chapter 3 Table 3 1 3 2 Record Tool s Command Line Options Command line Option Description appName lt name gt Assigns an application name to the DomainParticipants created by the Record tool If not specified the same name used in cfgName will be used cfgFile lt file gt Required Specifies the XML configuration file path and filename In addition to the file provided using this command line option the Record tool can load other XML files see Section 2 1 cfgName lt name gt Required This name is used to find the matching lt recorder gt tag in the configuration file Names the fileset to use for storing recorded data Bap Default rtirecord dat help Prints version information and list of command line options Specifies the license file path and filename Only applicable to licensed ver licenseFile sions of the Record tool lt file gt If not specified the Record tool looks for the license as described in Section o in the Getting Started Guide listCfgs Lists the available configuration profiles Specifies what type of logging information should be printed 0 silent both RTI Data Distribution Service and the Record tool 1 errors both RTI Data Distribution Service and the Record tool default 2 warnings the Record tool only 3 warnings both RTI Data Distribution Service and the Record tool verbosity 4 information the R
25. RIT Recording Service for RTI Data Distribution Service User s Manual Version 4 5 RTO The Global Leader in DDS 2007 2011 Real Time Innovations Inc All rights reserved Printed in U S A First printing re TI Jan 2011 Trademarks Real Time Innovations and RTI are registered trademarks of Real Time Innovations Inc All other trademarks used in this document are the property of their respective owners Copy and Use Restrictions No part of this publication may be reproduced stored in a retrieval system or transmitted in any form including electronic mechanical photocopy and facsimile without the prior written permission of Real Time Innovations Inc The software described in this document is furnished under and subject to the RTI software license agreement The software may be used or copied only under the terms of the license agreement Third Party Copyright Notices Portions of this product include software derived from Fnmatch c 1989 1993 1994 The Regents of the University of California All rights reserved The Regents and contributors provide this software as is without warranty Technical Support Real Time Innovations Inc 385 Moffett Park Drive Sunnyvale CA 94089 Phone 408 990 7444 Email support rti com Website http www rti com support Contents 1 Welcome to RTI Recording Service 2 Configuring the Record Tool 2 1 2 2 2 3 24 2 5 2 6 2 7 2 8 2 9 How to Load the
26. Recording Service Replay Shell lt version gt Or to run from the command line enter the following install dir gt scripts rtireplaysh options Table 5 2 lists the command line options you can use when starting the Replay Shell Once it is started you can use the commands in Table 5 3 Table 5 2 Replay Shell s Command Line Options Command line Option Description cmdFile file A file that contains commands to be run Specifies the domain ID an integer between 0 and 99 domainId integer 2 Default 0 help Prints version information and a list of options Maximum number of seconds to wait for a remote response timeout lt seconds gt Default 15 seconds Specifies what type of logging information should be printed 0 Silent 1 Exceptions both RTI Data Distribution Service and the Replay tool Warnings the Replay tool only E 2 lt value Information the Replay tool only Warnings both RTI Data Distribution Service and the Replay tool Tracing the Replay tool only Tracing both RTI Data Distribution Service and the Replay tool Default 1 5 4 5 3 Using the Replay Shell Table 5 3 Replay Shell s Commands Command Description stop Stops replay of an entity start Starts replay of an entity pause Pauses replay of an entity Returns the status of an entity The leading portion of the status is a compacted field of the form
27. S for the Subscriber created by the Replay tool s Remote Access module Defaults See the RTI Data Distribution Service online HTML documentation on Subscribers datareader qos datareader qos DDS DataReaderQos datareader qos Configures the QoS for the DataReader created by the Replay tool s Remote Access module Defaults See the RTI Data Distribution Service online HTML documentation on DataReaders datawriter qos datawriter qos DDS DataWriterQos datawriter qos Configures the QoS for the DataWriter created by the Replay tool s Remote Access module Defaults See the RTI Data Distribution Service online HTML documentation on DataWriters 2 12 4 9 Type Configuration 49 Type Configuration The type config element allows you to pass DDS type configuration information to the Replay tools in the form of XML type configuration files Table 4 12 describes the Type Configuration properties All Type Config properties are optional Table 4 12 Type Configuration Properties Property Syntax Description xml The XML type configuration for this xml XML Type Configuration Properties domain group See Table 4 13 Type xml Properties Table 4 13 Type Properties Property Syntax Description register top level register top level Boolean register top level Whether or not to register the top level types with their canonical
28. Service User s Manual s chapter on Configuring QoS with XML Defaults See the RTI Data Distribution Service online HTML documentation on DomainParticipants 4 5 Table 4 4 describes the Session s properties Session Properties All session properties are optional except replay topic These properties must be specified inside session namez String and lt session gt tags where String is the name to be assigned to the session entity when it is created This name will be used during remote administration Table 4 4 Session Properties Property Syntax Description publisher qos publisher gos DDS QosPolicy publisher gos Configures the Publisher s QoS policies See RTI Data Distribution Service User s Manual s chapter on Configuring QoS with XML Defaults See the RTI Data Distribution Service online HTML documentation on Publishers thread thread Thread Properties lt thread gt Configures the properties for the execution thread time_control lt time_control gt Time Control Properties lt time_control gt Configures the time control properties to be applied to the Session replay_topic lt replay_topic gt Replay Topic Properties lt replay_topic gt Required The configuration properties that describes the topics to be replayed and the associated DDS_DataWriter configuration This element can be repeated See Table 4 5 Replay Topic Pr
29. This section pres ents the various approaches listed in load order The first three locations only contain QoS Profiles and are inherited from RTI Data Dis tribution Service see Chapter 15 in the RTI Data Distribution Service User s Manual I NDDSHOME resource qos_profiles_4 5x xml NDDS_QOS_PROFILES xml This file contains the RTI Data Distribution Service default QoS values it is loaded automatically if it exists First to be loaded File in NDDS QOS PROFILES The files or XML strings separated by semicolons referenced in this environ ment variable are loaded automatically L working directory gt USER_QOS_PROFILES xml This file is loaded automatically if it exists 1 x stands for the version letter of the current release 2 1 Buipio ey amp uun6yuo z Chapter 2 2 2 2 2 The next locations are specific to RTI Recording Service LI lt rtirecord executable location gt resource xml RTI_RECORDING_SERVICE xml This file contains the default configuration for the Record tool it is loaded if it exists RTI RECORDING SERVICE xml defines a configuration that records all topics on domain 0 L working directory USER RECORDING SERVICE xml This file is loaded automatically if it exists I File specified with the command line option cfgFile see Table 3 1 on page 3 2 I File specified using the remote command configure The configure command see Table 3 1 on page 3 2 allows l
30. XML Configuration nennen eene 2 1 General Format 1 0 pr ce Rr Rh erae erae ra rera FE Re E 2 2 224 Configuration File Syntax certet tee Pete rdiet enteras 2 4 2 22 Supported Data Types eiie teret tet eL HaT ERE Tene 2 4 General Properties for the Record Tool sss 2 7 Database Output File Properties sess eren 2 7 Domain Prop tties iin rien relie e ha asi eem ere ierra 2 11 2 5 1 Recording Large User Data Types sse eee 2 12 lopicGroup Properties siie a a den e mer b re endear EL ED rre 2 13 RecordGroup Properties rein tentem teet tati re prre dead 2 17 Remote Access Properties ette reete ntn reete here rre petras dee 2 18 Domain Type Configuration tcr teet tette tii esee east eru 2 20 3 Using the Record Tool 3 1 3 2 starting the Record To0l 526 CHE bie be nee anata taints 3 1 Stopping the Record Tol s t dieere ente tete itirterenda 3 2 4 Configuring the Replay Tool 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 How to Load Replay s XML Configuration File ssssssssseeenene 2 1 Gerni ral Formaten rriren te et ei E TENA E E ER ERE EHE P deca ee 2 2 General Properties for Replay sirisser iiaa 2 4 Database Input File Properties erret ttr Ees ashesi 2 5 Session Properties dido denti en eh n t Pn eben t Peri Deeds 2 6 Replay Topic Properties nte etre eier esito di rede aaeain 2 7 Time Conttol Properties eee tee etas metn main tendo 2
31. ain gt lt domain_id gt 54 lt domain_id gt lt domain gt 8 1 suoupinGyuo ejduupxa g Chapter 8 topic group name All topics topic expr lt topic_expr gt topics field expr lt field_expr gt topic group record group name sub0 gt domain ref element mydomain lt element gt domain ref topic ref lt element gt All lt element gt lt topic_ref gt lt record_group gt lt recorder gt lt dds gt Expected Outcome The expected outcome is a single file about 4 GB with all the data in a file called mydomaindata_0_0 By default the Record tool will store deserialized data so the file will have one column for each field in the topic 8 2 How To Record a Subset of Data from Multiple Domains Scenario You have a DDS system with multiple domains including domain IDs 54 and 98 and hundreds of topics whose names contain Sensor such as TemperatureSensor HeatSensor SensorTypes etc in addition to hundreds of other topics You only want to record the topics that start with Sensor and from each of these topics you only want to record the fields whose name includes value such as value_max value_min current_value Configuration File lt dds gt recorder name scenario2 record database database name mydomaindata database name max file size 1 GB max file size record database domain name
32. application that can remotely control the Record tool This chapter explains how To control the Record tool from a remote location 1 Configure the Record tool to allow remote access see Remote Access Properties Section 2 8 2 Create an RTI Data Distribution Service application using the provided rtirecord idl file You will use rtiddsgen to generate the basics and then add code to send your desired remote commands Overview If the Record tool is configured to allow remote access it creates a DataReader for a command Topic named RTI RECORD CMD TOPIC and a DataWriter for status lopic named RTI RECORD STATUS TOPIC So the Record tool will write status updates and read commands These topics types and names are specified in the IDL file resource idl rtirecord idl When the Record tool detects a remote DataReader and DataWriter of these special top ics from the same participant the Record tool will be in a connected state which means it will accept remote commands Your remote access application will use the following constants 9 SS92o v ejouleg 6 Chapter 9 L RTI REMOTECTX MSG TYPE Register a type of this name as seen in Figure 9 1 L RTI RECORD CMD TOPIC Create a DataWriter with this Topic name as seen in Figure 9 2 L RTI RECORD STATUS TOPIC Create a DataReader with this Topic name as seen in Figure 9 2 See Remote Control Messages Section 9 3 for more information Figu
33. ated To convert to an HTML table instead the command is rtirecconv format html mdata dat 0 This will create an output file called mydata dat_0 html Note The Convert tool cannot process partially recorded deserialized data If you want to record only a subset of the fields in the data structure you should record in serialized format For deserialized recorded data it is better to use sqlite to output the data instead of rtirecconv Chapter 8 Example Configuration Files 8 1 This chapter shows how to configure the Record tool for a variety of situations L How to Record All Topics in a Single Domain Section 8 1 I How To Record a Subset of Data from Multiple Domains Section 8 2 I How To Record Data to Multiple Files Section 8 3 LJ How To Record Serialized Data Section 8 4 How To Record Using Best Effort Reliability Section 8 5 LJ How To Enable Remote Access Section 8 6 How to Record All Topics in a Single Domain Scenario You have a DDS system with several nodes using domain ID 54 You want all the data in this system to be recorded to a single file called mydomaindata When the file is full recording should stop The typecodes are available from the DDS system Configuration File lt dds gt lt recorder name Scenariol gt lt record_database gt lt database_name gt mydomaindata lt database_name gt lt max_file_size gt 1 GB lt max_file_size gt lt record_database gt lt domain name mydom
34. ation SERVICE_RELATIVE The start_time and stop_time values are relative to the replay_service s index time i e the index time of the replay_service will be added to the start_time and stop_time values if specified DATABASE_RELATIVE The start_time and stop time values are relative to the replay database s index time i e the index time of the replay database will be added to the start time and stop time values if specified TOPIC RELATIVE The start_time and stop time values are relative to the earliest timestamp of the topic ie the index time of the topic will be added to the start time and stop time values if specified 4 8 Remote Administration Properties The Replay tool can be controlled remotely by either the rtireplaysh utility or by an RTI Data Distribution Service application that reads and writes the remote administration topic For security reasons Remote Administration is turned off in the Replay tool by default The Remote Administration section of the configuration file is used to enable Remote Administration and configure its behavior This section is not required in the configura tion file The rtireplaysh utility or a remote application can send commands to the Replay tool to LI Start stop pause resume step the Replay tool or any of its individual entities L Change the speed of replay of the Replay tool or any of its individual entities I Query the status of
35. cified inside record group name String and record group tags The name that you assign String will be used in the table name s in the database output file s 2 17 Buipio ey amp uun6yuo z Chapter 2 2 8 2 18 For example the following creates a RecordGroup called RecordAll which will include all members of TopicGroup All that are discovered on Domain MyDomain This exam ple does not specify the optional subscriber qos property so it will use default Sub scriber QoS settings record group name RecordAll topic ref element AllTopics lt element gt topic ref domain ref element MyDomain lt element gt domain ref record group Note A RecordGroup can refer to multiple domains and multiple TopicGroups How ever a RecordGroup will only record one of each matching Topic from a Domain If multiple matches occur only the first one will be recorded If you need to record the same Topic from the same domain using different QoS policies you should use different TopicGroups and RecordGroups Remote Access Properties As you will see in Chapter 9 Accessing the Record Tool from a Remote Location you can create an RTI Data Distribution Service application that can remotely control the Record tool By default Remote Access is turned off in the Record tool for security reasons The Remote Access section of the configuration file is used to enable Remote Access
36. criber_qos gt The above configuration will set a the Presentation QoS policy s access_scope field to DDS_TOPIC_PRESENTATION_QOS and b the Partition QoS policy s name field to rti name is a sequence of strings which requires using the element tag also described in this table You may include the following unit designations kB 10 3 MB 10 6 GB 10 9 KB 2 10 FileSize 64 bit integer TB 10 12 KiB 2 10 MiB 2 20 GiB 2 30 TiB 2 40 For example 100 kB is a legal value meaning 100 000 String UTF 8 character string All leading and trailing spaces are ignored between two tags 2 3 General Properties for the Record Tool 2 3 General Properties for the Record Tool Table 2 2 describes optional properties that control the Record tool s main module Table 2 2 General Properties Property Syntax Description DECENT Whether or not the Record tool should start recording data when it is started This option is mostly useful if the Record tool is usually con auto_start DDS_Boolean trolled remotely i ee Default True The verbosity is a bit map that specifies what type of logging information should be printed The verbosity may be 0 silent both RTI Data Distribution Service and the Record tool lt verbosity gt 1 errors both RTI Data Distribution Service and the Record tool verbosity pps Long default lt verbosity gt 2
37. d domain domain ID 0 L advanced config xml With this configuration the Record tool will record e The x and y fields from all Topics named Square in domains 0 and 1 The color field from all Topics in domains 0 and 1 L remote shell xml This configuration file provides a configuration that can be used with the tutorial found in the RTI Recording Service Getting Started Guide to learn about how to modify the Record tool while it is running 2 2 1 Configuration File Syntax RTI Recording Service follows the same XML syntax rules as RTI Data Distribution Service Please see the RTI Data Distribution Service User s Manual for details 2 2 2 Supported Data Types As you will see in the following sections each property that can appear in the configu ration file uses a specific data type The Record tool converts between the value string in the XML file and the specified type Table 2 1 lists the supported types and the map pings used by the Record tool Table 2 1 Property Value Data Types Type Format Notes char and octet compact form sequences and arrays yes 1 true on TRUE These values are not case sensitive no 0 false off FALSE DDS Boolean Enum values are not case sensitive Legal values are those listed for the property in the online HTML documentation for the RTI Data Distribu tion Service C API DDS Enum A string 2 4 2 2 General Format Table 2 1 Prope
38. d tool will ignore Topics published with a type that conflicts with an already discovered type RecordGroup Properties A RecordGroup is a binding between a TopicGroup and a Domain It controls which TopicGroup members are recorded for each Domain Any Topic that is part of a Topic Group in the RecordGroup is recorded from the specified Domains RecordGroups are optional If you do not create one the Record tool will not record any data This is useful if you want to start the Record tool in stand by mode then you can use remote access see Section 2 8 to switch to a different configuration file one that does have a RecordGroup and start recording Table 2 7 describes the RecordGroup properties The following properties are required domain ref 1 topic ref Table 2 7 RecordGroup Properties Property Syntax Description domain ref Required domain ref StringSequence Specifies a sequence of references to domains domain ref Default null topic ref Required topic ref StringSequence Specifies a sequence of references to TopicGroups topic ref Default null subscriber qos DDS SubscriberQos Configures the Subscriber used by the RecordGroup Default default Subscriber QoS settings See the RTI Data Distribution Service User s Manual for details See the chapter on Configuring QoS with XML gubscriber qos gubscriber qos RecordGroup properties must be spe
39. e not all commands are supported for all entity levels Please see the RTI Recording Service Release Notes for details on which modes are currently supported The database name must match a name from a lt replay_database gt tag in the configuration file that you specified when starting the Replay tool such as replay database name simple config Similarly if you specify a session name it must match a name from a session tag within the specified database such as session name A_Session gt If you specify a topic name it must match a name from a replay topic tag within the specified session such as replay topic name All_Topic gt value depends on the command see Table 5 3 Not all commands require a value Performance and Indexing The Replay tool replays stored samples in the same order in which they were received using SQLite indexes to retrieve the samples in sorted order SOLite automatically builds indexes when opening an SQLite table for sorted access and for large tables the process of building the index may take some time To improve initialization performance the Replay tool attempts to create and store indexes rather than depend upon automatic indexing for the tables that it will be replaying this saves initialization time on subsequent replays The Replay tool s ability to store indexes is controlled by the lt readonly gt parameter under replay database see Database Inpu
40. e option cfgFile see Table 5 1 on page 5 2 You may use a combination of the above approaches 2 1 Ap dey amp uun6yuo p Chapter 4 4 2 General Format The Replay configuration file uses XML format The main sections use the following top leve tags Top level Tag Reference Section lt replay_service gt General Properties for Replay Section 4 3 lt replay_database gt Database Input File Properties Section 4 4 lt session gt Session Properties Section 4 5 lt replay_topic gt Replay Topic Properties Section 4 6 lt time_control gt Time Control Properties Section 4 7 lt administration gt Remote Administration Properties Section 4 8 lt domain_type_config gt Type Configuration Section 4 9 The XML configuration file used by Replay has a simple hierarchical format The replay_service is configured to replay data contained in one or more replay_database Each replay_database is associated with a DomainParticipant and must contain one or more session Each session is associated with a Publisher and corresponds to a unique execution thread Each session contains one or more replay_topic each of which is asso ciated with a DataWriter and contains a filter expression that specifies what information contained in the data base should be replayed Each of the four major levels replay_service replay_database session and replay_topic may contain a time_control ele
41. e when all the available data specified in the auto exit DDS Boolean auto exit initial configuration has been replayed Default False replay database replay database Replay Database Properties replay database Required Specifies configuration properties that describe how to replay the information from a data base This element can be repeated See Database Input File Properties Section 4 4 time control time control Time Control Properties time control Specifies time configuration properties to be applied to the Replay tool as a whole See Time Control Properties Section 4 7 2 4 4 4 Database Input File Properties 4 4 Database Input File Properties Table 4 2 describes the source of the data that Replay will replay All lt replay_database gt properties are optional except session These properties must be specified inside replay database name String gt and replay database tags where String is the name to be assigned to the database entity when it is created This name will be used during remote administration Table 4 2 Replay Database Properties Property Syntax Description fil age is S Specifies the name of the fileset that contains the data to be filename PELINI replayed Default undefined lt filename gt and lt participant gt participant oo ank See Table 4 3 Participant Properties Prop
42. ecord tool only 5 tracing the Record tool only 6 tracing both RTI Data Distribution Service and the Record tool This property can also be set in the configuration file However this com mand line option overrides the value specified in the configuration file Stopping the Record Tool To stop the Record tool Press Ctrl C The Record tool will close all files and perform a clean shutdown You can also start stop and even reconfigure the Record tool remotely see Chapter 9 Accessing the Record Tool from a Remote Location Chapter 4 Configuring the Replay Tool 4 1 When you start the Replay tool you must specify a configuration file in XML format In that file you can set properties that control the data source which topics to replay and attributes such as the replay speed This chapter describes how to write a configuration file How to Load Replay s XML Configuration File The Replay tool loads its XML configuration from multiple locations This section pres ents the various approaches listed in load order I rtiReplay executable location gt resource xml RTI_REPLAY_SERVICE xml This file contains the default configuration for the Replay tool it is loaded if it exists RTILREPLAY_SERVICE xml defines a configuration that Replays all top ics on domain 0 LI working directory gt USER_REPLAY_SERVICE xml This file is loaded automatically if it exists LJ The file specified with the command lin
43. er qos property so it will use default DataReader QoS set tings topic group name AllTopics gt topics topic expr topic expr topics field expr lt field_expr gt topic group This next example creates a TopicGroup called ColorsOfSquares that will only include Topics named Square For the recorded Topics only the color field will be recorded The DataReaders for the matching Topics will have default QoS settings except that the Reliability QoS s kind will be DDS RELIABLE RELIABILITY QOS topic group name ColorsOfSquares gt topics topic expr Square topic expr topics field expr color field expr datareader gos reliability kind DDS RELIABLE RELIABILITY QOS lt kind gt reliability datareader qos topic group The following example creates a TopicGroup called AllMinusCircleAndSquare that will include all Topics except Circle and Square For the recorded Topics all fields will be recorded topic group name AllMinusCircleAndSquare topics topic expr lt topic_expr gt exemption Circle Square lt exemption gt topics field expr lt field_expr gt topic group Note Topics are never removed from a TopicGroup The resources used to create DataReaders for discovered Topics are not released if when the Topics are deleted 2 7 RecordGroup Properties 2 7 Note The Recor
44. erties lt participant gt Specifies if Replay should open the data file in read only mode lt readonly gt x j don i true or read write mode false Setting this option to false is fence PPS ROO ledt useful to enable indexing of older database files Default False lt readonly gt See Performance and Indexing Section 5 4 lt session gt Required The configuration properties that describe how to g Session replay the information in a session This element can be SESSION Properties repeated lt session gt See Table 4 4 Session Properties time_control lt time_control gt Time Control Properties lt time_control gt The time configuration properties to be applied to the replay database type_config lt type_config gt XML Properties lt type_config gt Optional XML type configuration for this replay_database This option is useful when type codes have not been recorded in the database or when specifying types that are too large to be recorded in the database See Table 4 13 Type Properties Apjd amp uun6yuo y Chapter 4 Table 4 3 Participant Properties Property Syntax Description lt domain_id gt domain_id DDS_Long Sets the domain ID Default 0 lt domain_id gt participant_qos participant qos DDS QosPolicy participant gos Configures the DomainParticipant s QoS policies See the RTI Data Distribution
45. g to load strncpy msg msg u config config name cfgname 512 Send the configuration message to the Record tool dds writer has been created elsewhere retcode RTIRemoteCtxMsgDataWriter write dds writer msg amp DDS HANDLE NIL check for errors here while no response retcode RTIRemoteCtxMsgDataWriter read next sample dds reader msg amp info amp DDS HANDLE NIL if retcode DDS RETCODE NO DATA response received sleep 1 9 5 ssedoy JoW Y 6 Chapter 9 Table 9 1 Messages Types Exchanged Between Record Tool and Remote Access Application Message Type add prefix RTI_LREMOTECTX_ Direction MSG Description RECORD_START Instructs the Record tool to start recording RECORD _STOP Instructs the Record tool to stop recording Instructs the Record tool to reconfigure according to the contents of the message Stop the Record tool before sending this message RECORD_CONFIGURE If the Record tool has already been stopped it will read the new configu ration and restart It will not automatically start recording unless auto_start see Table 2 2 General Properties is true the default case If the Record tool has not already been stopped an error is returned rom Your RTI Data RECORD SHUTDOWN _ Instructs the Record tool to shutdown and exit Distribution RECORD ADD Instructs the Record tool to add entities based on
46. ges verbosity mask 1 Exceptions default 2 Warnings 4 Information 7 All types help Prints version information and a list of options 9 7 SS92o v ejouleg 6 Chapter 9 9 4 1 9 8 Record Shell s Commands LJ add Section 9 4 1 1 LI configure Section 9 4 1 2 LJ delete Section 9 4 1 3 LI exit Section 9 4 1 4 LI info Section 9 4 1 5 LI model Section 9 4 1 6 LI modify Section 9 4 1 7 1 pause Section 9 4 1 8 LJ resume Section 9 4 1 9 LJ shutdown Section 9 4 1 10 LI start Section 9 4 1 11 LI status Section 9 4 1 12 LI stop Section 9 4 1 13 I update Section 9 4 1 14 Several of the commands accept a model argument A model is an XML representa tion of two aspects of the Record tool The configuration model the XML configuration similar to the XML configura tion file used to configure the Record tool 1 The run time model an XML description of the DDS entities that have been cre ated based on the configuration The format of this XML is the same as the configuration format for the Record tool see Chapter 2 Configuring the Record Tool The top level tag must be lt dds gt followed by recorder Some examples for model are dds recorder record group name RecordAll record group recorder dds 9 4 Using the Example Remote Access Application Record Shell lt dds gt lt recorder gt
47. gt domain name domain0 gt domain id 0 domain id deserialize mode RTIDDS DESERIALIZEMODE ALWAYS deserialize mode lt domain gt lt Create a TopicGroup A TopicGroup is a collection of Topics whose names match the topic_expr The field_expr specifies which fields in the Topics to record Note that a TopicGroup is not bound to a particular domain yet In this example the TopicGroup All means all fields in all Topics gt topic group name Al1 gt topics topic expr topic expr lt topics gt lt field_expr gt lt field_expr gt lt topic_group gt lt Create a RecordGroup A RecordGroup controls which TopicGroups are recorded for a set of domains Each recorded Topic is stored in a table with the format record_group domain Topic In this example we want to record data from topics in TopicGroup All from domain0 gt record group name RecordAll gt lt specify which domains to record from gt domain ref element domainO0 element domain ref lt specify which topics to record gt topic ref element All element topic ref record group recorder lt dds gt 2 3 Buipio2ey amp uun6yuo z Chapter 2 Example configuration files are provided in the examples record directory LI simple config xml With this configuration the Record tool will record all fields from all topics in a specifie
48. he RTI Data Distribution Service documentation 6 1 2 User Data L Deserialized Data When the Record tool stores data in deserialized form it creates a mapping from a Topic to a table Each individual scalar is stored in a column named with the fully qualified name 6 2 6 1 Format of the Recorded Data For example the following will create a column bar x struct Bar long x 1 struct Foo Bar bar 1 l Topic Data The Record tool creates a table called TopicName RecordGroupName Domain Name for each recorded topic unless the shared table property is true The Record tool stores topic data as specified in the subscription properties For each topic the Record tool also stores the following in this order Atimestamp in microseconds since Jan 1st 1970 Note that the column name is ___ timestamp with 3 underscores This is the time that the data was committed to the database e The domain ID from which the sample was received e Table_prefix RecordGroupName DomainName only if lt shared_table gt is specified Whether the data is stored in serialized or deserialized format e The Samplelnfo information as described in the RTI Data Distribution Ser vice documentation Topic data If the topic data is saved in serialized form a special table is used with the fol lowing columns serialized sample raw data e serialized length length of the raw data e serialized endian 1
49. he contents of myconfig xml and send it to the Record tool which will search for a tag record name myrecord gt If auto start see Table 2 2 General Properties is true the default case it is not necessary to run the start command to start the Record tool If auto start is false in the new configuration then issue the start command in the Record Shell to start recording RTI Record Shell start remotefile filename To configure the Record tool with the contents of a file that is local to the Record tool use the remotefile filename option For example assume that you want reconfigure the Record tool with a file called remotemyconfig xml which resides on the same file system as the Record tool RTI Record Shell stop RTI Record Shell configure myrecord remotefile remotemyconfig xml The Record tool will read the contents of remotemyconfig xml and reconfigure with the contents of the tag record name myrecord Depending on the con figuration file it may be necessary to start it RTI Record Shell start delete This command deletes entities from the Record tool The delete command has the following format delete model exit This command exits the Record Shell RTI Record Shell exit info This command shows you which Record tool session the Record Shell is connected to The output looks similar to this STATE Connected to 0a0a64fe 0065bbe00 GUID 0a0a64fe 006bbb00
50. he fileset The first segment number to use and the maximum number of segments are speci fied in the configuration file with the segment number and lt max_file_segments gt properties respectively For example mydata_5_3 means this file belongs to fileset 5 and is the 3rd segment in that fileset The maximum size of a file segment whether to overwrite existing files and whether to overwrite the oldest file can all be set in the configuration file 2 5 Domain Properties 2 5 Domain Properties Table 2 4 describes the Domain properties All Domain properties are optional Table 2 4 Domain Properties Property Syntax Description deserialize_mode lt deserialize_mode gt DDS_Enum lt deserialize_mode gt Determines how topic data is stored in a database serial ized or deserialized The following values are allowed J RTIDDS DESERIALIZEMODE AUTOMATIC deserialize data if possible otherwise store data in serialized format J RTIDDS DESERIALIZEMODE NEVER Do not deserialize the data store data in serialized format J RTIDDS DESERIALIZEMODE ALWAYS Only store data if it can be deserialized first Default RIIDDS DESERIALIZEMODE NEVER See Recording Large User Data Types Section 2 5 1 domain id domain id DDS Long domain id Sets the domain ID Default 0 participant qos participant qos DDS QosPolicy participant qos Configures the
51. ifies the QoS settings for all DataReaders created for this TopicGroup A DataReader is created for each discov ered Topic that matches topic expr All the DataReaders for the TopicGroup will use the same set of QoS policies You can specify all of the QoS policies with the datareader qos property See the RTI Data Distribution Service User s Manual for more information See the chap ter on Configuring QoS with XML See the RTI Data Distribution Service User s Manual for details See the chapter on Configuring QoS with XML field expr field expr POSIX fn expressions lt field_expr gt Required A list of comma separated POSIX expressions that specify which fields in the Topics to record The Topics are speci fied with lt topics gt see Table 2 6 This parameter is ignored when recording serialized data 2 14 2 6 TopicGroup Properties Table 2 5 TopicGroup Properties Property Syntax Description shared_table lt shared_table gt DDS_Boolean lt shared_table gt Required Specifies whether the tables of recorded data are shared or exclusive The Record tool stores Topic data in tables those tables can be Shared or Exclusive An Exclusive table means that each Topic recorded in a RecordGroup is stored in its own table The name of the table follows the convention TopicName RecordGroupName DomainName The separator can be changed with the path separator databa
52. ion Record Shell 9 4 Using the Example Remote Access Application Record Shell The Record Shell is an RTI Data Distribution Service application that can remotely control start stop and reconfigure the Record tool The Record Shell is not meant as a complete solution to remotely controlling the Record tool Its purpose is just to give you an idea of what can be done The Record Shell rtirecsh is in lt install directory gt bin lt architecture gt For example to start the Record Shell enter cd lt install directory gt scripts rtirecsh domain lt domain ID gt Table 9 2 lists the command line options you can use when starting the Record Shell Once it is running you can use the commands described in Record Shell s Commands Section 9 4 1 Table 9 2 Record Shell s Command Line Options Command line Option Description Required d i d in ID cca mk ee Specifies the domain ID an integer between 0 and 99 Specifies an optional comma separated list of partition names This partition names option is necessary if the Record tool is configured to enable remote access in a particular partition noudpv4 Disables the UPDv4 transport updv6 Enables the UDPv6 transport shmem Enables the shared memory transport multicast Enables multicast The verbosity is a bit map that specifies what type of logging infor mation should be printed The verbosity may be 0 No messa
53. its otherwise the file segments are created as needed Example lt name gt test lt name gt lt max_file_segments gt 4 lt max_file_segments gt lt overwrite gt yes lt overwrite gt In this case the Record tool will delete test_0_0 test O 1 and test 0 2 before starting to record to test 0 0 Default False path_ separator lt path_separator gt DDS_Char lt path_separator gt Specifies the path separator character that the Record tool will use when creating table and column names For instance table names follows the TopicName Record GroupName DomainName convention and fields in Topics uses to navigate hierarchical types such as a b c is used as the default path separator instead of the more conventional because does not require quotes when used in SOLite SOL statements For example to use as the path separator path separator path separator Note this property cannot be empty rollover lt rollover gt DDS_Boolean lt rollover gt Specifies whether or not the Record tool should overwrite existing file segments in the fileset once the file size limit max_file_size has been reached for the last file segment True the Record tool overwrites existing file segments as needed starting with the first one False the Record tool stops recording data Default False Buipio2ey amp uun6yuo z Chapter 2 Table 2 3 Database Properties
54. ll Domain Type Config prop erties are optional Record Type Configuration Properties Property Syntax Description domain_type_config lt domain_type_config gt lt domain_type_config gt Domain Type Config Properties Type configuration for spe cific domains See Table 2 10 Domain Type Configuration Prop erties Table 2 10 Domain Type Configuration Properties Property Syntax Description A list of type configuration Koo enc al elements The elements tag d E pied p T can be repeated omain gro main Gro roperties group ji duce See Table2 11 Domain lt element gt Table 2 11 2 20 lt domain_group gt Group Type Configuration Properties Domain Group Type Configuration Properties Property Syntax Description domain_filter lt domain_filter gt lt element gt POSTX fn expression lt element gt lt domain_filter gt A list of expressions for the domains for which these Domain Group Properties should apply The element tag can be repeated type config type config XML Properties type config The type configuration for this Domain Group See Table 2 12 Type Config uration Properties 2 9 Domain Type Configuration Table 2 12 Type Configuration Properties Property Syntax Description xml xml XML Type Config Properties xml The XML type configura
55. ll MyDomain You can query the tables using standard SQL syntax For example assume that the Topic Circle was recorded in RecordGroup MyGroup in domain MyDomain In this case the Record tool creates a table called CirclebMyGroup MyDomain to store all data published on Topic Circle To list all data received on Topic Circle enter sqlite gt select from Circle MyGroup MyDomain 6 1 DiDq pepiooey Bulmel 9 Chapter 6 Note For more example commands please see the Chapter 3 in the Getting Started Guide To exit sqlite3 enter sqlite gt exit 6 1 Format of the Recorded Data 6 1 1 Discovery Data The Record tool stores discovery related data in these tables L DCPSParticipant corresponds to the Participant Built in Topic L DCPSPublication corresponds to the Publication Built in Topic L DCPSSubscription corresponds to the Subscription Built in Topic Please refer to RTI Data Distribution Service C API documentation for the fields in each of the corresponding builtin topics In the HTML documentation for the C API select Modules Domain Module Built in Topics The Record tool stores the following information in this order 1 A timestamp in microseconds since Jan 1st 1970 J State internal information can be ignored LI Type internal information can be ignored I The domain ID from which the sample was received The BuiltinTopicData The SampleInfo information as described in t
56. lt topic_group gt name RTI Shapes Demo gt lt topics gt lt topic_expr gt Square lt topic_expr gt lt topics gt lt field_expr gt color lt field_expr gt lt topic_group gt lt recorder gt lt dds gt 9 4 1 1 add This command adds entities to the Record tool The add command has the following format add model 9 4 1 2 configure The Record tool can be reconfigured remotely with the configure command There are two ways to reconfigure the Record tool using a local file or a remote file Note that the Record tool must be stopped before it can be reconfigured When the Record tool is reconfigured it will shut down completely The Record Shell will lose its connection with the Record tool until the Record tool re establishes remote access If remote access is not enabled in the new configuration Record Shell will not reconnect to the Record tool The configure command has the following format configure lt cfg_name gt localfile remotefile lt file gt The configuration name lt cfg_name gt is used to find the matching lt recorder gt tag to load LI localfile filename Example Assume that you want to the Record tool to use a configuration file called myconfig xml which is local to the Record Shell RTI Record Shell gt stop RTI Record Shell gt configure myrecord localfile myconfig xml ssedoy JoW Y 6 Chapter 9 9 4 1 3 9 4 1 4 9 4 1 5 9 10 The Record Shell will read t
57. me domain name domain name lt input gt lt Optional Values for writing data gt lt output gt lt Optional DataWriterQos gt lt datawriter_qos gt lt datawriter_qos gt lt output gt lt replay_topic gt lt session gt lt replay_database gt lt replay_service gt lt dds gt 2 3 Avidey amp uun6yuo vy Chapter 4 4 3 General Properties for Replay Table 4 1 describes optional properties that control the Replay tool s main module All replay service properties are optional except replay database These properties must be specified inside replay service name String gt and replay service tags where String is the name to be assigned to the service entity when it is created This name will be used during remote administration unless it is overridden by the administration lt name gt element Table 4 1 Replay Service Properties Property Syntax Description Configures the DDS Participant that can be used to administration remotely control Replay via the rtireplaysh utility Remote See Remote Administration Properties Section 4 8 administration Administration The Remote Administration Properties must spec Properties ify a domain id You may also specify a name lt administration gt participant qos publisher qos subscriber qos datareader qos and datawriter qos Controls whether or not the Replay tool should ter SEDED ELE minat
58. ment that allows control over such features as the rate of replay how much of the available data to be replayed and for coordination Much of Replay s configuration has been designed to be compatible with the Record tool so familiarity with the Record tool s concepts and configuration will be helpful See Chapter 2 Configuring the Record Tool Let s look at a very basic configuration just to get an idea of its contents You will learn the meaning of each line as you read the rest of this chapter lt dds gt lt replay_service name default gt lt Optional remote administration configuration gt administration domain id 1 domain id lt administration gt lt time_control gt 4 2 General Format start time 6 start time time control auto exit yes auto exit replay database name simple config filename replay database dat lt filename gt lt Optional ParticipantQos gt participant domain id 0 domain id participant session name simple session time control rate 2 lt rate gt time control lt Optional PublisherQos gt publisher qgos publisher gos replay topic name all_topics gt time control stop time 26 stop time time control input lt Required Values gt topic name topic name type name type name record group name record group na
59. mydomain54 gt 8 2 8 2 How To Record a Subset of Data from Multiple Domains lt domain_id gt 54 lt domain_id gt lt domain gt lt domain name mydomain98 gt lt domain_id gt 98 lt domain_id gt lt domain gt lt topic_group name Sensor gt lt topics gt lt topic_expr gt Sensor lt topic_expr gt lt topics gt lt field_expr gt value lt field_expr gt lt topic_group gt lt record_group name sub0 gt lt domain_ref gt element mydomain54 lt element gt domain ref topic ref lt element gt All lt element gt lt topic_ref gt lt record_group gt record group name sub1 gt domain ref element mydomain98 lt element gt domain ref topic ref element All lt element gt lt topic_ref gt lt record_group gt lt recorder gt lt dds gt Expected Outcome The expected outcome is a single file about 4 GB with all the data in a file called mydomaindata_0_0 By default the Record tool will store deserialized data so the file will have one column per field in the topic suoupinGyuo ejduupxa g Chapter 8 8 3 8 4 8 4 How To Record Data to Multiple Files Scenario The Record tool is recording data on a system that supports files up to 4 GB in size How ever you want to record more than 4 GB of data Configuration File lt dds gt recorder name scenario3 record database database name mydomaindata
60. names max string Integer max string max string The default values to use when there are unbounded strings in a type max sequence Integer max sequence max sequence The default values to use when there are unbounded sequences in a type path element path Path lt element gt lt path gt A list of the paths to be used when searching for XML type configuration paths The element tag can be repeated lt file_group gt lt element gt File Group Properties lt element gt lt file_group gt file_group A list of file groups associated with this domain group A file group is parsed into a single Docu ment Object Module The element tag can be repeated See Table 4 14 XML Type Properties Ap dey amp uun6yuo p Chapter 4 Table 4 14 XML Type Properties Property Syntax Description register top level register top level Boolean register top level Whether or not to register the top level types with their canonical names This overrides the parent max string max string Integer max string The default values to use when there are unbounded strings in a type This overrides the parent max sequence max sequence Integer max sequence The default values to use when there are unbounded sequences in a type This overrides the parent file name file name
61. ng user data RTI Record Shell stop 9 4 1 14 update This command updates entities in the Record tool 9 12 9 4 Using the Example Remote Access Application Record Shell The update command has the following format update lt model gt 9 4 2 Running Multiple Record Tools in the Same Domain The Record Shell can only keep track of one instance of the Record tool To control multi ple copies of the Record tool in the same domain with the Record Shell run each Record tool instance in a separate partition For the first instance of the Record tool change the configuration file as follows remote access enabled true enabled domain domainO0 lt domain gt subscriber qos partition lt name gt lt element gt RecordA lt element gt lt name gt lt partition gt sgubscriber gos publisher gos partition lt name gt lt element gt RecordA lt element gt lt name gt lt partition gt lt publisher_qos gt lt remote_access gt For the second instance of the Record tool change the configuration file as follows lt remote_access gt lt enabled gt true lt enabled gt domain domainO lt domain gt lt subscriber_qos gt lt partition gt lt name gt lt element gt RecordB lt element gt lt name gt lt partition gt lt subscriber_qgos gt lt publisher_qos gt lt partition gt lt name gt lt element gt RecordB lt element gt 9 13
62. o use period p Pus a ae additional memory Default 1 second Minimum 1 second Specifies how many file segments may be created Each time the max_file_size limit is reached for a file max file segments segment a new file is created if this number of segments has max file DDS Long not been exceeded segments lt max_file_segments gt Default 1 Example lt max_file_segments gt 100 lt max_file_segments gt Specifies the maximum size for a file segment The Record tool records data to one or more files This prop erty specifies the maximum file size This is not an absolute lt max file size gt value but a threshold value As soon as the threshold is max_file_ Fi IM Siz ET exceeded no more data is written to file size Default 2 GB Maximum imposed by the operating system Example max file size 1 GB max file size 2 4 Database Output File Properties Table 2 3 Database Properties Property Syntax Description overwrite lt overwrite gt DDS_Boolean lt overwrite gt Specifies whether or not the Record tool should delete all existing file segments in the fileset before it starts recording This is useful if you want to reuse a data file name between recording sessions but do not want to keep any old data True if the file segments already exist they are deleted oth erwise the file segments are created as needed False if the file segments already exist the Record tool ex
63. oading an XML file remotely The file loaded using this command replaces the file loaded using the cfgFile command line option Last to be loaded You may use a combination of the above approaches General Format The configuration file uses XML format The main sections are I General Properties for the Record Tool Section 2 3 I Database Output File Properties Section 2 4 contained in the top level tag record database I Domain Properties Section 2 5 contained in the top level tag domain name String L1 TopicGroup Properties Section 2 6 contained in the top level tag lt topic_group gt LJ RecordGroup Properties Section 2 7 contained in the top level tag record group Ll Remote Access Properties Section 2 8 contained in the top level tag remote access L1 Domain Type Configuration Section 2 9 contained in the top level tag domain type config 2 2 General Format Let s look at a very basic configuration just to get an idea of its contents You will learn the meaning of each line as you read the rest of this chapter lt dds gt lt This simple configuration records all topics from domain ID 0 gt recorder name example lt Specify where to store the recorded data gt record database database name simple config dat database name record database lt Create a DDS DomainParticipant in domain 0 with default QoS
64. on blnCast cns Although expressed as sec and lt nanosec gt the internal resolu tion of Replay is limited to milliseconds Default 0 Ap dey amp uun6yuo p Chapter 4 Table 4 8 Time Control Properties Property Syntax Description The time of the recorded data at which replay is to stop The time lt stop_time gt is interpreted based on the setting of time_mode stop_time DDS Duration Although expressed as sec and lt nanosec gt the internal resolu lt stop_time gt tion of Replay is limited to milliseconds Default Infinity lt start_offset gt start_offset DDS_Duration lt start_offset gt The time to offset the selected entity s starting time from its par ent entity This value is used for synchronizing data that is replayed from different sources When applied to the lt replay_service gt Replay will delay for the number of seconds specified between the creation of the entities and the start of replay To allow for discovery for example When applied to a lt replay_database gt this time is the amount of offset between the index time of the replay_service and the index time of the database When applied to a lt replay_database gt this time allows an additional DDS_Boolean element lt auto_offset gt which if set TRUE directs Replay to automatically calculate the offset between the index time of the lt replay_database gt and the index time of the lt replay_se
65. operties 2 6 4 6 Replay Topic Properties 4 6 Replay Topic Properties Table 4 5 describes the Topics properties All lt replay_topic gt properties are optional except input These properties must be specified within replay topic namez String and replay topic tags where String is the name to be assigned to the replay topic entity when it is created This name will be used during remote administration Table 4 5 Replay Topic Properties Property Syntax Description time control time control time control Time Control Properties Specifies time configuration properties to be applied to the Session input Required Configures the topics that are to be input Input Properties replayed from the database See Table 4 6 lt input gt Input Properties lt output gt Configures the attributes to be used in writing output Output Properties the replayed topics See Table 4 7 Output lt output gt Properties All input properties Table 4 6 are required except for type_name which is optional Table 4 6 Input Properties Property Syntax Description lt topic_name gt String lt topic_name gt topic_name Required Specifies the name of the topic_name that was specified in the Record tool s configuration file or a regular or wildcard expression lt topic_name gt String lt topic_name gt type_name Specifies the
66. pact the structures regardless of how they are stored tableExpr expr POSIX fn name expressions Can be repeated includeInfo Include the DDS SampleInfo structure for each sample includeDiscovery Include discovery traffic includeNonData Include non data samples decodeUnknown Try to decode samples from DDS DataWriters with no typecode format format Output format Default xml xml Output in XML format csv Output CSV format 7 1 DIDg pepiojey amp uiuodx3 Z Chapter 7 7 2 html Output in HTML table format decodeChar lt format gt Decode char data in this format Default text hex Decode char data as hex text Decode char data as ASCII text decodeOctet format Decode octet data in this forma Default hex hex Decode octet data as hex text Decode octet data as ASCII text time lt format gt Format for timestamp epoch Show timestamp in microsec from January 1 1970 gmt Show timestamp in GMT filePrefix lt prefix gt Create one file per table called lt prefix gt _ lt Table gt outputFile lt file gt Name of output file cannot be used with file_prefix typeConfig lt file gt lt cfgName gt Name and configuration of the XML type configuration file For example assume that recorded data is stored in a file named mydata dat_0 The command to convert the recorded data into XML format is rtirecconv mydata dat_0 An output file called mydata dat 0 xml will be cre
67. re 9 1 Registering the Message Type RTIRemoteCtxMsgTypeSupport register type self dds participant RTI REMOTECTX MSG TYPE 9 2 Establishing a Connection with the Record Tool To establish a connection with the Record tool your remote access application needs L 2DDS Topics one for commands one for status 1 DDS DataReader L 1 DDS DataWriter When creating the DataReader and DataWriter use the following QoS settings LI history kind DDS KEEP ALL HISTORY QOS J reliability kind DDS RELIABLE RELIABILITY QOS Figure 9 2 shows how to create the Entities in your remote control application using the C API A general knowledge of DDS is assumed 9 2 9 2 Establishing a Connection with the Record Tool Figure 9 2 Creating the Required DDS Entities dds topic cmd DDS DomainParticipant create topic dds participant RTI RECORD CMD TOPIC RTI REMOTECTX MSG TYPE amp tqos NULL DDS STATUS MASK NONE dds topic status DDS DomainParticipant create topic dds participant RTI RECORD STATUS TOPIC RTI REMOTECTX MSG TYPE amp tqos NULL DDS STATUS MASK NONE rqos reliability kind DDS RELIABLE RELIABILITY QOS rgos history kind DDS KEEP ALL HISTORY QOS dds reader RTIRemoteCtxMsgDataReader DDS Subscriber create datareader dds subscriber DDS Topic as topicdescription dds topic status amp rqos NONE DDS STATUS MASK NONE wqos reliabili
68. rty Value Data Types Type Format Notes DDS Long 2147483648 2147483647 0x80000000 Ox7fffffff A 32 bit signed integer You may include the following unit designations KB 2 10 kB 10 3 MB 10 6 GB 10 9 KiB 2 10 MiB 2 20 GiB 2 30 For example 100 kB is a legal value meaning 100 000 DDS UnsignedLong 0 4294967296 O Oxffffffff A 32 bit unsigned integer You may include the following unit designations KB 2410 kB 1043 MB 10 6 GB 10 9 KiB 2 10 MiB 2 20 GiB 2 30 For example 100 kB is a legal value meaning 100 000 2 5 Buipio ey amp uun6yuo z Chapter 2 Table 2 1 Property Value Data Types Type Format Notes DDS_QosPolicy See the RTI Data Distribu tion Service online HTML C API documen tation for the structure of each QoS policy and the RTI Data Distribution Ser vice User s Manual s chap ter on Configuring QoS with XML Each field in each QoS policy structure has a correspond ing tag The tag is the same as the field name in the DDS C API For enumerations the legal constants are those defined for the DDS C API For example gubscriber qos presentation access scope DDS TOPIC PRESENTATION QOS access scope lt presentation gt lt partition gt lt name gt lt element gt rti lt element gt lt name gt lt partition gt lt subs
69. rvice gt This value should not be applied to lt ses sion gt or lt replay_topic gt Default 0 Table 4 9 Start Mode Values Enumeration Value Description AUTOMATIC Replay of the entity begins automatically For subordinate entities replay begins when parent replay starts MANUAL Replay of the entity begins when explicitly directed by remote administration When an entity is manually started all of its child entities with AUTOMATIC start_mode will also be started at the same time and so forth continuing to the lowest child LOOP Replay of the selected section begins automatically and is restarted immediately after the last data sample of the entity has been replayed For example replay_topics with start_mode LOOP will each restart as soon as each topic has completing its replay while a session with start_mode LOOP will restart only when all of its topics have completed replay Note Currently this mode is operational only for session and replay topic enti ties 4 8 Remote Administration Properties Table 4 9 Start Mode Values Enumeration Value Description MATCHED Replay begins after each child DataWriter has detected at least one matched reader CURRENTLY NOT SUPPORTED Table 4 10 Time Mode Values Enumeration Value Description ABSOLUTE The start_time and stop_time values are in absolute timestamps and will be used without modific
70. se property Thus two topics with the same name but from two different TopicGroups are stored in separate tables A shared table means that Topics with the same name are stored in the same table regardless of where it was recorded from In this case the table has an additional col umn table prefix which stores the table prefix in the form RecordGroupName DomainName Default False exclusive topics topics Table 2 6 Topics Properties topics POSIX fn expressions Required Specifies a topic expression and any exemptions to that expression See Table 2 6 topic expr Property Syntax Description exemption Specifies a comma separated list of expressions that exemption POSIX fn expressions should rot be recorded lt exemption gt Default nothing is exempt Required A POSIX expression that specifies the names of the Topics Stople exprs to be included in the TopicGroup topic expr POSIX fn expression The syntax and semantics are the same as for Partition matching Default null 2 15 Buipio ey amp uun6yuo z Chapter 2 TopicGroup properties must be specified inside topic group namez String and lt topic_group gt tags For example the following creates a TopicGroup called AllTopics which will include all discovered Topics From those Topics all fields will be recorded This example does not specify the optional dataread
71. ssedoy ejowey 6 Chapter 9 lt name gt lt partition gt lt publisher_qos gt lt remote_access gt Then you can run the Record Shell for each partition rtirecsh partition RecordA rtirecsh partition RecordB 9 14
72. t File Properties Section 4 4 The default value for lt readonly gt is false this allows the Replay tool to write the table indices to the database If you change lt readonly gt to true the Replay tool will display a message during initialization for each table opened stating that it was unable to store the table index In summary the replay performance of the Replay tool is not affected by the lt readonly gt parameter The Replay tool will use the fastest means of retrieving samples in either case But setting the lt readonly gt option to false the default may help improve initialization performance Chapter 6 Viewing Recorded Data with SQLite The Record tool stores data in a SQL database This chapter describes how the data is stored and how to view the data with the provided SQL command line tool sqlite3 Not provided for Windows CE and Yellow Dog Linux platforms Important For information on SQL commands please visit www sqlite org To open a recorded file start sqlite3 For example cd rtirecord 4 5 x ndds 4 5y bin lt architecture gt sqlite3 recorded file gt Then you can list all the available topics by entering sqlite gt tables This will list the tables one per topic in the database file For example Circle MyGroup MyDomain DCPSParticipant DCPSPublication DCPSSubscription RTILog RTIVersion Square RecordAll MyDomain Square RecordXYSquaresinMyDomain MyDomain Triangle RecordA
73. the QoS for the DataWriter created by the Record tool s Remote Access module Default default DataWriter QoS settings publish status period publish status period DDS Long publish status period Specifies in seconds the period between each status message sent by the Record tool Default 1 Minimum value 1 publisher qos publisher qos DDS PublisherQos publisher qos Configures the QoS for the Publisher created by the Record tool s Remote Access module Default default Publisher QoS settings remote access domain remote access domain String remote access domain Required if enabled is true Specifies which domain the Record tool will use to enable remote access Only one domain can be specified Note that this is a String not a Domain ID It is the same String used in the domain name String lt domain gt line Default false subscriber qos subscriber qos DDS QosPolicy sgubscriber qos Configures the QoS for the Subscriber created by the Record tool s Remote Access module Default default Subscriber QoS settings 2 19 Buipio ey amp uun6yuo z Chapter 2 2 9 Table 2 9 Domain Type Configuration The Domain Type Config allows you to pass DDS type configuration information to the Record and Convert tools in the form of XML type configuration files Table 2 9 describes the Domain Type Config properties A
74. tion for this domain group See Table 2 13 XML Proper ties Table 2 13 XML Properties Property Syntax Description register top level register top level Boolean register top level Whether or not to register the top level types with their canonical names max string max string Integer max string The default values to use when there are unbounded strings in a type max sequence max sequence Integer max sequence The default values to use when there are unbounded sequences in a type lt element gt lt file_group gt Speen A list of the paths to be used lt element when searching for XML path Path type configuration paths The PLS RE element tag can be repeated lt path gt A list of file groups associ ated with this domain group lt file_group gt A file group is parsed into a Be single Document Object file_group File Group Properties Module The element tag can be repeated See Table 2 14 File Group Properties 2 2 Buipio2ey amp uun6yuo z Chapter 2 Table 2 14 File Group Properties 2 22 Property Syntax Description register_top_level lt register_top_level gt Boolean lt register_top_level gt Whether or not to register the top level types with their canonical names This over rides the parent max_string lt max_string gt Integer lt max_string gt
75. ty kind DDS RELIABLE RELIABILITY QOS wgos history kind DDS KEEP ALL HISTORY QOS dds writer RTIRemoteCtxMsgDataWriter DDS Publisher create datawriter dds publisher dds topic cmd amp wqos NULL DDS STATUS MASK NONE 9 3 ssedoy ejouleg 6 Chapter 9 9 3 Figure 9 3 Remote Control Messages The Record tool exchanges messages with your remote access application by publishing and subscribing to two special remote access topics Both topics use the same message format shown in Figure 9 3 Top Level Structure for Remote Control Messages struct RTIRemoteCtxMsg long destination_mask RTIRemoteCtxAddress destination long msg_id RTIRemoteCtxMsgUnion msg ry For complete details see the IDL file rtirecord idl in the examples directory destination mask A field used by other RTI tools can be ignored destination The Record tool application for which the message is intended If accept broadcast commands is turned off this structure must match that of the Record tool If accept broadcast commands is turned on this structure can be a specific destination or all 0 s msg id A user specified integer that identifies a particular message exchange When the Record tool sends a response to a command it will include the same msg id that was received in the command msg A union of different message types The discriminator must be set to one of the message types listed in Table 9 1 The
76. warnings the Record tool only 3 warnings both RTI Data Distribution Service and the Record tool 4 information the Record tool only 5 tracing the Record tool only 6 tracing both RTI Data Distribution Service and the Record tool 2 4 Database Output File Properties Table 2 3 describes the Database properties All database properties are optional except database_name All database properties must be specified within lt record_database gt and lt record_database gt tags Table 2 3 Database Properties Property Syntax Description create_index lt create_index gt DDS_Boolean lt create_index gt Specifies whether or not the Record tool will index the data base on the reception_timestamp column to allow for effi cient replay Disable for maximum recording performance Default False 2 7 Buipio ey amp uun6yuo z Chapter 2 Table 2 3 Database Properties Property Syntax Description database_name lt database_name gt String lt database_name gt Required The name of the fileset used to store recorded data The Record tool appends a set number and a segment num ber to the filename Default undefined Example lt database_name gt myfile lt database_name gt Specifies how often in seconds to flush data to disk lt max_file_size gt flush_ seep er Bede Note increasing this value causes the Record tool t
77. y cannot be applied to a parent entity e g TOPIC RELATIVE cannot be applied to the time control time mode element of a ses sion replay database or replay service Table 4 8 Time Control Properties Property Syntax Description Specifies the replay rate expressed as a multiple of the original rate at which the data was recorded Therefore 1 means the same as the original rate 2 means twice as fast etc Although this rate may be specified as a real decimal number the strates internal resolution of the rate value is stored as a percentage with rate Real Number two decimal places The rate may also be configured with the spe Spee cial value AS FAST AS POSSIBLE which directs Replay to replay the data without any intervening time between samples The minimum value is 0 01 1 of the original rate Default 1 sstart mode Sets the starting mode of the entity as described in Table 4 9 start_mode Star t MOAS Start Mode Values Default AUTOMATIC lt start_mode gt Seme mod s Describes how the start_time and stop_time parameters should time mode Time Mode be interpreted See Table 4 10 Time Mode Values Default Ve nodes DATABASE RELATIVE except when applied to a replay service entity whose default is SERVICE RELATIVE The time of the recorded data at which replay is to begin The sstart bimes time is interpreted based on the setting of time mode start time DDS Durati
Download Pdf Manuals
Related Search
Related Contents
RC-S380 取扱説明書 Powermatic 720HD User's Manual 02-03 Honda Civic Si Service Manual PZ-53ADF1 の取付工事説明書を見る OFFRE PEDAGOGIQUE 2012 – 2013 Sharp PN-V602 Brochure SRM-236ES/L Philips myGarden Pedestal/post 16451/47/16 DPA III/i Manual version 2.06-r4 IPC5000 Universal Programmable Controller User Manual Copyright © All rights reserved.
Failed to retrieve file