So I find myself in a little further over my head then usual and I'm not sure where to start. I need to find a way of recording all of the connections that a Java application and its javaw.exe child process try to make during their life time. We get an error indicating that one of the processes cannot reach a certain end point when performing a certain task but no indication of where it is actually trying to connect to, nothing in the Windows Event Viewer or the "debug.log" file that their program creates when it launches (for which I had to modify the ACL's for a particular folder on over 200 machines so that our restricted users could write to it.
I have this proprietary POS\CMS application that one of our clients tells us to have our agents use. This application is written in Java (one of the older, pre Win Vista, versions if that helps). The production version and the training version install side by side, but only with the training version while performing a specific task we get a pretty clear error that states "Unable To Contact Server" every time. Now obviously the correct answer would be to contact the client and inform them of this issue in order to get it resolved and we did that ... about six months ago. We have been going back and forth with them ever since and we are getting now where, at one point they actually asked us if we installed it correctly ... The installer is an MSI that they provide to us so I'm not really sure how we could have screwed that up. Now here we are four major releases of the application later and the issue is still ongoing, only when performing that certain task and only in the training environment, and the only progress that we've made is to discover that they don't keep track of all of the hosts file entries that are required for their applications to run on our machines. Things have gotten a little heated, I was told by my boss not to correspond with one of their techs anymore because I guess he complained that I hurt his feelings; but we at the point where I'm disassembling their application because their support team is beyond useless so I think my anger toward them is justified.
TL;DR: How do you record all of the connections a specific process and its childern are trying to make while they are running?