[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

apport/breakpad and fedora



Hey,

There was some good discussion at FUDCon about apport and friends.  I'd really like to see us have a sane story on this by F10 - currently Bugzilla has a lot of unannotated backtraces and it's a big waste of developer/triager time.

So the goal is that when a program crashes, we get a full annotated backtrace to the eyes of the developer.  There's some discussion on the current Fedora wiki page:
https://fedoraproject.org/wiki/Releases/FeatureApport

Here's my executive summary:

Apport: Based on kernel core dump piping, can handle any program crash.  Submits data to launchpad which has tracing server which uses debuginfo to create full stack trace.  Fedora would need to make custom server on top of the lowlevel tools.

Breakpad: Used by Firefox and various Google applications.  Based on a shared library linked into processes which catches SIGSEGV and submits a report via HTTP.
Format: http://code.google.com/p/google-breakpad/wiki/ProcessorDesign
One nice thing is that Mozilla has a lot of investment in a free software scalable processing server called "Socorro": http://code.google.com/p/socorro

GNOME is using breakpad/socorro and has a server up:
http://blogs.gnome.org/ovitters/2007/10/06/crash-gnome-org/
They were prototyping it using Fedora, and I believe bug-buddy which is linked into all GTK+ programs uses breakpad and sends to crash.gnome.org by default.

Some data points from the discussion:

* Apparently Apport submits an entire core dump which is (IMO) a non-starter for Fedora; there are things like passwords in memory that we just can't send by default.

* Mozilla is unhappy that we're turning off their breakpad integration on Fedora, which means they don't have visibility into crashes on freedesktop.org/Linux systems.

* Possibly replace breakpad library linking by using utrace+system service (right?)

* Create debuginfo DAV server and pull debuginfo data dynamically (what are the download requirements?  does this replace gdb's "debuginfo-install" display?)

My 2ยข - Link in breakpad, create http://crash.fedoraproject.org running Socorro.  Investigate either submitting reports to Mozilla as well for Firefox or create a system where our Socorro pushes reports to theirs.  Longer term investigate utrace system service instead of having apps link to breakpad (this gets us non-desktop system crashes without having to universally LD_PRELOAD or whatever).



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]