Geneos ["Geneos"]
You are currently viewing an older version of the documentation. You can find the latest documentation here.
["Geneos > Netprobe"]["Technical Reference"]

GL Trade

Introduction

The Geneos GL Trade plugin monitors the GL system and displays information for each dataview. This includes the plugin configurations and settings in each plugin.

GL Greffon

The Geneos GL Greffon plug-in monitors the GL system and displays information about user logons through Greffon connections.

Views

This plug-in produces a single view as follows:

gl-greffon2

Legend:

Column Name Description
Login Key The login key used to connect to the system
Greffon The greffon used to connect to the system
Status Status of the greffon/user (shared by all users connecting using the particular greffon)
Member Number Member number associated with the greffon
User Id User id of the user connecting through this greffon
Name Name of the user connecting through this greffon

Plugin configuration

Mandatory configuration:

Plugin = GL-GREFFON

users_ini_file = /bin/greffon/logs/users/users.ini
names_ini_file = /bin/greffon/logs/names/names.ini
traderid_ini_file = /bin/greffon/logs/traders/traderid.ini
slev5liffe_ini_file = /bin/greffon/logs/slev5liffe/slev5liffe.ini
licsym_ini_file = /bin/greffon/logs/slev5liffe/licsym.ini

gl_connect_ini_file_path = /bin/greffon/logs/glconnect-ini/
gl_connect_log_file_path = /bin/greffon/logs/glconnect-log/

Optional configuration:

gl_connect_ini_file_prefix = glconnect_
gl_connect_ini_file_extension = ini

gl_connect_log_file_prefix = glconnect_
gl_connect_log_file_extension = log

debug = true

The following sampling parameters should be set up in the [GREFFON_SAMPLER_DESCRIPTOR]

Name Description Notes
PLUGIN GL-GREFFON MANDATORY
users_ini_file Full path (including filename) of the users.ini file MANDATORY
names_ini_file Full path (including filename) of the names.ini file MANDATORY
traderid_ini_file Full path (including filename) of the traderid.ini file MANDATORY
slev5liffe_ini_file Full path (including filename) of the slev5liffe.ini file MANDATORY
licsym_ini_file Full path (including filename) of the licsym.ini file MANDATORY
gl_connect_ini_file_path Location of the glconnect_XX.ini files MANDATORY
gl_connect_log_file_path Location of the glconnect_XX_DATE.log files MANDATORY
gl_connect_ini_file_prefix Prefix of the glconnect_XX.ini files (i.e. 'glconnect_') OPTIONAL
gl_connect_ini_file_extension Extension of the gl_connect_XX.ini files (i.e. 'ini') OPTIONAL
gl_connect_ log _file_prefix Prefix of the glconnect_ XX_DATE.log files (i.e. 'glconnect_') OPTIONAL
gl_connect_ log _file_extension Extension of the gl_connect_ XX_DATE.log files (i.e. 'ini') OPTIONAL
debug (true/false) The plugin in will print out each line it reads from a .ini or .log file to the standard output, if this option is turned on (off by default) OPTIONAL
     

GL Lost Orders

The GL Lost Orders plug-in compares the lirebase log before and after the GL and exchange execute order-book reset.

This automatic process will highlight any discrepancies caused by the reset process by running a "night" scan of the orders before the reset and a "day" scan of the orders after the reset.

View

This plugin produces a single view showing the status of any lost orders, in the screenshot below the night-scan will activate in 59 seconds and that the day scan will happen 3 minutes later.

gl-lostorders2

In the screenshot below we can see 20 valid orders have been lost between the night and day scan with the lost orders clearly shown in the grid.

gl-lostorders3

Headline Legend

Name Description
totalLostOrders Total number of orders that have gone missing over night.
timeNightScan Time that the first scan is performed.
ordersNightScan Number of orders found in the night scan that should be present in the day scan.
timeDayScan Time the second scan is performed.
ordersDayScan Total number of orders found in the day scan (should match ordersNightScan)

Table Legend

Name Description
<configurable> The details of the order. The columns can be configured in the plug-in setup.

Plugin configuration

The following parameters can be configured for this plug-in:

columns

Allows the columns to be overridden.

Mandatory: No
Default: userId,stockCode,orderStatus,quantity,price,qtyRem,expireDate
The actual fields used are:
V5 noUti,mnemo,orderStatus,quantity,price,remainQty,expireDate
V3 noUti,mnemo,orderStatus,quantity,price,qte,dval

