This is what I think you should do.
1) setup an event monitor that track everything (not just the "default") -- In my opinion, it is better to have too much info than not enough.
2) Start the event monitor.
3) run the application
4) Use the snapshot monitor to watch behavior
5) record the entire error messages in the app. You need to know whether it is encountering timeouts or deadlocks. Make sure you have the timestamp of when these occurred--you will need this to compare to data from event monitor.
6) run the entire thing until you are experiencing your problem.
7) analize all the data gathered to determine where problem is occurring.
Note: here is a good GUI snapshot monitor:
http://chuzhoi_files.tripod.com/index.html
Andy