RAPCache Subscriber XML Element Descriptions

Configure the RAPCache subscriber using the configuration files opensubscriber.xml, messagefilter.xml and rapcache.xml, located in the RAPCacheSubscriber/config folder.

Warning!  Shut down the RAPCache subscriber before modifying any of its configuration elements.

The opensubscriber.xml file contains publisher-subscriber communication information.

Configurable elements of opensubscriber.xml

Element

Description

OpenSubscriber

Root element for the configuration file.

Logger

Contains settings for logging activities.

LogLevel

The level of logging. Valid values are:
  • Error: log only errors.
  • Warning: log warnings in addition to errors.
  • Info: log informational messages in addition to messages logged at the warning level.
  • Debug: log debugging messages in addition to messages logged at the info level.

LogFile

Name and location of the log file. The file name can be relative or a full path.

TemplateDir

Directory where the message templates are located.

DataStreamHandlerConfig

File to use for data stream handler configuration.

NumPacketBuffers

Number of network packet buffers to create per data channel. The size of one buffer is about the size of the MTU of the network interfaces being used. A larger number of packet buffers means that a larger burst of traffic can be handled without requiring resends. This setting can have a value from 1 -- 4294967296.

PacketWindowSize

Determines how many packets are tracked for resend purposes. This setting can have a value from 1 -- 4294967296. The value should be 80 -- 90% of the publishers NumPacketBuffers.

LatencyCheckInterval

Determines how often (in seconds) the network latency between publisher and subscriber is checked. This setting can have a value from 1 -- 65535.

FlushInterval

Indicates how long (in milliseconds) a data channel can sit idle before a check is made for dropped packets. This setting can have a value from 1 -- 65535.

AdminChannel

Information about the administration channel, which accepts requests for version information, statistics, and shutdowns.

LocalInterface Local interface that the publisher uses to monitor administrative requests.

AdminPort

Port number used by the UAF agent to communicate with the subscriber. The subscriber listens for incoming administration requests on this port.

MaxConnections

Determines the number of concurrent connections to the AdminChannel. Defaults to 10. Value must be in the range of 1 to 65535.

DataStreamChannelList

List of data stream channels from which the subscriber receives messages. Either all or none of the channels for a given publisher should be present. Channels from multiple publishers may be present, and there can be up to 255 data stream channels.

DataStreamChannel

Contains information for one publisher data stream channel.

LocalInterface

IP address of a network interface on the local machine that will receive the messages.

PublisherName

Contains a publisher name for each unique publisher, and is used to identify the publisher.

ChannelName

IPAddress

Port

The ChannelName, IPAddress, and Port should have the same values as in the corresponding channel in the publisher. ChannelName is a descriptive name for the publisher data stream channel. IPAddress is the UDP multicast address used by the publishers data stream channel for sending the messages over the network. Port is the local port used by the publishers data stream channel to send messages over the network using UDP multicasting.

PublisherList

Contains one entry for each unique publisher being used by the subscriber. The list can contain publisher entries that are unused in the DataStreamChannel definitions, however, this consumes resources and may decrease performance.

Publisher

Contains information about each unique publisher being used by the subscriber.

PublisherName

Corresponds to the PublisherName used in the DataStreamChannel definitions.

IPAddress

IP address or host name of the machine hosting the publisher.

ResendPort

ResendPort must have the same value as the publisher's ResendPort definition in the publisher.xml.

The messagefilter.xml file contains message filtering information for the subscriber.

Configurable elements of messagefilter.xml

Element

Description

MessageFilter

Root element for the configuration file.

RuleList

Contains the list of message filtering rules.

Rule

Contains information about a message filtering rule. This element contains one MessageType element and zero or one FieldRule elements.

MessageType

Type of the message to include/exclude.

RuleType

Determines the message filtering rule type. Valid values are include: if the rule holds true, include the message and exclude: if the rule holds true, exclude the message.

FieldRule

Contains the conditions for rules on a particular message field.

FieldName

Name of the field to include/exclude when the value of the field matches FieldValue.

FieldValue

Value of the field to match. If the value is a time, the format of the value must be hh:mm:ss or hh:mm:ss.sss. If the value is a date, the format must be YYYY-MM-DD. If the value is a DateTime, then the format must be YYYY-MM-DDThh:mm:ss or YYYY-MM-DDThh:mm:ss.sss.

The file rapcache.xml contains configuration information specific to the RAPCache subscriber.

RAPCache elements of rapcache.xml

Element

Description

CacheDSH

Root element for the configuration file.

CacheDB

Information for the RAPCache database.

LoginName

User name for connecting to the RAPCache database.

LoginPassword

Password for connecting to the RAPCache database.

ServerHostName

Name of the machine hosting the RAPCache database.

ServerPort

Port number for the RAPCache database.

TDSPacketSize

Allows the configuration of the packets sent between the RAPCache subscriber and the RAPCache database. Valid values are multiples of 512 between 1024 and 32K. Up to a point, increasing packet sizes may result in marginally better load performance.

BulkLoadingAttributes

Specifies the attributes used to bulk-load messages into the RAPCache database.

BulkBatchSize

The number of rows that can be inserted in a table partition before a commit occurs.

BulkInsertArraySize

The number of rows inserted into a table partition at one time. This option must be a divisor of the batch size. Larger values generally yield better performance. The memory for the bulk-insert array is preallocated for each partition of each database table reference in the message templates.

IdleBufferWriteDelayMSec

The number of milliseconds that a table partition may sit idle with uncommitted data available for insert.

BufferAgeLimitMSec Forces the loading of any data which has been in existence longer than the time limit. The default value for this parameter is 10000 (10 seconds). The value cannot be lower than 1 or greater than 65.5.
InterlinkTransferLocation

(Optional) Directory used by the RAPCache database to hold derived data files that are to be transferred to the RAP Store database. Must be an absolute path; otherwise the RAPCache subscriber exits with an error on start-up. If unspecified, the RAPCache subscriber cannot participate in high-speed derived data file transfers, however, loading of market data occurs as usual. The default rapcache.xml sets this option to $RAP/RAPCacheSubscriber/interlink, where $RAP is the RAP R4 installation location. The installer creates an empty interlink subdirectory of the RAPCache subscriber directory and changes this value to point to it.

Related concepts
Filter Rules
Related reference
Message Filtering