Breakpad

Revision as of 15:10, 16 November 2006 by Ted Mielczarek (talk | contribs)

Just a braindump on what we'll need to replace Talkback with Airbag. There's a tracking bug on this now, bug 360327.

  1. Client-side exception handler - win32 work done (bug 354980).
  2. Client-side minidump sender - win32 work done (bug 354980).
  3. Server-side minidump collector, CGI to accept POSTed minidump data. Current plans are just to call the minidump processor directly from this CGI. My simplistic collector. bug 358302 covers setting up an official server.
  4. Server-side minidump processor - Mostly implemented by airbag processor, in the minidump_stackwalk example program, we will probably want to modify that a bit to make the output more machine readable, so we can store it in a DB.
  5. Build-time symbol extractor - Provided by airbag tools, bug 359151 is to get it hooked up in the build system.
  6. Server-side symbol store - For matching up stackdumps with symbols. This will just be an organized filesystem setup like Microsoft's Symbol Server. The symbol files extracted from firefox.pdb on Windows appear to be in the 30-60Mb range, but since they're text they compress very well. The simple symbol supplier from airbag uses this, and should be sufficient.
  7. Server-side webapp to show details of crash reports, like talkback-public currently, will need a database backend

Mento's post outlines the Airbag project's proposed scope.

Win32 trunk nightlies currently include the airbag code, but it's disabled at runtime by default. To test it, you will need to set the environment variable MOZ_AIRBAG=1. Crash reports are currently collected at: http://mavra.perilith.com/~luser/airbag-collector/list.pl

Some of the Seneca students are looking into this.

We can get Windows symbols here: Download Windows Symbol Packages and run dump_syms on them to make them useful to airbag.