Related to:
Configuration of FIX Analyser 2 (FA2) components required for correct parsing of FIX log files, including:
- Send/Receive Regex (FixLogFileSendReceiveRegex)
- FixLogFileTimeRegex
- FixLogFileTimeFormat
- Field separator settings
- Input Text Filter (for noise reduction)
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:
FA2 is unable to correctly interpret incoming FIX log data, resulting in:
- Unreliable message direction (Send vs Receive)
- Incorrect or missing timestamps
- Unexpected or negative activity metrics
- Misidentified message boundaries
- Excessive noise being parsed as FIX data
Although this can sometimes cause a session to show Pending, the underlying issue is typically parsing‑related, not FIX-connectivity‑related.
Possible causes:
1. Incorrect Send/Receive Regex
FA2 depends on FixLogFileSendReceiveRegex to determine:
- Message direction (Send, Receive, Send/Receive)
- Routing flow
If the regex does not match the exact structure of the FIX log, FA2 cannot correctly classify FIX messages.
2. Incorrect FixLogFileTimeRegex
If the timestamp regex is misaligned with the actual log timestamp format, FA2 may:
- Fail to extract a timestamp
- Capture additional/non‑timestamp characters
- Interpret timestamps inconsistently
This often manifests as large negative or unrealistic secondsSinceLastActivity values.
3. Incorrect FixLogFileTimeFormat
Even if the regex matches, the format string must match the extracted timestamp exactly.
Common errors include:
- Missing milliseconds
- Wrong delimiter patterns
- Incorrect ordering (e.g., HH:mm vs hh:mm)
- Inconsistencies between 12‑hour and 24‑hour formats
4. Wrong or inconsistent field separator
FA2 requires the correct field separator to split FIX tags. Issues occur when:
- Logs use
|but FA2 is configured for SOH (default) - Logs contain mixed separators
- FIX proxy rewrites tags, altering the delimiter
Improper field delimiter interpretation leads to malformed or unparseable FIX messages.
5. Excessive log noise not filtered out
Many FIX log files contain non‑FIX entries, such as:
- INFO/debug messages
- System logs
- Heartbeats unrelated to FIX
- Application‑level diagnostic text
Without filtering, FA2 may:
- Parse timestamps from invalid lines
- Interpret noise as FIX messages
- Misread message direction
- Overload the sampler with irrelevant data
Possible solution:
1. Correct the regex pattern
Ensure the (send, receive, send/receive) regex fully matches your actual FIX log pattern, including:
- Whitespace and non‑breaking spaces
- Message prefix (INFO, DEBUG, etc.)
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
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
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
Match FA2’s field separator setting to the actual FIX log’s delimiter:
- SOH (recommended when using raw FIX logs)
- Pipe
| - Custom separator used by FIX proxies or log taggers
This ensures correct identification of FIX tags (e.g., 49= and 56=).
5. Reduce log noise using Input Text Filter (Invert)
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:
- Correct timestamp extraction
- Reduced parser confusion
- Cleaner direction mapping
- Improved sampler stability
Related articles:
- Official FIX Analyser 2 Plugin documentation.
- Geneos - FIX Analyser 2 - Stuck in PENDING status
- FIX-Analyser FAQs
If you need further help:
-
Please contact our support team via the chat service box on any of our websites or raise a support request.
-
Make sure you provide us with:
- Background of the issue or request.
- Use cases, requirements, business impact, etc.
- Encountered error messages.
- Log files or diagnostic files.
- Screenshots.
- And other important information relevant to your inquiry.
Comments
0 comments
Please sign in to leave a comment.