Reputation: 14919
When we encounter bugs in our program, we need to be able to debug. The program produces crash dumps via crashrpt. These dumps are for the release-with-debug-info versions of our program and all associated libraries. Everything should be built via a continuous integration server that then produces an installer; however, we cannot use the traces from crashrpt on any computer other than the continuous integration server. As such, one person is tasked with producing the build, and that same person is tasked with processing any incoming crash reports. If that person is out/sick/hit by a bus/etc, then no one else can process our users' crash reports.
How can we synchronize debug information across all computers in our build environment? The goal is to have one set of debug info that everyone can refer to, and that everyone can use stack traces produced by Crash Reporter, regardless of the computer used to produce the build.
We use Visual Studio 2008, Windows 7 64 bit, and Qt SDK 4.7.4, if that information is relevant.
Upvotes: 2
Views: 264
Reputation: 5689
You can build your software on a CI server, withoput problems. At my place we are doing exactly that.
All you have to do is to archive the artifacts (*.pdb;*.exe;*.dll
) of the compilation and put them on your internal file server for example. This archive should not be delivered to customers.
Whenever you get a crash report, look up the version information from the xml
file and pick the corresponding artifact archive from your file server. Put the archive's content into the same folder as the report's dmp
file (1) and also make sure to get the source code corresponding to the time of the build from your version control system.
(1) You can also put the symbols in any folder you like and add that to Visual Studio's list of folders in "Tools/Options.../Debugging/Symbols" (VS 2008).
Upvotes: 1