...
In this article you can find description of errors, warning, debug and information messages which may be spotted in FIXEdge log files.
ERROR
The connection association got dropped by a network device (NAT/router/switch)
Code Block language bash <Timestamp> ERROR [Engine] <Thread ID> New incoming connection from :0 was rejected because of the error during processing: getpeername. Transport endpoint is not connected. (Error code = 107)
Description: The record means that there had been connection attempt from a counterparty, and when FIX Engine was trying to detect its source ip/port with getpeername function, the connection association got dropped by a network device (NAT/router/switch).
Troubleshooting steps: reconnect the session.
Tag not defined for this message type
Code Block language bash <Timestamp> ERROR [Engine] Session <Session_Name>; Parse Error : Tag not defined for this message type. Parsing stopped at column: *** [RefSeqNum: **, RefTagID: **, RefMsgType: **].
Description: It means that FIXEdge received a FIX message that contains a tag [RefTagID], which is not described in FIX dictionaries for this type of messages. Also it may mean that tag [RefTagID] is outside the repeating group while in the dictionary this tag is inside the repeating group, or vice versa. The exact message can be identified by its sequence number [RefSeqNum].
Troubleshooting steps: Get the FIX message itself from <session>.in file (use RefSeqNum value for assistance). Check the corresponding FIX dictionary to validate correctness of the error. Contact counter-party to resolve the issue or describe this custom tag in corresponding FIX dictionary.
Message cannot be sent
Code Block language bash <Timestamp> ERROR [CC_Layer] LayerImpl::sendMessage2ClientId() has failed: Message cannot be sent: client TestSMTPClient is not logged in.
Description: This message occurs when there is attempt to send a message to a not initialized ("logged in") Client of Transport Adapter (TA). The disclosed in log record "client" name represents the name of TA Client in FIXEdge.properties.
Info Depending on TA type, Client may be also referred as "Session". For example, Clients of SMTP TA are listed under TransportLayer.SmtpTA.SMTPSessions parameter.
The reason for this is that specific TA, to which the Client belongs, is not added to the list of enabled adapters TransportLayer.TransportAdapters in FIXEdge.properties. Once added, you will see in log (after FIXEdge restart) record like
Code Block language bash <Timestamp> INFO [CC_Layer] Client TestSMTPClient has logged in
Troubleshooting steps: 1. First of all, review BL_Config.xml file for the Rule, that routes messages to mentioned Client, and check if it is correct and does what is required by your system. Remove the Rule if there is no need in it.
For instance, the ERROR in this specific example was caused by default BL Rule which was left unintentionally in place:Code Block language bash <Rule> <Source> <FixSession SenderCompID=".*" TargetCompID=".*"/> </Source> <Condition> <EqualField Field="35" Value="C"/> </Condition> <Action> <Send> <Client Name="TestSMTPClient"/> </Send> </Action> </Rule>
2. Check that corresponding TA client was successfully started and connected. Check FIXEdge.properties for correctness, especially that TA is added to TransportLayer.TransportAdapters list.
The connection association got dropped by a network device (NAT/router/switch)
Code Block language bash <Timestamp> ERROR [Engine] <Thread ID> New incoming connection from :0 was rejected because of the error during processing: getpeername. Transport endpoint is not connected. (Error code = 107)
Description: The record means that there had been connection attempt from a counterparty, and when FIX Engine was trying to detect its source ip/port with getpeername function, the connection association got dropped by a network device (NAT/router/switch).
Troubleshooting steps: reconnect the session.
New incoming connection was rejected
Code Block language bash <Timestamp> ERROR [Engine] New incoming connection from xxx.xxx.xxx.x:xxxxx was rejected because of the error during processing: Connection::receive(), EOF from xxx.xxx.xxx.x:xxxxx
Description: This error occurs when a network device drops connection association, or there is a code issue resulting FIX connection to be terminated unexpectedly without Logouts exchange.
Troubleshooting steps: Contact your counter-party for explanation from their side and related events that make bring more light on the root cause.
Error during processing Logon message
Code Block language bash <Timestamp> ERROR [Engine] Session <Session_Name> : Error during processing Logon message from xx.xxx.x.xx:xxxxx: Incoming connection is rejected by application: Cannot create session. Reason: Authentication is failed or session is not configured to accept connection
Description: This is related to setup with LDAP authentication. Authentication is performed against Session identifier (SenderCompID and TrargetCompID) and LDAP using the Username (tag 553) and Password (tag 554) from FIX Logon message.
Troubleshooting steps:
1. Work with counter-party to make sure that that supplied in Logon credentials are correct.
2. Check if credentials are correct in LDAP and any other issues with LDAP itself.
3. Review and check LDAPAuthenticate section in BL_Config.xml file.
...