I have more things to ask that didn't fit into SO comments.
Actually I am actually trying to read from the beginning to be able to debug missing messages.
There are 2 types of missings first is some messages are not in protocol log file(never received or fix8 dropped them. I confirmed that they are published by the market as I can see those trades in an another application which we know that works correctly. Also my server has enough resources and located in a colocation of the market so I believe all messages arrives at the server.)
Second type of message missing is if I kill my app at 15:30 and start app again at 15:40, all messages between15:30-15:40 are missing.
I am missing 688 trades out of 6164.
What is the best approach to debug this?
I am reading 8 streams in 8 ReliableClientSessions in a multithreaded C++ app on Linux. I thought about increasing buffer sizes but in the logs I saw lines like this: "./include/fix8/connection.hpp:652 fd(65) SendBufferSize old:46080 requested:100663296 new:425984" as new is smaller than the requested anyway, i thought increasing the buffer won't help.
Also tracing lost messages is very cumbersome as app dumps all messages in single 'client_protocol.log' even if I added rotation=7 in the xml config file that I attached.
Thanks in advance