Skip to content

siva-balan/Log-Analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

FIX 4.4 Log Analyzer

A lightweight, browser-based FIX 4.4 protocol log analyzer built with Python + Flask. No database, no external dependencies beyond Flask — everything runs locally.

Python Flask License


Features

  • Upload or paste FIX 4.4 log files directly in the browser
  • Multi-delimiter support — handles SOH (\x01), |, |, and ^A
  • Session summary — total messages, logons (35=A), logouts (35=5), MD/Quote requests (35=V/R)
  • Login/Logout highlights — first and last logon/logout events, ordered by SendingTime (52)
  • Subscribed pairs — unique currency pairs from 35=V and 35=R subscription messages
  • Streaming indicative quotes — symbols where the last Quote (35=S) had QuoteCondition 537=0
  • QuoteID search — search any QuoteID (tag 117) and see all related messages including the originating 35=V/R request
  • No data stored — all parsing happens in-memory per request

Getting Started

Prerequisites

Python 3.8+
Flask

Installation

git clone https://github.com/siva-balan/Log-Analyzer.git
cd Log-Analyzer
pip install flask
python fix_log_analyzer.py

Then open your browser at http://localhost:5000 (default port, can be changed by defining ports during running).


Usage

  1. Upload a .log or .txt file, or paste FIX messages directly into the text area
  2. Click Analyze to parse and display the summary
  3. Use the QuoteID search box to trace a specific quote across all related messages
  4. Click Clear & Reload to start fresh

Sample Log

A sample FIX 4.4 log file (sample_fix44.log) is included in the repository to demonstrate all features. It covers:

  • Logon / Logout (35=A / 35=5)
  • Market Data Subscription and Unsubscription (35=V)
  • Quote Request (35=R)
  • Market Data Snapshot (35=W)
  • Streaming Indicative Quotes (35=S with 537=0)
  • Multiple currency pairs: EUR/USD, GBP/USD, USD/JPY, AUD/USD

Supported FIX Message Types

MsgType Description
A Logon
5 Logout
V Market Data Request
R Quote Request
W Market Data Snapshot
S Quote (Streaming Indicative)

Key FIX Tags Used

Tag Field Name
35 MsgType
49 SenderCompID
52 SendingTime
55 Symbol
56 TargetCompID
58 Text
117 QuoteID
131 QuoteReqID
262 MDReqID
263 SubscriptionRequestType
537 QuoteType

Project Structure

Log-Analyzer/
├── fix_log_analyzer.py   # Main Flask app with parser and UI
├── sample_fix44.log      # Sample FIX 4.4 log for demo
└── README.md

License

MIT

About

A fix log analyzer to understand basic information of fix logs such as login/logouts, subscription requests, quotes, indicative quotes etc.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages