ubuntuusers.de

Edgy: Automatische Benachrichtigung bei Programmabstürzen

kxubuntu_old.png

Auch wenn noch nicht vollständig automatisiert, besitzt Edgy von nun an eine Benachrichtigung bei Programmabstürzen (1, 2), welche den Entwicklern bei der Fehleranalyse behilflich sein kann. Realisiert wird dies durch das Paket apport-gtk. Dieser Beitrag wurde übersetzt von Ruhe - vielen Dank dafür.

  • Abstürze werden bereits beim ersten Auftreten abgefangen, damit erspart es einem schlaflose Nächte, da man nicht versuchen muss, die Abstürze zu reproduzieren.

  • Die erstellten Protokolle enthalten für die Entwickler notwendige Informationen (Stack traces, core dumps), Namen und Versionen der betroffenen Pakete, sowie alle Abhängigkeiten; zusätzlich Informationen zum Betriebssystem, /proc und Zustand während der Laufzeit. Weitere Informationen unter 1. Mit dieser Vorgehensweise soll die Nachfrage nach häufig fehlenden Informationen beim Melden eines Fehlers verringert werden.

Ablauf

Was beim Absturz einer Anwendung geschieht:

  • Der Kernel erfasst das nicht behandelte "crash signal" und ruft apport auf.

  • apport ermittelt die benötigten Informationen und erstellt ein Protokoll unter /var/crash/.

  • Der update-notifier liest das erstellte Protokoll und leitet es an apport-gtk weiter. Der Benutzer wird über den Absturz informiert und hat die Möglichkeit, diesen als Fehler einzureichen.

  • Der Benutzer entscheidet, ob ein (öffentlicher oder privater) Fehler eingereicht wird, ob ein vorhandener Fehler mit dem Protokoll erweitert werden soll oder ob das Protokoll verworfen wird.

Stürzt eine Anwendung ab, die nicht zur aktuellen Benutzersitzung gehört, findet derzeit keine Benachrichtung statt. Dennoch werden Protokolle, die dem Benutzer des abgestürzten Prozesses gehören, unter /var/crash abgelegt.

Apport erstellt Protokolle nur für Anwendungen, die zu einem installierten Paket gehören.

Bekannte Einschränkungen/Fehler

  • Abstürze in GNOME-Anwendungen werden derzeit über libgnomeui und bug-buddy abgefangen. Es wird daran gearbeitet, dass bei GNOME ebenfalls apport verwendet wird.

  • Ist der Browser so konfiguriert, dass neue Seiten in Tabs anstatt neuen Fenstern geöffnet werden und ist ein Browserfenster bereits auf einem anderen virtuellen Arbeitsplatz geöffnet, so geschieht nichts, wenn der Dialog zum Einreichen eines Fehlers erscheint. Eine Lösung, welche es vermeidet die GNOME-Konfiguration zu überschreiben, ist noch nicht gefunden.

  • Während apport die benötigten Informationen ermittelt, ist die abgestürzte Anwendung für längere Zeit blockiert ("eingefroren").

Rückmeldung

Vorschläge, Kritik, Fehler und andere Rückmeldungen können in erster Linie über 3 oder für Diskussionen per Mail an ubuntu-devel[at]lists.ubuntu.com eingereicht werden.

Der Thread zum Beitrag findet sich hier.