views:

583

answers:

3

I'm looking for a cross-platform crash handler. Google Breakpad looks promising, but it is sorely lacking any documentation, and requires a reasonable amount of fiddling to actually get going.

What is a better alternative?

All I need is the ability to reliably record crash dumps, stack traces, and CPU information at the time of a crash. Alternatively, what is the experience using Google Breakpad? Has it been great or horrible?

+3  A: 

I wrote a article about dumping the stack in C/C++ with Windows and Unix/Linux at DDJ some years ago. It does not use a cordump, but it writes stack frames into a logfile, on internal errors, or when the OS determines a Application fault.

Maybe it helps you:

See http://www.ddj.com/architect/185300443

RED SOFT ADAIR
A: 

For compiled code, there are two good options - core dumps under UNIX variants and Dr. Watson crash logs/dumps under Windows. I know that this isn't a cross-platform solution, but when if you are only dealing with two platforms, then having two solutions isn't really that bad of a thing.

Of course, the solutions only capture a core image at the time of crash and not the state of the machine. I don't know of anything that will capture IO and CPU load at the time of an application crash. You might want to look into the Mozilla Crash Reporter which is, oddly enough, also known as "Breakpad"... coincidence?

D.Shawley
no, it's not a coincidence - mozilla uses google breakpad as it's crash handler.
Thomi
+1  A: 

Well, it turns out that google-breakpad is pretty nice after all. It's not totally easy to set up, but it's OK for what I need.

Thomi
Hi, I can't seem to figure out how to build it. Any help would be appreciated - http://stackoverflow.com/questions/2925094/how-to-build-google-breakpad
Steve