columns > column

Defines an individual column

columns > column > alias

The name of the column as seen in the view

Mandatory: Yes

columns > column > name

The field in the file used to populate the column

Mandatory: Yes

sleVersion

Set this to the SLE version.

Mandatory: No
Default: 5

scanTimes

These allow you to set the times used for scanning.

scanTimes > eveningScanTime

The time to start the evening scan.

Mandatory: No
Default: 18:00

scanTimes > morningScanTime

The time to start the morning scan.

Mandatory: No
Default: 06:00

orderSendCommand

The script that calls the lirebase command.

Mandatory: No
Default: /bin/csh ./gl_orderdump.csh

scanMargin

Used for testing between short intervals

Mandatory: No
Units: Minutes
Default: 120

commandTimeout

How much time the script has to complete.

Mandatory: No
Units: Seconds
Default: 600

lirebaseIniFile

The name of the lirebase ini file.

Mandatory: No
Default: ./gl_lirebase.ini

csvFile

The name of the csv file

Mandatory: No
Default: ./itrsorder.csv

ignoreFileCheck

The day of the week that the night scan file time/date is ignored.

Mandatory: No
Default: check every day

GL Orderbook

The Geneos GL Orderbook plug-in is most effectively used as a manual trigger to produce a snap-shot of the orders on an exchange order book on the GL servers.

The published view provides the means to compare perceived orders (as seen in the GL Win) against the actual or partially executed orders in waiting.

View

gl-orderbook2

Headline Legend

Name Description
totalOrders Total number of orders found.
timeLastTestStart Time that the last test was started.
timeLastTestCompleted This field shows the time the test was completed

Table Legend

Name Description
<configurable> The details of the order. The columns can be configured in the plug-in setup.

Plugin configuration

The following parameters can be configured for this plug-in:

columns

Allows the columns to be overridden.

Mandatory: No
Default:
Aliases: userId,stockCode,orderStatus,quantity,price,qtyRem
Fields: noUti,mnemo,orderStatus,quantity,price,remainQty

columns > column

Defines an individual column

columns > column > alias

The name of the column as seen in the view

Mandatory: Yes

columns > column > name

The field in the file used to populate the column

Mandatory: Yes

orderSendCommand

The command to run to collect the order information.

Mandatory: No
Default: /bin/csh ./dumpgl.command

commandTimeout

How much time the script is allowed to run for

Mandatory: No
Units: Seconds
Default: 1800

retryDelay

If the command times out it will delay for this many seconds before retrying again

Mandatory: No
Units Seconds
Default: 30

forceCollect

Forces collection of data on startup

Mandatory: No
Default: false

qtyColumnName

Used to ignore quantity's that are < 1

Mandatory: No
Default: remainQty

cancelledToken

Used to ignore cancelled orders

Mandatory: No
Default: " Can "

lirebaseIniFile

Name of the ini file to use with lirebase

Mandatory: No
Default: ./gl_lirebase.ini

GL Permissions

The GL Permissions plug-in monitors the GL permissions that traders and users have, as defined by the GL password.ini & traderid.ini files.

View

The GL-PERMISSIONS Plug-in produces a single view:

gl-permissions2

Headline Legend

Name Description
monitoredP3 The ID of the P3 router permissions are being monitored for.

Table Legend

Name Description
UserId The GL id assigned to the user.
UserName The translation of the GL Userid, as configured in names.ini file.
Mnemonic The trade mnemonic as defined in the GL traderid.ini file.
Access Indicates the type of trader access privileges.
Selector Shows if the trader orders have been submitted to the Selector.
SupervisedUsers Lists the users (GL UserIds) that the trader is authorised to supervise.

Plugin configuration

The following parameters can be configured for this plug-in:

usersFile

Specifies the full path to the GL users.ini or passwd.ini file

Mandatory: No
Default: ./users.ini

traderFile

Specifies the full path to the GL traderid.ini file.

Mandatory: No
Default: ./traderid.ini

names

This section associates textual names with the IDs of the GL users.

Mandatory: No

names > data > users

This section defines a user/router community. In most cases there need only be one users section, containing all the users and all the routers. However where there is more than one user with the same ID connecting from different routers (for example on a broker site) they must be separated into different user sections.

names > data > users > router

This specifies the numeric ID of a router and freeform name to describe the router. There can be more than one user entry per users section. Both the name and ID of the router are mandatory.

Mandatory: No

names > data > users > user

