No commit activity in last 3 years
No release in over 3 years
log viewer for fix protocol logs
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.3
>= 0

Runtime

 Project Readme

FixProtocolTools

Provides fixlogviewer command which shows fix protocol log in human readable way.

Inspired by http://code.nomad-labs.com/fix-message-viewer/

Key features

  • coloring
  • grep by enum values with marked result
  • include own fix dictionary
  • highligh fields
  • hide/show heartbeats

Examples

Fix log as is:

20111107-10:52:22.133: 8=FIX.4.4�9=100�35=A�34=1�49=XXX-MD�52=20111107-10:52:22.128�56=XXX-XUAT�98=0�108=30�141=Y�553=XXXmd�554=XXXmd1�10=146�
20111107-10:52:25.272: 8=FIX.4.4�9=77�35=A�52=20111107-10:52:25.926�49=XXX-XUAT�56=XXX-MD�34=1�141=Y�108=30�98=0�10=176�
20111107-10:52:25.273: 8=FIX.4.4�9=72�35=h�52=20111107-10:52:25.927�49=XXX-XUAT�56=XXX-MD�34=2�336=MD�340=2�10=000�
20111107-10:52:54.373: 8=FIX.4.4�9=130�35=V�34=3�49=XXX-MD�52=20111107-10:52:54.373�56=XXX-XUAT�262=EURUSD:0:0001�263=1�264=0�265=0�146=1�55=EUR/USD�267=2�269=0�269=1�10=192�
20111107-10:52:54.374: 8=FIX.4.4�9=130�35=V�34=4�49=XXX-MD�52=20111107-10:52:54.374�56=XXX-XUAT�262=GBPUSD:0:0002�263=1�264=0�265=0�146=1�55=GBP/USD�267=2�269=0�269=1�10=157�
20111107-10:52:54.688: 8=FIX.4.4�9=173�35=W�52=20111107-10:52:58.255�49=XXX-XUAT�56=XXX-MD�34=6�262=GBPUSD:0:0002�55=GBP/USD�268=2�269=0�270=1.6006�271=1000000�299=28019�269=1�270=1.60082�271=1000000�299=28020�10=207�

Viewed by fixlgviewer:

$ fixlogviewer somefixfile

and

       =-=-=-=-=-=-==-=-=-=-=-=-==-=-=-=-=-=-=
BeginString                    =  FIX.4.4                               8  =  FIX.4.4
BodyLength                     =  100                                   9  =  100
MsgType                        =  Logon                               35  =  A
MsgSeqNum                      =  1                                   34  =  1
SenderCompID                   =  XXX-MD                              49  =  XXX-MD
SendingTime                    =  20111107-10:52:22.128               52  =  20111107-10:52:22.128
TargetCompID                   =  XXX-XUAT                            56  =  XXX-XUAT
EncryptMethod                  =  NONE_OTHER                          98  =  0
HeartBtInt                     =  30                                 108  =  30
ResetSeqNumFlag                =  Y                                  141  =  Y
Username                       =  XXXmd                              553  =  XXXmd
Password                       =  XXXmd1                             554  =  XXXmd1
CheckSum                       =  146                                 10  =  146
        =-=-=-=-=-=-==-=-=-=-=-=-==-=-=-=-=-=-=

With color output

$ fixlogviewer.bat test/example.fix.log -c --highlight=ExecType --no-heartbeats

and

ScreenShot

Installation

$ gem install fix_protocol_tools

Usage

Usage: fixlogviewer [options] [file]

    --dictionary PATH            You can set up FPT_DICT env variable instead
    --highlight field1,field2    Highlight number of fields, you can set FPT_HIGHLIGHTS env variable instead
-c, --[no-]color                 Generate color output
    --grep                       Grep by field id or name
    --[no-]heartbeats            Show full report on heartbeat messages
-h, --help                       Display help message
-v, --version                    Display version message