IP Merge User Manual
IP Merge User Manual
ipmerge gathers deal data from various TCP-IP connected dealing system interfaces and merges these deals into a single TCP-IP output stream for delivery to a Back Office System (BOS). ipmerge implements identical handshaking at both its inputs and its output and is therefore transparent to the deal sources and to the BOS.
<machinename>:<portname>
Where <portname> is the number of a port, or the name of a port (found in /etc/services) that, on the machine named <machinename>, should be serving deals in the proper format. Ipmerge is a client to these deal servers. Ipmerge is itself a server for two ports whose details are also given in the ipmerge.ini file. When ipmerge reads a line of the form:
_OUTPUT_:<portname>
or
_CONTROL_:<portname>
ipmerge configures the port whose number is may be
derived by looking up <portname> in /etc/services (or
whose number is <portname>) to deliver merged deal-output
and receive acknowledgments on the port tagged with the token
_OUTPUT_. ipmerge executes limited control commands sent
to it (e.g., via telnet) on the port tagged with the token
_CONTROL_.
Lines, in the file ipmerge.ini, starting with the
hash character (#) are ignored (they are comments
or temporarily disabled configuration lines). Both _OUTPUT_ and
_CONTROL_ configuration lines must be present, although
they may appear anywhere in ipmerge.ini.
setenv MRG_ECMD (uniq -6 | cat > /dev/console) Each line in the ipmerge.msg file is timestamped and its process-origin is identified. The file ipmerge.msg is deleted each time after the command in MRG_ECMD is executed.
To prevent short-term error conditions from producing orphaned notifications a 45 second delay is implemented for new batches of error notifications.
<TCID>:<tktnumber>|
is prepended to each record by the deal servers. This
header, which uniquely tags each data record with its source
and ticket number, is passed on, undisturbed by ipmerge,
to the output port. The passage of the header is noted however
and the information parsed from the header is used to verify
that deal data is in transit. If the header does not conform to
a legal form it, and the attached data record, is still passed
to the output port. In this case, a critical message is
generated.
Any response to a legally formed message that comes from the
output port, is passed back to the record originator.
MRG_ECMD The command to be used to process critical (information and error) messages (including all arguments to run the command) is taken from this variable. The command must take its input from the standard input stream.
If ipmerge is left running overnight, a new logfile is automatically created as soon as necessary after midnight.
The file mrg<ddmm>.msg contains one line for each critical message. Each line comprises four sections:
- <application name>
- [<DateTime>]
- <a critical message>
- #<a critical message number>. Error numbers for ipmerge are in the 30,000 to 39,999 range, qmerge errors are in the range 40,000 to 49,999.
For Example:
ipmerge [Tue Nov 14 19:03:06 1995] WARNING, no output
connected, deal capture suspended #30211
- q or Q quit the program gracefully
- k or K list on the controlling window a status line concerning each of the ports specified in the ipmerge.ini file. Information is given about any valid sockets associated with these ports and their states (readable (r), writeable (w), or exception (x)).
- eof ipmerge enters Daemon Mode (see above).
On UNIX operating systems, SIGPIPE is caught and its passage is noted in the logfile.
# facetalk0 and facetalk2 must be present in the services
table
_OUTPUT_:facetalk0
_CONTROL_:facetalk2
fxny-reuters:1602
fxny-ebs:1702
Page Last Updated 10/13/99