Back to Geneos FAQ

FIX Analyser 2 Plugin - Key Configuration Requirements for Accurate FIX Log Parsing

Configuration of FIX Analyser 2 (FA2) components required for correct parsing of FIX log files, including:

These elements are essential for ensuring accurate parsing, message sequencing, and state tracking. An incorrect configuration may lead to misleading values, such as negative secondsSinceLastActivity - and may, in some cases, cause the session to appear as Pending even though FIX traffic is flowing normally.

Problem Copied

FA2 is unable to correctly interpret incoming FIX log data, resulting in:

Although this can sometimes cause a session to show Pending, the underlying issue is typically parsing‑related, not FIX-connectivity‑related.

Possible causes Copied

1. Incorrect Send/Receive Regex Copied

FA2 depends on FixLogFileSendReceiveRegex to determine:

If the regex does not match the exact structure of the FIX log, FA2 cannot correctly classify FIX messages.


2. Incorrect FixLogFileTimeRegex Copied

If the timestamp regex is misaligned with the actual log timestamp format, FA2 may:

This often manifests as large negative or unrealistic secondsSinceLastActivity values.


3. Incorrect FixLogFileTimeFormat Copied

Even if the regex matches, the format string must match the extracted timestamp exactly. Common errors include:


4. Wrong or inconsistent field separator Copied

FA2 requires the correct field separator to split FIX tags. Issues occur when:

Improper field delimiter interpretation leads to malformed or unparseable FIX messages.


5. Excessive log noise not filtered out Copied

Many FIX log files contain non‑FIX entries, such as:

Without filtering, FA2 may:

Possible solution Copied

1. Correct the regex pattern Copied

Ensure the (send, receive, send/receive) regex fully matches your actual FIX log pattern, including:

Example receivedId Regex when the FIX log file contains both incoming and outgoing messages (adjust to your environment):

.*INFO.*incoming.*FIX\.4\.2:NORTHPR->BLPPROD:.*

2. Correct FixLogFileTimeRegex Copied

Ensure the regex captures only the timestamp portion, matching your log format precisely.

Example:

^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}\.\d+

Test the regex to verify it matches exactly one time value per FIX message.


3. Correct FixLogFileTimeFormat Copied

Match the timestamp format exactly, including milliseconds or timezone if present.

Example:

yyyy-MM-dd HH:mm:ss.SSS

Validate that the FA2 Netprobe host and FIX engine host have synchronized clocks to avoid time‑skew issues.


4. Verify the correct field separator Copied

Match FA2’s field separator setting to the actual FIX log’s delimiter:

This ensures correct identification of FIX tags (e.g., 49= and 56=).


5. Reduce log noise using Input Text Filter (Invert) Copied

Apply an Input Text Filter to allow only valid FIX lines to be processed, and enable Invert to exclude everything else.

Example Filter:

.*DIAG.*FIX\.4\.2:NORTHPR->BLPPROD:.*

Benefits include:

["Geneos"] ["Geneos > Netprobe"] ["FAQ"]

Was this topic helpful?