dmtracedump

dmtracedump ist ein Tool, das grafische Aufrufstack-Diagramme aus Trace-Logdateien generiert. Das Tool verwendet das Graphviz-Dot-Dienstprogramm, um die grafische Ausgabe zu erstellen. Daher müssen Sie Graphviz installieren, bevor Sie dmtracedump ausführen. Wenn Sie noch keine Trace-Logs generiert und von Ihrem verbundenen Gerät auf Ihrem lokalen Computer gespeichert haben, lesen Sie Trace-Logs durch Instrumentierung Ihrer App generieren.

Das dmtracedump-Tool generiert die Aufrufstackdaten als Baumdiagramm, wobei jeder Knoten einen Methodenaufruf darstellt. Sie zeigt den Aufruffluss (vom übergeordneten Knoten zu untergeordneten Knoten) mithilfe von Pfeilen. Das folgende Diagramm zeigt eine Beispielausgabe von dmtracedump.

Das dmtracedump-Tool ist im Android SDK Tools-Paket enthalten und befindet sich in android-sdk/platform-tools/.

Syntax

dmtracedump wird so verwendet:

dmtracedump [-ho] [-s sortable] [-d trace-base-name] [-g outfile] trace-base-name

Das Tool lädt dann Trace-Log-Daten aus trace-base-name.data und trace-base-name.key.

Globale Optionen

Globale Optionen Beschreibung
-h HTML-Ausgabe aktivieren
-o Sichern Sie die Trace-Datei anstelle der Profilerstellung.

Befehle und Befehlsoptionen

Befehle und Optionen Beschreibung
-d trace-base-name Diff mit diesem Trace-Namen
-g outfile Ausgabe in outfile generieren
-s sortable URL-Basis zum Speicherort der sortierbaren JavaScript-Datei
-t percent Minimaler Schwellenwert für die Einbeziehung von untergeordneten Knoten in die Grafik (die Einschlusszeit des untergeordneten Elements als Prozentsatz der Einschlusszeit der übergeordneten Knoten). Wenn diese Option nicht verwendet wird, beträgt der Standardgrenzwert 20%.

Ausgang

Abbildung 1: Screenshot von dmtracedump

Für jeden Knoten im Diagramm zeigt dmtracedump die folgenden Informationen an:

ref callname (inc-ms, exc-ms,numcalls)
  • ref: Referenznummer des Anrufs, wie in den Trace-Logs verwendet
  • inc-ms: Inklusive verstrichene Zeit (in der Methode verbrachte Millisekunden, einschließlich aller untergeordneten Methoden)
  • exc-ms: exklusive verstrichene Zeit (in der Methode verbrachte Millisekunden ohne untergeordnete Methoden)
  • numcalls: Anzahl der Anrufe