...
In order to save session state into the database BL-Rules should be configured on the FIXEdge side:
...
BL_Config (4).xml |
---|
<?xml version="1.0" encoding="UTF-8"?> <!-- <!DOCTYPE FIXEdge SYSTEM "BusinessLayer.dtd"> --> <FIXEdge> <BusinessLayer> <!-- DB Table with Session Status --> <History Name="SessionStatus" StorageType="ODBC" TableName="FIXEdge.dbo.SessionStatus" ConnectionString="DSN=FIXEdgeDB;UID=user;PWD=password;" UseStoredProcForInsert="true" StoredProcName="insertSessionStatus" > <KeyField ColumnName="_SenderCompId">49</KeyField> <!-- SenderCompId --> <KeyField ColumnName="_TargetCompId">56</KeyField> <!-- TargetCompId --> <KeyField ColumnName="_OrigTime">42</KeyField> <!-- OrigTime --> <KeyField ColumnName="_SessionState">147</KeyField> <!-- Session's State --> </History> <!-- Save Events in 35=C messages notifing about session state to DB --> <Rule> <Source> <FixSession SenderCompID=".*" TargetCompID=".*" /> </Source> <Condition> <MatchField Field="35" Value="C"/> <Exclusion> <MatchMessage Value=".*147=.* AttemptToConnect.*"/> </Exclusion> </Condition> <Action> <Script Language="JavaScript" FileName="FIXEdge1/conf/prepareSessionState.js"/> <SaveToHistory Name="SessionStatus"/> </Action> </Rule> <DefaultRule> <Action> <DoNothing/> </Action> </DefaultRule> </BusinessLayer> </FIXEdge> |
File history