This specifies the numeric ID of a user and freeform name to describe the user. There can be more than one user entry per users section. Both the name and ID of the user are mandatory.

Mandatory: No

namesFile

This section specifies the path to a file containing the associations between textual names and GL router IDs. The format of this file is described in Names.ini configuration. If the names section has been defined, then the data in the names section will be saved in the file specified in this section in the format described.

Mandatory: No
Default: ./names.ini

p3LogDir

When this is set, this plug-in will check in this directory for a file named p3_yyyymmdd.log, where yyyymmdd is replaced with the current date. This file will then be read to find the P3 router ID.

Mandatory: No
Default: .

namedUsersOnly

When set to true, will only show the users.ini/passwd.ini users that are also defined in names.ini.

Mandatory: No
Default: false

uncommentedUsersOnly

When set to TRUE only passwd.ini users without a minus preceding the user-id are shown.

Mandatory: No
Default: false

Names.ini configuration

This is an optional reference file that associates textual names with the IDs of the GL routers and GL users. This file can be used instead of defining the data in the names section of the plugin.

The file should always contain one or more [USERS] section.

For example:

[USERS]
ROUTER_ID=17000, Internal 1
ROUTER_ID=17003, Internal 2
USER_ID=232, Simone Jones
USER_ID=231, Charles Stout
[END]

[USERS]
ROUTER_ID=13000, Internal 3
USER_ID = 130, Nina Simmons
USER_ID= 140, William Gower
[END]

USERS is a section that defines user / router communities.

Note: The ROUTER_ID that the users connect from must also be defined in this section in addition to the USER_IDs. More than one router can be defined.

In most cases it is only necessary to define one [Names] section with all known routers and users. However where there is more than one user with the same ID connecting from different routers (for example on a broker site) they must be separated into different router communities.

GL Router

The GL Router plug-in monitors Users and Server connections to the GL P3 router process.

Users View

This view shows a daily history of user connections, Local and Remote, Current and Expired.

gl-router0

Users Headline Legend

Name Description
Total SLE users today
Cumulative daily total of SLE User connections.
(Requires entry in names.ini file to translate server name SLE).
maxConcurrentUsers Maximum number of concurrent users
Current SLE users
The number of user currently logged on to the SLE server.
(Requires entry in names.ini file to translate server name SLE).
Current SLC users
The number of user currently logged on to the SLC server.
(Requires entry in names.ini file to translate server name SLC).

Users Table Legend

Name Description
Key Unique User:Node:Subnode identifier.
userName
The name of the User.
(or the GL UserID if no translation entry is defined in the names section or the file specified by the namesFile section).
ipAddress The user's workstation IP Address.
logonTime The time that the user logged on to GL system.
logoffTime
The time that the user logged off from GL system.
(Blank if still logged on).
userType GL API or GL Win.
localRouter The router to which the user is directly connected.
remoteRouter
The router that connects the user to the market..
Same as local router if stand alone configuration (i.e. not across GL Net).
serverName
The name of the server.
(or the GL ServerID if no translation entry is defined in the names section or the file specified by the namesFile section).
RtrStatus The current status of the router.
SrvrStatus The current status of the Server
userid Actual GL Trade system IDs.
localRouterId Actual GL Trade system IDs.
remoteRouteID Actual GL Trade system IDs.
serverId Actual GL Trade system IDs.

Summary View

This view shows the current API and GL Win Users on SLE and SLC.

Note: The SLE and SLC servers must be defined in the names.ini file for a user connection to be counted.

gl-router1

Summary Table Legend

Name Description
SLE Number of users/servers on SLE
SLC Number of users/servers on SLC

Servers View

