Ich versuche, eine abgestürzte (oder hängende) App zu debuggen. Wie bekomme ich die Diagnosedateien vom Absturz?
quelle
Ich versuche, eine abgestürzte (oder hängende) App zu debuggen. Wie bekomme ich die Diagnosedateien vom Absturz?
Einzelne Absturzberichte werden in ~ / Library / Logs / CrashReporter gespeichert, es gibt jedoch ein systemweites Tool zur Protokollsammlung namens sysdiagnose .
Wenn das Problem auftritt, halten Sie die 4 Steuertasten gedrückt und drücken Sie die Taste "." Schlüssel. shift+ control+ option+ command+.
Nach ungefähr 15 Sekunden wird ein Finder-Fenster mit einer hervorgehobenen Sysdiagnose-Datei geöffnet.
Diese Verknüpfung führt einfach den sysdiagnose
Befehl aus. Wenn Sie mit dem Terminal vertraut sind und eine Prozess-ID übergeben möchten, erhalten Sie erweiterte Debugging-Informationen zu diesem bestimmten Programm. Die Tastenkombination ruft das Tool ohne Argumente auf und erfasst nur den Basisbericht.
~/Library/Logs/CrashReporter
enthält keine.crash
Dateien. Stattdessen:/Library/Logs/DiagnosticReports
und~/Library/Logs/DiagnosticReports
launchctl
startet der Befehl den Daemon.sysdiagnose
Befehl auch in OS 10.6 verfügbar? Ich finde keine Manpage undwhich sysdiagnose
erhalte in OS 10.6.8 nichts zurück oder muss ich sie explizit installieren?Apple sysdiagnose
Dieses Shell-Skript (unter 10.8 und niedriger) und das ausführbare Programm mit demselben Namen unter 10.9:
Vorbereitung auf den Nur-Tastatur-Ansatz für sysdiagnose
Führen Sie im Terminal den folgenden Befehl aus.
Notieren Sie sich den folgenden Akkord, den Sie später benötigen:
Control- Option- Command- Shift-.
Diagnose durch das System
Wenn ein Problem auftritt:
sysdiagnose
Warten Sie etwa fünf oder zehn Minuten, bis alle Teile der Routine abgeschlossen sind. Warten Sie einfach so lange wie möglich (auf dem Bildschirm wird kein Fortschritt angezeigt).Außergewöhnlich
In seltenen Fällen kann ein Problem den Abschluss der Systemdiagnose verhindern (ich habe Apple Verbesserungsvorschläge unterbreitet). In diesem Fall - wenn Sie sicher sind, dass Sie lange genug gewartet haben - kann es sinnvoll sein, den Mac neu zu starten. Dann:
/private/var/tmp
Hinweise
Ohne den Schlüsselakkord können Sie sysdiagnose über die Befehlszeile ausführen (siehe Apple-Handbuch). Aber es ist oft nützlicher oder notwendiger, den Akkord zu benutzen - seien Sie also vorbereitet.
Obwohl ich nicht zu Unachtsamkeit aufrufe, können Sie ein wenig unachtsam sein mit Control- Option- Command- Shift- .… wenn Sie Schwierigkeiten haben, den fnSchlüssel auf Ihrem Laptop zu umgehen , machen Sie sich keine Sorgen; das versehentliche einbinden sollte den lauf von nicht verhindern
sysdiagnose
.Humananalyse der Diagnose durch das System
Hinweis: Möglicherweise möchte jemand eine separate Frage zur Analyse der Ergebnisse von stellen.
sysdiagnose
Eine allgemeinere Antwort kann hilfreich sein.Wenn sysdiagnose_… aus dem
/tmp
Bereich eine Datei istDas Vorhandensein einer
sysdiagnose_….tar.gz
Datei zeigt an, dass alle Teile dersysdiagnose
Routine abgeschlossen und die Ergebnisse archiviert wurden. Wenn Sie möchten, öffnen Sie das Archiv. Der Inhalt wird als Ordner angezeigt.Wenn sysdiagnose_… aus dem
/tmp
Bereich ein Ordner istDas Vorhandensein eines
sysdiagnose_…
Ordners (keine.tar.gz
Datei) weist auf Folgendes hin:Im Archiv / Ordner
Einige Dateien können von Menschen gelesen werden und helfen möglicherweise bei der Behebung eines Problems.
Andere Dateien sind eher auf Entwickler ausgerichtet.
Verbunden:
Bei einem unvollständigen Durchlauf
sysdiagnose
kann es hilfreich sein, sich auf ungewöhnlich leere Dateien zu konzentrieren.Technische und sonstige Hinweise
stackshot (1) OS X Handbuch
sysdiagnose (1) OS X Handbuch
Einige der obigen Angaben sind eine allgemeinere Ausgabe einer akzeptierten Antwort , die an anderer Stelle angezeigt wird.
Diagnose- und Nutzungsinformationen, andere Dateien von Interesse
Lassen Sie sich von der Protokollliste in Console leiten:
Erwarten Sie, dass Sie Dateien unter den folgenden Pfaden finden:
quelle
Console
Um vorhandene Diagnose- oder Absturzdateien zu suchen, öffnen Sie die Konsolen- App und suchen Sie die Dateien in den Abschnitten Benutzerberichte (befindet sich unter
~/Library/Logs/DiagnosticReports
) oder Systemberichte (befindet sich unter/Library/Logs/DiagnosticReports
). Siehe: Wo finde ich meine Absturzprotokolle?sysdiagnose
Gemäß den offiziellen
sysdiagnose
Anweisungen für macOS können Sie eine der folgendensysdiagnose
Aktionen auslösen :Hinweis: Um auf den obigen Link zugreifen zu können, müssen Sie sich zuerst bei der Developer Apple-Site anmelden .
Drücken Sie kurz die folgenden Tasten gleichzeitig:
Command- Option- Shift- Control-Period (.)
und warte. Der
sysdiagnose
Vorgang kann 10 Minuten dauern. Nach Abschluss des Vorgangs sollte Finder automatisch mit der generierten Datei in/private/var/tmp/
(zsysdiagnose_2017.mm.dd_hh-mm-ss-0000_12345.tar.gz
. B. ) angezeigt werden .Triggern Sie a
sysdiagnose
von Terminal, indem Sie den folgenden Befehl eingeben:Core Dumps
Informationen zum Generieren von Absturz-Core-Dumps finden Sie unter: So generieren Sie Core-Dumps unter macOS?
quelle