Features/Apport

From FedoraProject

< Features(Redirected from Releases/FeatureApport)
Jump to: navigation, search

Contents

Apport for Fedora

THIS PLAN IS OBSOLETE: See Features/CrashHandling

Summary

Apport is a set of tools from the Ubuntu project that can:

More information is available on the Ubuntu wiki: Apport and CrashReporting

Owner

Current status

Usage cases / rationale

Benefit to Fedora

Scope

Testing

Much of the apport code contains unit tests, but here are some short recipes for testing out apport.

Testing the client code (crash handler, reporting GUI)

1. Install apport and apport-gtk apport-qt requires PyQt4, which is not yet available in Fedora. 1. Start the apport service: sudo /sbin/service apport start 1. Enable core dumps by setting the core dump size limit to something reasonable: ulimit -c 100000 This will not be necessary once the kernel is patched to improve core handling. 1. Cause a program to crash, e.g. sleep 5 & sleep 1; kill -SEGV %1 Note that this will not work with most GNOME apps unless you start them with --disable-crash-dialog. Isn't there a env var that disables bug-buddy? We should set this when apport is enabled.. (GNOME_DISABLE_CRASH_DIALOG=1, the GTK_MODULES version will need more care, if >1 module is listed, BastienNocera) 1. Wait a moment for the crash report to appear in /var/crash 1. Edit /etc/apport/crashdb and set default = 'debug' This won't be needed in apport-0.91-0.ww2 and later. 1. Run /usr/share/apport/apport-gtk apportd should be in the next apport package - it will do this for you. 1. Wait while the GUI gathers packaging information. 1. Examine and (optionally) send the crash report.

Testing the server code (apport-retrace, tg-crashdb)

TODO.

Dependencies

1. apport-qt requires PyQt4

Details

Merging Fedora-specific client code upstreamComplete
Kernel patch for improved handling of core dumps to pipesIn progress - patch submitted upstream
Implement CrashDB for FedoraNEEDINFO - we have a mostly-complete Turbogears crashdb implementation and RH-bugzilla based implementation (see this example bug ). Unsure which to use.
Crash notifierapportd.c starts with the user's X session and uses inotify to watch /var/crash
PyQt4 for apport-qtPackage under review here , but qt-based interface is not required for release.
Packaging/ReviewIn progress- packages here

Optional

User Experience

Contingency plan

None needed - this is a new feature and can be safely deferred if it is not ready.

Documentation

Information on installing & enabling apport (and reasons why you would want to do this) would be a good idea.

Release Notes

None needed - this should not be installed or enabled by default in F8 final.

Comments and Discussion

See Talk:Features/Apport