I use mp_log.txt (combiend with a lua script) to extract data and with that create a file than later the members of our squad can upload and an automatic system process and save it in a database (our squad's logbook).
I've probed that mp_log.txt is opened when you open the game and closed when you close it. Is deleted and a blank mp_log.txt created and opened when you start the game again. (I've said you that in another post dodger42)
All that I've made to take and process the data in mp_log is parsing the file (everytime a mission stops).
In our case is possible that you fly 3, 4 or 5 missions without restart the game, so the data of this flights is there all in one file.
What I do to solve it?
There are two ways. Examining ./Temp/AsyncNet.log you can know how many sessions are stored in the mp_log.txt and subsequently try to get where start and where end each session. (for example a 00:00:00 time if a remember good in the log)
The other way is the way that now we use in the script.
The lua script examine the mp_log.txt everytime the session start (mission) and counts how many lines are writted. So at the end of the session the script exclude these number of lines and only process the new ones....
I don't know if it can help you, but i try to explain it the best i know in my bad english.
And I repeat my experience. The data in the mp_log.txt start to be writted in the first event of the first mission and ends in the last of the last missions. Every data is accumulated in the file.
:P