Introduction
The FIX Analyser product has been redesigned at an architectural level to improve performance and stability of the system.
This re-engineered solution has the following benefits:
- Move heavy processing and resource use away from mission critical FIX Engine servers.
- Improved performance and throughput of the plug-in in terms of number of messages and orders that can be processed.
- Reduced memory utilisation and more stable memory footprint.
Due to these architectural changes the upgrade path for FIX Analyser 2 is non trivial and requires some forward planning. In particular, FIX Analyser 2 now runs as a dedicated binary and so may require additional configuration effort depending upon the existing configuration.
This document explains the requirements and considerations in moving from a FIX Analyser (1) to a FIX Analyser 2 installation. It is assumed readers have a working knowledge of Geneos configuration.
Architectural Overview
This diagram shows the FIX Analyser 2 architecture for non-intrusive monitoring of a FIX server. The FIX monitoring functionality is split across two Geneos component types.
Geneos FIX Analyser 2 Netprobe
- This component does the parsing and analysis of the FIX data, publishes dataviews to Geneos Gateways and services user commands.
- The component is optimised but can still consume CPU and memory resource depending on the number of messages monitored. It is recommended that this component be installed on a server not running other performance critical applications.
- Uses SQLite as a local data cache.
- Can optionally be configured to monitor local files as per FIX Analyser 1.
- Supported on Linux 64 bit platform.
- Can connect to multiple Geneos File Agent processes to gather remote FIX data.
Geneos File Agent
- Non-intrusive lightweight process - can be installed local to FIX logs.
- The process typically runs at less than 1% CPU and consumes around 20MB of RAM.
- Passes FIX log file data back to the FIX Analyser 2 Netprobe for analysis.
- Supported on common Geneos monitored platforms.
- Runs as a service on supported Windows platforms.
- Accepts a connection from a single FIX Analyser 2 Netprobe.
The system initiates a TCP connection from the FIX Analyser 2 process to the File Agent(s). Any firewalls on the File Agent host will therefore need to be configured to permit this connection.
Platform Support
Plug-in Support Matrix
Plug-in | Binary | ||
GA2011.2.2 Netprobe | GA3.0 Netprobe | GA3.0 Fix-Analyser2-Netprobe | |
---|---|---|---|
Fix-Analyser | ![]() |
![]() |
![]() |
Fix-Analyser2 | ![]() |
![]() |
![]() |
Other (e.g. FKM) | ![]() |
![]() |
![]() |
Configurations marked with a cross () will produce a dataview with an error message displayed in the
samplingStatus
headline variable.
Platform support
The FIX Analyser 2 Netprobe binary is supported on the following platforms:
- Linux 64 bit - RHEL 5 or later.
The File Agent binary is supported on the following platforms:
- Linux 64 bit - RHEL 5 or later.
- Linux 32 bit - RHEL 5 or later.
- Solaris Sparc 32 bit - Solaris 10 or later.
- Solaris x86 64 bit - Solaris 10 or later.
- Solaris x86 32 bit - Solaris 10 or later.
- Windows 32 bit - Windows XP / Server 2003 or later.
Note since FIX Analyser 2 is only supported on Linux 64 bit, to monitor files on the following platforms the File Agent is required:
- Linux 32 bit - RHEL 5 or later.
- Solaris Sparc 32 bit - Solaris 10 or later.
- Solaris x86 64 bit - Solaris 10 or later.
- Solaris x86 32 bit - Solaris 10 or later.
- Windows 32 bit - Windows XP / Server 2003 or later.
System Requirements
Geneos FIX Analyser 2 Netprobe
- Supported on Linux CentOS / Redhat 5 64-bit or later, for kernel versions 2.6.18-128.1.1.el5 or later.
- Needs write permission to its working directory.
- Requires 64-bit MySQL client libraries for the optional message database (for licensing reasons this software must be downloaded separately).
- Requires TCP network port (default 7030).
- Disk requirement - depends on the number of views, filters configured and the number of orders processed. On average a system with 5 views processing 1,000,000 orders per day requires 500MB disk space.
- Process memory requirement - will depends on the number of views, filters configured and the number of orders processed. On average a system with 5 views processing 1,000,000 orders per day requires 800MB RAM.
Geneos File Agent
- Supported on all Geneos Netprobe platforms.
- Requires TCP network port (default 7030).
- Disk requirement - binary and log file space typically less than 50MB.
- Process memory requirement - typically less than 20MB.
Message Database
- MySQL version 5.1.6 or later (for licensing reasons this software must be downloaded separately).
- Disk requirement - depends on the the number of orders processed and the number of messages per order. On average a system, processing 1,000,000 orders per day and persisting 3 days data requires 10GB disk space for the database.
- Client library must be installed on the machine hosting the Fix-Analyser 2 Netprobe.
Upgrade considerations
Please review the following section before planning an upgrade. Details about scenario planning can found in the Upgrade Scenarios section.
Licensing Requirements
The plug-in token 'fix-analyser2' is licensable separately from 'fix-analyser'. Customers must be issued with new licence files containing this token to perform the upgrade. FIX Analyser 2 is licensed on a per server basis; so multiple plug-in instances on the same server will consume a single 'fix-analyser2' token.
Geneos Setup Upgrade
The plug-in name in the setup XML schema has changed from fix-analyser to fix-analyser2. This is to allow configuration of existing (or new) FIX Analyser installations against a GA2011.2.2 Netprobe binary, without confusion from seeing additional settings specific to the FIX Analyser 2 plug-in.
The Fix-Analyser 2 schema is backwards compatible with the v1 schema - existing configurations and templates will continue to work with Fix-Analyser 2. In order to upgrade the sampler configuration to use the new plug-in version, only the plug-in name needs to be changed. This can be achieved using the Gateway Setup Editor (GSE) in XML mode, or via direct editing of the setup file using a text editor search and replace command. Note that both open and close tags for the plug-in name must be modified for the XML to remain well-formed.
So the following FIX Analyser configuration:
Should become:
The conversion process in the GSE is as follows:
- Switch schema to a version containing the FIX Analyser2 plug-in, using the
Schema > Switch...
menu option. - Change the view of the sampler configuration to XML mode.
- Change both the open and close tags for the plug-in name from
fix-analyser
tofix-analyser2
. - Change the view of the sampler back to Normal mode.
Conversion can also be performed on a Linux command-line prompt as follows:
sed 's/fix-analyser>/fix-analyser2>/g' setup.xml > setup.converted.xml |
Changes can be verified (to ensure they are as expected) before continuing with the following command:
diff setup.xml setup.converted.xml 2c2 < <fix-analyser> --- > <fix-analyser2> 4c4 < < /fix-analyser > --- > < /fix-analyser2 > |
Aside from this step the schemas are backward compatible so existing configurations and templates will work with the new version.
Splitting a Netprobe
When upgrading to FIX Analyser 2, it is likely you will need to split your Netprobe configuration unless FIX Analyser 1 is the only plug-in running on the probe. Users should note:
- The FIX Analyser 2 Netprobe only contains the FIX Analyser 2 plug-in and so cannot be used for general monitoring.
- The FIX Analyser plug-in has been withdrawn from the general Netprobe from version GA3.0.0 onwards.
- When upgrading machines where a single Netprobe has previously run both Fix-Analyser and general monitoring, a second Netprobe instance must be deployed.
The following steps should be followed to install a second Netprobe instance.
- Install the FIX Analyser 2 Netprobe binary package on the target machine. This should be installed in a separate directory to the general Netprobe. See also System Requirements.
- Edit your start scripts to run the FIX Analyser 2 Netprobe on a different port to the existing Netprobe (the default port for the FIX Analyser 2 binary is 7030).
- Configure your Gateway to connect to the new probe instance. This will require at least a new Probe and ManagedEntity configuration and possibly adjustment to Types if they are in use.
- Convert the existing plug-in schema to reference fix-analyser2 (see Geneos Setup Upgrade).
- Perform any required changes to rules, alerts, or knowledge base Geneos XPath configurations. Paths will need to be updated if they contain any references to specific probe, managed-entity or plug-in names.
We recommend configuring any rules using Type and Sampler names where possible, since this allows samplers to be moved between entities without affecting rule configurations.
For details on how to refactor and validate paths, please refer to the Active Console 2 / Gateway Setup Editor documentation.
Migrating to FIX Analyser 2 architecture
Users upgrading from FIX Analyser to FIX Analyser 2 that are currently running on a non-Linux 64-bit server will also need to migrate their configuration to run the FIX Analyser 2 Netprobe on a Linux 64-bit machine. Please follow steps 1-4 below.
Users already running Netprobe on a Linux 64-bit server need only follow steps 3-4.
- The FIX Analyser 2 Netprobe must be installed on a Linux 64-bit server (the 'Monitoring Server' in the architecture diagram above). If the current Netprobe installation performs both FIX analysis and general monitoring, you will need to split your Netprobe.
- If migrating an existing plug-in configuration Geneos schema will need to be upgraded.
- The File Agent process should be installed on the monitored server (see System Requirements and the File Agent technical reference guide for details on this procedure). This will require a TCP network port (default 7030).
- Configure the FIX Analyser 2 plug-in to request files from the File Agent. Configuration for this can be found under the
files -> file -> fileAgent
section in the plug-in configuration. The hostname and port of the File Agent must be supplied.
Database
FIX Analyser 2 utilises two databases:
Order store database
This database maintains internal order state accounting and is mandatory in FIX Analyser 2. No installation is required for this however - the plug-in will create a disk-based database cache file local to the FIX Analyser 2 Netprobe working directory. The process must have write access to this directory and sufficient disk space must be available. This behaviour is new in FIX Analyser 2 so the additional disk requirement is new when upgrading. Please see the FIX Analyser 2 user guide for sizing guidelines.
Message Database
This MySQL database keeps a record of message level information. This database is optional; it is required for the 'Show Orders' → 'message drill-down' and 'Message query' features. The show orders function will still work if the database is not configured.
The database schema has been upgraded to version 1.2 for FIX Analyser 2. The upgrade adds the following features to the schema:
Feature
|
Description
|
---|---|
Automatic housekeeping | Data older than a specified number of days will be deleted from the system. This improves performance and reduces the storage requirements of the system. |
Optimisation via indexing | Additional indexes are created to improve the performance of the 'show orders' -> 'show messages' feature. This reduces the time taken to return results from large datasets. |
Message Database Compatibility & Support
FIX Analyser 1 will not connect to version 1.2 schemas:
To resolve this it is recommended that in the case where multiple existing FIX Analyser plug-ins write to the same MySQL database that:
- Either a separate database is used for FIX Analyser 2 with schema version 1.2,
- Or that all Fix-Analyser 1 instances are upgraded to FIX Analyser 2 prior to upgrading the schema.
FIX Analyser 2 can operate with earlier schema versions (v1.1 and v1.0) however the housekeeping and query optimisation features mentioned above will not be enabled.
From FIX Analyser 2 support for Microsoft SQL Server for the message level database is withdrawn. Customers will need to migrate to a MySQL database to continue using this function.
For details on upgrading the message level database schema, please refer to the FIX Analyser 2 technical reference guide.
Upgrade Scenarios
1) Customer migrating to File Agent architecture
For customers monitoring on a non Linux platform and those on Linux wishing to upgrade to the File Agent architecture. This is the recommended upgrade path for users.
Refer to the following steps for this upgrade:
Steps
|
---|
Licensing Requirements Geneos Setup Upgrade Splitting a Netprobe Migrating to FIX Analyser 2 architecture Database |
2) Customer monitoring local files on a Linux 64 bit server.
If the monitored system is Linux 64 bit and FIX Analyser 1 is running with acceptable performance on the current system, it is possible to continue monitoring the files locally using the FIX Analyser 2 binary.
Refer to the following steps for this upgrade:
Steps
|
---|
Licensing Requirements Geneos Setup Upgrade Splitting a Netprobe Database |
3) Customer using Microsoft SQL server for message database
This is no longer a supported platform. The system must be switched to MySQL in this case. See the technical reference guide for details on how to install the database schema.
-
Tags:
Comments
0 comments
Please sign in to leave a comment.