Capture a system trace on the command line
This document explains how to generate Systrace reports from the command line.On devices running Android 9 (API level 28) or higher, you can also generateSystrace reports using the .
- Install Python and include it in yourworkstation's execution path.
To generate the HTML report for app, you need to run systrace
from thecommand line using the following syntax:
Tip: If you want to see the names of tasks inthe trace output, you must include the sched
category inyour command parameters.
If you don't specify any categories or options, systrace
generates a reportthat includes all available categories and uses default settings. The categoriesavailable depend on the connected device you're using.
Commands and command options
Commands and options | Description |
---|---|
-o file | Write the HTML trace report to the specified file. If you don't specify this option, systrace saves your report to the same directory as systrace.py and names it trace.html . |
-t N | —time=N | Trace device activity for N seconds. If you don't specify this option, systrace prompts you to end the trace by pressing the Enter key from the command line. |
-b N | —buf-size=N | Use a trace buffer size of N kilobytes. This option lets you limit the total size of the data collected during a trace. |
Trace the activity of specific kernel functions, specified in a comma-separated list. | |
-a app-name | Enable tracing for apps, specified as a comma-separated list of . The apps must contain tracing instrumentation calls from the Trace class. You should specify this option whenever you profile your app—many libraries, such as , include tracing instrumentation calls that provide useful information when you enable app-level tracing. For more information, go to the section about how to instrument your app code. |
—from-file=file-path | Create an interactive HTML report from a file, such as TXT files that include raw trace data, instead of running a live trace. |
-e device-serial | Conduct the trace on a specific connected device, identified by its . |
categories | Include tracing information for the system processes you specify, such as gfx for system processes that render graphics. You can run systrace with the command to see a list of services available to your connected device. |