Ich lese jetzt seit einer Woche über apport und seine Verwendung. Konnte aber die folgenden Dinge nicht verstehen.
Szenario:
Ich habe eine Anwendung entwickelt und verpackt. Und der Name ist MyApp.deb
. Der Name des Binärpakets lautet. MyApp
Die Anwendung wird im Pfad installiert /opt/myapplication/bin/MyApp
.
Anforderung:
- Wenn meine Anwendung abstürzt, möchte ich in der Lage sein, Core Dump zu sammeln.
- Bei jedem nachfolgenden Absturz muss ein neuer Absturz erstellt werden, der vorhandene muss jedoch nicht überschrieben werden. Etwas wie automatische Umbenennung mit dem aktuellen Zeitstempel usw. würde mir helfen.
- Wenn ich meine Anwendung auf einem Kundencomputer installiere, darf mein Installateur seine systemweiten Parameter nicht ändern. Nehmen wir zum Beispiel an, ich darf das Muster seiner Kerndateigenerierung nicht ändern, weil der Benutzer / Kunde meine Anwendung hassen könnte, da ich seine Systemparameter ohne seine Zustimmung ändern würde.
- Ich bin mit dem Pfad der Kerndateigenerierung in Ordnung. Entweder aktuelles Verzeichnis oder
/var/crash
Dinge, die ich bis jetzt erforscht habe:
Apport ist ein nettes Dienstprogramm, das die Generierung von Kerndateien ermöglicht. Mit /proc/sys/kernel/core_pattern
kann ich Core-Dateien formatieren. Dies bietet Flexibilität, um die Core-Dateien in ein vordefiniertes Verzeichnis umzuleiten, Core-Dateien mit pid zu benennen, Dateipfadmuster anzuhängen oder vorab zu beenden usw. Für Nicht-Ubuntu-Pakete muss ich Hooks schreiben, um Core-Dumps (Berichte) zu generieren. . Nach dem Sammeln des hochzuladenden Berichts aufteilen.
Dinge, die ich nicht verstehe:
- Ist Apport der, den ich sehen muss? Ich meine, reicht es für meinen Zweck aus? Oder sollte ich mir etwas anderes ansehen?
- Unter was für ein Paket fällt meine Bewerbung? Nenne ich es nicht-Ubuntu? 3. Teil? Was ist es? Ich sehe unterschiedliche Terminologien in Dokumenten?
- Wie gesagt,
MyApp
läuft ab/opt/myapplication/bin/MyApp
, wo werden dann die Kerndateien generiert? Aktuelle Richtung oder/var/crash
? Erkennt Apport Abstürze, die durch Unfälle verursacht wurden/opt
? Interpretiert es es? - Wichtige Frage: Wenn ich die Anwendung entwickelt habe und Apport den Bericht in Ubuntu-Repositorys hochlädt, ist dies nicht sinnvoll. Wie kann ich Apport also anweisen, den Bericht an mich zu senden?
- Ich bekomme diese Fehlermeldung:
executable does not belong to a package, ignoring
. Also, was mache ich falsch? - Muss ich ein Quellpaket erstellen, damit apport mein Paket erkennt? Ist es obligatorisch? Ich möchte nur ein Binärpaket erstellen.
- Ich habe auch irgendwo in den Dokumenten gesehen, dass Apport erkennt:
- Ubuntu-Pakete oder
- Launchpad-Anwendungen, aber meine Anwendung ist keine davon. Wie hilft mir Apport im aktuellen Szenario?