This view shows the Router connections to the SLE and SLC servers, a relay type router (i.e. local P3 connect to broker's P3) shows the remote server connections

gl-router2

Servers Table Legend

Name Description
Key Unique User:Node:Subnode identifier.
routerName The name of the Router. (or the GL RouterID if no translation entry is defined in the names section or the file specified by the namesFile section).
serverName The name of the Server (SLE or SLC) or the GL ServerID if no translation entry in names.ini file. Entries that show P3 or are blank, refer to the actual P3 status.
Connection Indicates either "Direct" or via "GL Net".
Status Server/Router status either "Up" or "Down".
uptime The time the Server/Router came up.
downtime The time the Server/Router went down.
routerID Actual GL Trade system IDs.
serverId Actual GL Trade system IDs.

Connections View

This view is only shown if value p3v5IniFilename is defined in the plug-in configuration.

Note: This plug-in uses the netstat command which is part of the net-tools package. The net-tools package is not included in the minimal RHEL7 installation by default. As a result, the net-tools package must be installed separately on a minimal RHEL7 installation in order for the plug-in to work.

gl-router3

Connections Table Legend

Name Description
Column1 Description1
Column2 Description2

Plugin configuration

The following parameters can be configured for this plug-in:

p3LogDir

Specifies the full path to the GL directory for the P3 log files

Mandatory: Yes

names

This section associates textual names with the IDs of the GL routers, GL Server processes (e.g. SLE, SLC, Selector) and GL users. It contains a gl-names > servers section, one or more gl-names > users sections and an optional gl-names > api-names section.

namesFile

This section specifies the path to a file containing the associations between textual names and GL router IDs. The format of this file is described in Names.ini configuration. If the names section has been defined, then the data in the names section will be saved in the file specified in this section in the format described.

Mandatory: No
Default: "names.ini"

apiNamesUnique

By default, GL API application names are used as the unique session identifier. This means that when an api client loggs on and off and on again it will be shown as a single row, even when its GL user id changes with every new logon.

If the API names are not unique , the above algorithm will cause multiple api clients to be shown as one row. To show each API client on a separate line, set ApiNameUnique to False in the Sampler Descriptor.

Note: The drawback of this is that every time an API client connects and disconnects a new line will be shown. Disconnected users can be set to auto clear after an interval defined by RemoveLoggedoffUsersInterval setting.

Mandatory: No
Default: True

allowDuplicateUsers

[Explanation paragraph 1]

[Explanation paragraph 2...and so on]

Mandatory: [Yes/No]
Default: [Value]

removeLoggedoffUsersInterval

Disconnected users and API connections can be set to auto clear after the number of seconds defined by RemoveLoggedoffUsersInterval .

When set to -1, the logged off users and API connections are not removed

Mandatory: No
Default: 43200 (- 12 hours)
Units: seconds

previousFiles > fileCount

This is used for exchanges which are up 20 hours and where logins can persist across days. This informs the plug-in how far back in time to look to find existing logins. (This would be the period between P3 reconnects).

Mandatory: No
Default: 0
Units: days

previousFiles > useStagedInitialisation

If set to true then the plug-in will read a maximum of one file per sample. This is used when reading multiple p3 files at initialisation and the p3 files are large.

Mandatory: No
Default: false

p3v5IniFilename

The full path (including filename) of the p3v5.ini file. The "Connections" view is only shown if this setting is configured.

Mandatory: No
Default: ""

Gl-Names

The GL names section can be shared between different samplers. If it is to be shared, then it is stored in the "Static Vars" section of the setup rather directly in the sampler. Below are the gl-names settings. These can be set in the sampler or in the "Static Vars" section.

gl-names > servers

This section defines a list router/server pairs. Each server entry in the servers section represents a router/server pair.

gl-names > servers > server > id

This is the GL of the server. It is the combination of the router node id and the server subnode separated by a period.

Mandatory: Yes

gl-names > servers > server > type

This is the type of the server.

Mandatory: No
Default: ""

gl-names > servers > server > name

This is a freeform text description of the router/server pair

Mandatory: No
Default: ""

gl-names > servers > server > ignore

Set this to true if the specific router/server pair does not need to be monitored

Mandatory: No
Default: false

gl-names > users

This section defines a user/router community. In most cases there need only be one users section, containing all the users and all the routers. However where there is more than one user with the same ID connecting from different routers (for example on a broker site) they must be separated into different user sections.

gl-names > users > router

This specifies the numeric ID of a router and freeform name to describe the router. There can be more than one user entry per users section. Both the name and ID of the router are mandatory.

Mandatory: No

gl-names > users > user

This specifies the numeric ID of a user and freeform name to describe the user. There can be more than one user entry per users section. Both the name and ID of the user are mandatory.

Mandatory: No

gl-names > api-names

This section is used to describe GL API applications that do not use a fixed name.

For example, where the name is PARSE_345 when the application connects for the first time, and then PARSE_366 the next time they connect and so on. In this case PARSE_ should be defined in this section.

Not using this to section to describe such connections will result in the application being treated as a user, and every time the application connects or disconnects then dummy users will be generated in the GL-ROUTER-USERS window.

This specifies the textual ID of an application and freeform name to describe the application. There can be more than one user entry per users section. Both the name and ID of the application are mandatory.

Mandatory: No

Names.ini configuration

This is an optional reference file that associates textual names with the IDs of the GL routers, GL Server processes (e.g. SLE, SLC, Selector) and GL users. This file can be used instead of defining the data in the names section of the plug-in.

The file should always contain one [SERVERS] section and one or more [USERS] section, and optionally an API_NAMES section.

For example:

[SERVERS]
SERVER_ID = 18999.7800, SERVER_NAME = SLC, ROUTER_NAME = Liffe Fut, IGNORE
SERVER_ID = 18999.7801, SERVER_NAME = SLE, ROUTER_NAME = LiffeF
SERVER_ID = 18999.7804, SERVER_NAME = Selector, ROUTER_NAME = LiffeF
[END]

[API_NAMES]
API_ID=RISK_, Risk Management App
API_ID=PARSE_, Parser App
[END]

[USERS]
ROUTER_ID=17000, Internal 1
ROUTER_ID=17003, Internal 2
USER_ID=232, Simone Jones
USER_ID=231, Charles Stout
[END]

[USERS]
ROUTER_ID=13000, Internal 3
USER_ID = 130, Nina Simmons
USER_ID= 140, William Gower
[END]

SERVERS section defines router/server pairs.

If a particular router/server pair does not need to be monitored, then 'IGNORE' should be added to the line.

API_NAMES should be used where GL API applications do not use a fixed name.

For example, where the name is PARSE_345 when the application connects for the first time, and then PARSE_366 the next time they connect and so on. In this case PARSE_ should be defined in this section.

Otherwise every time the application connects/disconnects it will be treated as a new user, possibly generating a lot of dummy users in the GL-ROUTER-USERS window.

USERS is a section that defines user / router communities.

Note: The ROUTER_ID that the users connect from must also be defined in this section in addition to the USER_IDs. More than one router can be defined.

In most cases it is only necessary to define one [Names] section with all known routers and users. However where there is more than one user with the same ID connecting from different routers (for example on a broker site) they must be separated into different router communities.

GL Sets SLC

The Sets SLC plug-in is a specialised monitor for SLC connectivity to the London (SETS) or Johannesburg (JSE) stock exchanges that utilises the TCP/IP connections.

View

This plug-in produces a single view as shown below:

gl-sets-slc2

Headline Legend

Name Description
logonStatus Current status of the SLC connection to SETS.
logonTime Time the SLC logged on to SETS.

Table Legend

Name Description
serviceCode Unique three digit code identifying the service.
Name Name of the service.
isSubscribing Indicates whether the service is actively subscribing.
startSubscribeTime Time the service started subscribing.
lastActivity Time of the last activity on this session.
todaysRerequests Total number of messages requested today.
rerequestMsgCount Total number of requests to the exchange generated by the above.
MktMsgCount Number of Market messages between this service and market.
IpollMsgCount Number of Idle poll messages between this service and the market.
totalMsgCount Combined total message count between this service and the market.
   

Plugin configuration

The following parameters can be configured for this plug-in:

multicastSessions

Boolean, set to true if multicast is being used.

This plug-in does not track multicast traffic and if the multicastSessions parameter is set then the columns IsSubscribing, StartSubscribeTime and Last Activity are hidden.

Mandatory: No
Default: False

logFile

The full path to the SLC P1 log file.

e.g. /slc/log/p1jse*.log

The log file actually defaults to p1xxx_yyyymmdd.log, however it is recommended that the * wild card is used, as above, as this will always track the latest version of the P1 log file, even if it spans two working days.

Mandatory:Yes
Default: p1xxx_yyyymmdd.log

iniFile

The full path to the SLC ini file.

e.g. /slc/conf/slcjse.ini

Mandatory: Yes

multipleDataFiles

Use this section of multiple data files (one per session) are used - otherwise use the single dataFile parameter.

When multiple data files are used, Idle Polls are not recorded in the data files. Thus the columns IpollMsgCount and TotalMsgCount are hidden.

Mandatory: No

multipleDataFiles > dataFiles

In the case where multiple data files are used, one per session. The datafile will be substitute <SESSIONCODE> with the session names extracted from the ini file. E.g. Instead of "/slc/data/20*.data" for the datafile you would expect to see "/slc/data/20*,<SESSIONCODE>.data".

Mandatory: Yes

multipleDataFiles > iriFile

Location of the IRI data file.

Mandatory: Yes

dataFile

The full path to the SLC data file. This is mandatory if multipleDataFiles is not used.

e.g. /slc/data/20*.data

It is recommended that the * wild card is used, as above, as this will always track the latest version of the data file.

Mandatory: No

GL SLC

Dynamic Exchange View

Unlike most Geneos plug-ins view are generated dynamically. Each time an SLC log file is read the new exchanges will be added as new views and the views that already exist will be updated. Each exchange view shows the scanDate to indicate the day that it was read.

Note: The scanDate will only be displayed after the whole SLC file is read. This allows the user to match up any Dataview to a file via the scanDate (this will match the log file's last modified time).

Headline Legend

Name Description
scanDate Allows the user to match up any Dataview to a file via the scanDate (this will match the log file's last modified time).

Table Legend

Name Description
exchangeSegment Consists of the exchange name and market
percentValuesUtilisation Shows a percentage of how many resources were used in this run
valuesUsed The actual amount of values used
valuesLimit The maximum allowed values
percentMemoryUtilisation Shows a percentage of how many resources were used in this run
memoryUsed The actual amount of memory used
memoryLimit The maximum allowed memory

Plugin configuration

Sample configuration:

logPath: /GLSLC/log
filename: survp1_CAYLON_*

The following parameters can be configured for this plug-in:

logPath

This can either be a windows or UNIX path e.g. /glslc/logs

Mandatory: No
Default: "." (Netprobe working directory)

filename

This can be a wildcarded filename e.g. survp1_CALYON_*, this will match the latest written file survp1_CALYON_20070307

Mandatory: No
Default: survp1_*

GL SLC Relay

The GL SLC Relay plug-in is a specialised monitor for SLC RELAY connections.

View

gl-slc-relay2

Headline Legend

Name Description
totalConnections The number of current connections to specific Markets.

Table Legend

Name Description
Market The name of the individual Market connected to.
Update Rate An indication of the speed of connection to the Market.
Time Since Last Update Elapsed time (in minutes).
Last Update Time The time of the last update
Cumulative Data Total number of KB transferred.

Plugin configuration

The following parameters can be configured for this plug-in:

logFile

The full path to the SLC P1 log file. Where a * is present, the latest matching file will be used. Use of the * is recommended as this will always track the latest version of the P1 log file, even if it spans two working days.

For example:

/slc/log/p1_*.log
Mandatory: No
Default: ./p1_*.log

GL SLE

The Geneos GL SLE plug-in is part of a suite of modules that monitors aspects of the GL trading system.

This monitors the local SLE sending order instructions to an exchange, and receiving acknowledgements from them. It monitors the current and worst delays, number of instructions sent, and number of order instructions that have not been acknowledged.

It also handles most world exchanges, see exchange > type in the Technical Reference section for details.

View

gl-sle0

Headline Legend

Name Description
SLE Mode Indicates whether the SLE is currently functioning as a MASTER or a SLAVE. If no fail-over SLE exists, then the mode is shown as SINGLE.
SLE Database Synchronization Indicates whether SLE database synchronization is currently PRIMARY or BACKUP. If this information is not available, headline will not appear.
Sent to <exchange> today
The total number of order instructions sent to the exchange today.

Includes orders, modifications and cancellations.

Unacknowledged The number of order instructions that have not been acknowledged over a user defined period (default 10 seconds).
receivedMessages The number of order instructions received from the exchange.
totalMessages The sum of order instructions sent to and received from the exchange.
Current turnaround sec The current number of seconds that order instructions are currently taking to be acknowledged by the exchange. This will show the largest turnaround time in this sample.
Last turnaround time sec Shows the last non-zero value of Current turnaround sec.
averageTurnaround The average time, in seconds, that an order instruction took to be acknowledged by the exchange over the last X seconds, where X defaults to 600 and is configurable (see the technical reference section for details)
averageTurnaroundToday The average time, in seconds, that an order instruction took to be acknowledged by the exchange today.
maxMessagesAllowed Displays the maximum number of messages allowed to/from the SLE. This headline will only be visible if the ini file has been set.

Table Legend

Name Description
id The unique ID of the slowest acknowledged or unacknowledged order.
instruction Shows detail of the order that has the worst turnaround time and any instructions that have not been acknowledged, as they appear in the EMIS_xxxxx.log.
turnaroundTime Displays the worst order turnaround time, and any unacknowledged orders.
orderSendTime Displays the send time of the corresponding order.

Plugin commands

The GL SLE plug-in has an additional internal Accept command. This command enables you to "accept" an unacknowledged order row so that it is removed from the dataview. For more information on this command, see Gateway Commands.

GL SLE configuration

The plug-in depends on information supplied by the SLE process. The log level of the SLE process is crucial, and the SLE must log individual order transmissions and acknowledgements. This can be achieved by setting the tracelevel parameter in the [LOG] section of the slev5.ini file to a value of 70 or greater. A restart of the SLE process will be required for this value to take effect.

Increasing the log level of the SLE will increase the size of the log file that the SLE generates. ITRS recommends that the free disk space on this disk partition and the physical size of the log file be monitored to avoid possible issues. This may be achieved with the DISK and FKM plugins.

The GL-SLE plug-in handles millisecond resolution in SLEv5. In order to enable millisecond reporting in the P10 log files, set the following in the [LOG] section of the slev5.ini file:

millisecond = 1

Plugin configuration

GENEOS GL-SLE Plug-in monitors the local SLE to exchange parameters.

exchange

Allows the exchange to be configured

exchange > type

For SLEv5, set this to SLEV5. For pre-SLEv5, set this to the type of exchange.

Mandatory: Yes

exchange > name

This is a display name for the exchange.

Mandatory: No
Default: The exchange type

sleLogDirectory

Specifies the full path to the GL directory where the general SLE log files reside.

e.g. <GL root>/sle/logs

Mandatory: Yes

marketLogDirectory

Specifies the full path to the GL directory where the log files that contain send and receive order instructions reside.

e.g. <GL root>/slev5liffe/logs
Mandatory: No
Default: The same as sleLogDirectory

sendFilePrefix

Pre-SLEv5:
The part of the send file name that precedes the date. Defaults to EMIS.
For SLEv5:
Must be set to <exchange_name>_recv or P10_send (if the exchange specific log does not exist)
e.g. slev5liffe_recv
Mandatory: Yes (for SLEv5)
Default: EMIS (for pre-SLEv5)

receiveFilePrefix

Pre-SLEv5:
The part of the receive file name that precedes the date. Defaults to RECEP.
For SLEv5:
Must be set to <exchange_name>_send or P10_recv (if the exchange specific log does not exist)
e.g. slev5liffe_send
Mandatory: Yes (for SLEv5)
Default: RECEP (for pre-SLEv5)

orderMatchToken

This allows the default order match tokens to be replaced. Setting this will define a single Order Match Token. The 4 match tokens that are used if this value is not defined will be ignored if this is set.

Mandatory: No
Default: SLEOrderId, SLECommandId, localSLECommandID and FENXOrderId

averageTurnaroundInterval

The amount of time used for generating the average displayed in the averageTurnaround headline variable.

Mandatory: No
Units: Seconds
Default: 600 (10 minutes)

unack > unacknowledgeTime

The time after which an order instruction that has not received an acknowledgement is considered to be unacknowledged.

Mandatory: No
Units: Seconds
Default: 10

unack > maxInstructionsToDisplay

The maximum number of unacknowledged instructions that should be displayed. This limits the number of instructions sent from the Netprobe to the Gateway in the event of total exchange outage.

Mandatory: No
Default: 10

filenameChangeCheckInterval

How often to check for new versions of the files, i.e. filenames with the current days date.

Mandatory: No
Units: Seconds
Default: 60

trackAllMessages

Without this option set Quote, TACTIC, zero price and zero quantity orders will not be counted.

Mandatory: No
Default: false

includeZeroPriceOrders

SLEv5 Liffe Options orders seem to sometimes have no price set. Typically these will be rejected, unless this parameter is set to 'true'.

This setting only applies to SLEv5.

Mandatory: No
Default: false

maxSendOrderLinesPerSample

The maximum number of lines to process before skipping to the end of the file and clearing the unacknowledged order list. Setting this too low may cause orders to be missed, setting it too high may cause the plug-in to time out.

This parameter should not be set higher than maxReceiveOrderLinesPerSample.

Mandatory: No
Default: 30,000

maxSendOrdersPerSample

The maximum number of orders to process before skipping to the end of the file and clearing the unacknowledged order list. Setting this too low may cause orders to be missed, setting it too high may cause the plug-in to time out.

This parameter should not be set higher than maxReceiveOrdersPerSample.

Mandatory: No
Default: 10,000

maxReceiveOrderLinesPerSample

The maximum number of lines to process before skipping to the end of the file and clearing the unacknowledged order list. Setting this too low may cause orders to be missed, setting it too high may cause the plug-in to time out.

This parameter should not be set lower than maxSendOrderLinesPerSample.

Mandatory: No
Default: 30,000

maxReceiveOrdersPerSample

The maximum number of orders to process before skipping to the end of the file and clearing the unacknowledged order list. Setting this too low may cause orders to be missed, setting it too high may cause the plug-in to time out.

This parameter should not be set lower than maxSendOrdersPerSample.

Mandatory: No
Default: 10,000

sle_ini

Allows the sle ini file to be specified.

sle_ini > filename

Specifies the full path (including filename) of the sle ini file. (Usually called slev5.ini or sle.ini). The Headline MaxMessagesAllowed is only shown if this parameter is specified.

Mandatory: No

sle_ini > version

Indicates the version of the sle ini file.

Mandatory: No
Default: V5

duplicateOrderTest

Controls how the plug-in detects duplicate outgoing orders in the log file.

Value Description
OFF Do not test. Each order is tracked independent of whether it is a duplicate of a previous order.
ID Uses the ID of the message to identify and ignore duplicate messages.
ID_AND_DESC Uses the ID and description to identify and ignore duplicate messages.
Mandatory: No
Default: OFF

doNotTimeQuoteRq

If set to true, SLEv5 Quote orders (valueType=81) will be ignored.

Mandatory: No
Default: false

useMtimeToMatchLogFiles

Determines what strategy to use when trying to locate the most recent log files from a directory which may contain multiple log files. If true, compares log files by modification date else compares them by creation dates.

Mandatory: No
Default: false

internalEventLevel

The plugin will generate ticker events in the gateway for certain events. This option controls the severity of the event.

Value Description
CRITICAL Generate critical ticker event and log in the netprobe logfile.
WARNING Generate warning ticker event and log in the netprobe logfile.
INFO Generate info ticker event and log in the netprobe logfile.
NONE Log in the netprobe logfile only.
Mandatory: No
Default: CRITICAL

GL SLE TCP

Views

The GL-SLE-TCP plug-in produces two types of views, depending on the MONITOR_OPTION setting in the Sampler Descriptor.

Exchange Connection State View

With MONITOR_OPTION set to TCP (default), the plug-in will monitor the state of the TCP/IP connections to the exchange. See example view below.

gl-sle-tcp2

Exchange Connection State Headline Legend

Name Description
Exchange Indicates selected exchange.
Total links The total number of monitored links.
Failed connections The total number of connections that are not in an ESTABLISHED state.
Failed logons The total number of attempted logons that have failed.

Exchange Connection State Table Legend

Name Description
Connection The connection number as configured in the SLE.ini file.
TraderId The trader mnemonic that uses the connection.
LocalAddress The local address (port no) of the connection.
RemoteAddress The remote address (port no) of the connection.
SendQueue The number of bytes queuing to be sent to the server.
RecvQueue The number of bytes queuing to be processed from the server.
State The state of the connection. This should be ESTABLISHED.

Logon connection State View

With MONITOR_OPTION set to LOGON, the plug-in will monitor the logon state of each connection. This for example, will detect the situation where the TCP/IP link is up, but the logon failed.

gl-sle-tcp3

Logon Connection State Headline Legend

Name Description
Exchange Indicates selected exchange.
Total links The total number of monitored links.
Failed connections The total number of connections that are not in an ESTABLISHED state.
Failed Logons The total number of attempted logons that have failed.

Logon Connection State Table Legend

Name Description
Connection Connection id
TraderId Trader mnemonic
Logged On Logon status- YES , NO, Unknown

Plugin configuration

The following parameters can be configured for this plug-in:

Sample Configuration:

sleIniFile:/sle/conf/SLE.ini
exchange: LIFFE
connectLogDir: /sle/SLE/Liffe
connectLofFilePrefix: glconnect_
monitorOptions: LOGON

sleIniFile

The full path to the SLE.ini file.

Mandatory: [Yes]

exchange

Set to selected exchange. Currently only LIFFE supported.

Mandatory: [Yes]

connectLogDir

The full path to the directory where the connect logs are located.

Mandatory: [Yes]

connectLogFilePrefix

Set to the prefix of the connect log files.

Mandatory: [No]
Default: [glconnectf]

monitorOptions

When set to 'TCP' the plug-in will monitor TCP/IP connection status. When set to 'LOGON', the plug-in will monitor the logon state.

Mandatory: [No]
Default: [TCP]