Обзор системной трассировки

Запись активности устройства в течение короткого периода времени называется трассировкой системы . В результате трассировки создается файл трассировки, который можно использовать для создания системного отчета. Этот отчет поможет вам определить наилучшие способы повышения производительности вашего приложения или игры.

Подробное введение в трассировку и профилирование см. на странице «Трассировка 101» в документации Perfetto.

Платформа Android предоставляет несколько различных вариантов сбора трассировок:

  • Профилировщик процессора и памяти Android Studio
  • Инструмент командной строки Perfetto (Android 10 и выше)
  • Утилита трассировки системы
  • Инструмент командной строки Systrace

Профилировщик ЦП Android Studio отслеживает использование процессора и активность потоков вашего приложения в режиме реального времени, пока вы взаимодействуете с ним. Вы также можете просматривать данные в записанных трассировках методов, функций и системных трассировках. Профилировщик памяти предоставляет обзор использования памяти в связи с сенсорными событиями, изменениями Activity и событиями сборки мусора.

Perfetto — это инструмент трассировки, доступный для всей платформы, представленный в Android 10. Это сложный проект с открытым исходным кодом для Android, Linux и Chrome. Он предлагает расширенный набор источников данных по сравнению с Systrace и позволяет записывать трассировки произвольной длины в двоичный поток буфера протокола. Вы можете открыть эти трассировки в пользовательском интерфейсе Perfetto .

Утилита трассировки System — это инструмент Android, который сохраняет информацию об активности устройства в файле трассировки. На устройствах под управлением Android 10 (уровень API 29) и выше файлы трассировки сохраняются в формате Perfetto, как показано далее в этом документе. На устройствах под управлением более ранних версий Android файлы трассировки сохраняются в формате Systrace.

Systrace — это устаревший инструмент командной строки, предоставляемый платформой, который записывает активность устройства за короткий промежуток времени в сжатый текстовый файл. Инструмент создает отчет, объединяющий данные из ядра Android, такие как планировщик ЦП, активность диска и потоки приложений. Systrace работает на всех версиях Android, но мы рекомендуем Perfetto для устройств с Android 10 и выше.

Снимок экрана Perfetto Трассировка

Рисунок 1. Пример трассировки Perfetto, показывающий около 20 секунд взаимодействия с приложением.

Скриншот отчета Systrace

Рисунок 2. Пример HTML-отчета Systrace, показывающий пять секунд взаимодействия с приложением.

Оба отчёта предоставляют общую картину системных процессов устройства Android за определённый период времени. В отчёте также анализируется собранная информация трассировки для выявления выявленных проблем, таких как подтормаживания пользовательского интерфейса или высокое энергопотребление.

Perfetto и Systrace совместимы:

Руководства по трассировке систем

Дополнительную информацию об инструментах трассировки системы можно найти в следующих руководствах:

Проверка активности ЦП с помощью CPU Profiler
Показывает, как профилировать использование процессора и активность потоков вашего приложения в Android Studio.
Захват системной трассировки на устройстве
Объясняется, как захватить системную трассировку непосредственно на любом устройстве под управлением Android 9 (уровень API 28) или выше.
Захват системной трассировки в командной строке
Определяет различные параметры и флаги, которые можно передать в интерфейс командной строки для Systrace.
Запустите Perfetto с помощью adb
Описывает, как запустить инструмент командной строки perfetto для сбора трассировок.
Быстрый старт: запись трассировок на Android
Внешняя документация, описывающая, как собрать и запустить инструмент командной строки perfetto для сбора трассировок.
Быстрый старт: запись трассировок на Android
Веб-просмотрщик трассировок Perfetto открывает трассировки Perfetto и отображает полный отчёт. В этом просмотрщике также можно открывать трассировки Systrace, используя устаревший интерфейс.
Навигация по отчету Systrace
Перечисляет элементы типичного отчета, представляет сочетания клавиш для навигации по отчету и описывает, как определить типы проблем с производительностью.
Определить пользовательские события
Описывает, как можно применять пользовательские метки к определенным разделам кода, что упрощает анализ первопричин в Systrace или Perfetto.