dmtracedump
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
dmtracedump
הוא כלי שיוצר
דיאגרמות קריאה גרפיות מקבץ מקובצי יומן למעקב. הכלי משתמש ב- Graphviz
תוכנית השימוש בנקודה כדי ליצור את הפלט הגרפי, לכן יהיה עליך להתקין את Graphviz
לפני הרצת dmtracedump
. אם לא הפקתם עדיין יומני מעקב
שנשמרים מהמכשיר המחובר למחשב המקומי, עוברים אל
יוצרים יומני מעקב על ידי הוספת אינסטרומנטציה לאפליקציה.
הכלי dmtracedump
יוצר את נתוני ערימת הקריאות בתור דיאגרמת עץ, כשכל
מייצג קריאה ל-method. מוצגת זרימת קריאה (מצומת הורה לצומתי צאצא)
באמצעות חיצים. בתרשים הבא מוצג פלט לדוגמה של dmtracedump
.
הכלי dmtracedump
זמין בחבילת הכלים של Android SDK,
נמצא ב-android-sdk/platform-tools/
.
תחביר
השימוש ב-dmtracedump הוא:
dmtracedump [-ho] [-s sortable] [-d trace-base-name] [-g outfile] trace-base-name
לאחר מכן הכלי טוען נתוני יומן מעקב מ-trace-base-name.data
trace-base-name.key
.
אפשרויות כלליות
אפשרויות כלליות |
תיאור |
-h |
הפעלה של פלט HTML |
-o |
צור Dump של קובץ המעקב במקום ליצור פרופיל |
אפשרויות של פקודות ופקודות
פקודות ואפשרויות |
תיאור |
-d trace-base-name |
הבדלים בשם המעקב הזה |
-g outfile |
יצירת פלט אל outfile |
-s sortable |
בסיס כתובת URL למיקום של קובץ ה-JavaScript שניתן למיין |
-t percent |
סף מינימלי להכללת צומתי צאצא בתרשים (זמן כולל של הילד או הילדה
אחוז מהזמן שכולל את ההורה). אם לא משתמשים באפשרות הזו, סף ברירת המחדל
הוא 20%. |
פלט
איור 1. צילום מסך של dmtracedump
עבור כל צומת בתרשים, dmtracedump
מציג את הערכים הבאים
מידע:
ref callname (inc-ms, exc-ms,numcalls)
ref
– מספר הסימוכין של השיחה, כפי שנעשה בו שימוש ביומני המעקב
inc-ms
– הזמן הכולל שחלף (באלפיות השנייה הוקדש ל-method,
כולל כל שיטות הצאצא)
exc-ms
– הזמן שחלף בלעדי (אלפיות שנייה הוקדשה ל-method,
לא כולל שיטות צאצא)
numcalls
– מספר השיחות
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[null,null,["עדכון אחרון: 2025-07-27 (שעון UTC)."],[],[],null,["# dmtracedump\n\n`dmtracedump` is a tool that generates\ngraphical call-stack diagrams from trace log files. The tool uses the Graphviz\nDot utility to create the graphical output, so you need to install Graphviz\nbefore running `dmtracedump`. If you haven't yet generated trace logs and\nsaved them from your connected device to your local machine, go to\n[Generate trace logs by instrumenting your app](/studio/profile/generate-trace-logs).\n\nThe `dmtracedump` tool generates the call stack data as a tree diagram, where each\nnode represents a method call. It shows call flow (from parent node to child nodes)\nusing arrows. The diagram below shows a sample output of `dmtracedump`.\n\nThe `dmtracedump` tool is provided in the Android SDK Tools package and is\nlocated in \u003cvar translate=\"no\"\u003eandroid-sdk\u003c/var\u003e`/platform-tools/`.\n\nSyntax\n------\n\nThe usage for dmtracedump is: \n\n```\ndmtracedump [-ho] [-s sortable] [-d trace-base-name] [-g outfile] trace-base-name\n```\n\nThe tool then loads trace log data from \u003cvar translate=\"no\"\u003etrace-base-name\u003c/var\u003e`.data` and\n\u003cvar translate=\"no\"\u003etrace-base-name\u003c/var\u003e`.key`.\n\n### Global options\n\n| Global options | Description |\n|----------------|------------------------------------------|\n| `-h` | Turn on HTML output |\n| `-o` | Dump the trace file instead of profiling |\n\n### Commands and command options\n\n| Commands and options | Description |\n|------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `-d `\u003cvar translate=\"no\"\u003etrace-base-name\u003c/var\u003e | Diff with this trace name |\n| `-g `\u003cvar translate=\"no\"\u003eoutfile\u003c/var\u003e | Generate output to \u003cvar translate=\"no\"\u003eoutfile\u003c/var\u003e |\n| `-s `\u003cvar translate=\"no\"\u003esortable\u003c/var\u003e | URL base to the location of the sortable javascript file |\n| `-t `\u003cvar translate=\"no\"\u003epercent\u003c/var\u003e | Minimum threshold for including child nodes in the graph (child's inclusive time as a percentage of parent inclusive time). If this option is not used, the default threshold is 20%. |\n\nOutput\n------\n\n\n**Figure 1.** Screenshot of dmtracedump\n\n\u003cbr /\u003e\n\nFor each node in the graph, `dmtracedump` shows the following\ninformation: \n\n```\nref callname (inc-ms, exc-ms,numcalls)\n```\n\n- \u003cvar translate=\"no\"\u003eref\u003c/var\u003e --- Call reference number, as used in trace logs\n- \u003cvar translate=\"no\"\u003einc-ms\u003c/var\u003e --- Inclusive elapsed time (milliseconds spent in method, including all child methods)\n- \u003cvar translate=\"no\"\u003eexc-ms\u003c/var\u003e --- Exclusive elapsed time (milliseconds spent in method, not including any child methods)\n- \u003cvar translate=\"no\"\u003enumcalls\u003c/var\u003e --- Number of calls"]]