Функция трассировки системы на смартфонах Huawei скрыта в меню разработчика и становится доступной только после активации специального режима отладки. Без включения этого раздела пункт «Трассировка» в настройках просто не отображается, что часто вводит пользователей в заблуждение. Материал ниже описывает пошаговый алгоритм доступа к инструменту на актуальных версиях EMUI и HarmonyOS.
Системная трассировка (System Tracing) записывает низкоуровневые события ядра, драйверов и системных сервисов в бинарный файл формата .trace или .html. Инженеры используют эти данные для диагностики зависаний, утечек памяти, проблем с батареей и конфликтов драйверов. Обычный пользователю эта функция редко нужна, но при обращении в техподдержку разработчики могут запросить именно такой лог.
Что такое системная трассировка и зачем она нужна
В отличие от стандартных логов logcat, которые фиксируют события приложений и фреймворка, трассировка захватывает тайминги планировщика задач, прерывания, переходы состояний CPU и работу GPU. Это позволяет увидеть «узкие места» производительности, невидимые в обычных журналах. Файл трассировки может весить от нескольких мегабайт до сотен, в зависимости от длительности записи и нагрузки на SoC.
На устройствах с процессорами Kirin и Snapdragon набор доступных категорий трассировки может незначительно отличаться. Например, на флагманах серии Mate и P доступны профили для графического конвейера (SurfaceFlinger, Vulkan), а на бюджетных моделях — только базовый набор CPU и I/O. Важно понимать, что запись трассировки создает нагрузку на флеш-память и может слегка снизить отзывчивость интерфейса во время процесса.
⚠️ Внимание: Не оставляйте трассировку включенной постоянно. Непрерывная запись быстро заполнит внутреннее хранилище и ускорит износ ячеек NAND-памяти.
Как включить меню разработчика на устройствах Huawei
Доступ к настройкам трассировки блокируется до активации режима разработчика. Процедура стандартна для всех современных версий оболочки, но название пункта меню может отличаться: в EMUI 10-12 это «Система и обновления», в HarmonyOS 2.0+ — просто «Система». После входа в раздел нужно найти «Номер сборки» (Build number) и нажать на него 7 раз.
После успешной активации появится уведомление «Вы стали разработчиком». Новый пункт «Для разработчиков» появится в корне настроек или внутри «Система» → «Дополнительно». На некоторых планшетах и фолдах (MatePad, Mate Xs) меню может находиться в «Дополнительных настройках». Если после 7 нажатий ничего не произошло — проверьте, не установлена ли политика MDM, блокирующая этот режим.
☑️ Чек-лист
Поиск пункта трассировки в настройках
Перейдите в «Настройки» → «Система и обновления» (или «Система») → «Для разработчиков». Прокрутите список почти до самого низа в раздел «Отладка» (Debugging). Искомый пункт называется «Трассировка системы» (System tracing) или «Запись трассировки». В HarmonyOS 3.0/4.0 он может находиться в подменю «Расширенные опции» внутри раздела разработчика.
Если пункта нет — проверьте версию прошивки. На старых EMUI 9 и ниже функционал может отсутствовать или называться «Профилирование GPU» / «Профилирование CPU». Также отсутствие пункта возможно на устройствах с заблокированным загрузчиком в корпоративной прошивке. В таком случае остается только ADB-доступ.
| Версия ОС | Путь к меню разработчика | Название пункта трассировки | Формат вывода |
|---|---|---|---|
| EMUI 10 / 11 | Настройки → Система и обновления → Для разработчиков | Трассировка системы | .trace (Perfetto) |
| EMUI 12 | Настройки → Система и обновления → Для разработчиков | Трассировка системы | .trace / .html |
| HarmonyOS 2.0 | Настройки → Система → Для разработчиков | Запись трассировки | .trace (Perfetto) |
| HarmonyOS 3.0 / 4.0 | Настройки → Система → Для разработчиков → Расширенные опции | Трассировка системы | .html (встроенный просмотрщик) |
Использование приложения SysTracing
Начиная с EMUI 11 и HarmonyOS 2.0, Huawei вынесла управление трассировкой в отдельное системное приложение SysTracing (пакет com.huawei.systracing). Оно не имеет иконки в лаунчере, запускается только из меню разработчика или через ADB-интент. Интерфейс позволяет выбрать категории: sched (планировщик), freq (частоты CPU), idle, gpu, binder (IPC), hal и другие.
После выбора категорий нажмите «Начать запись». Система покажет уведомление с таймером. Для остановки нажмите то же уведомление или вернитесь в приложение. Готовый файл сохраняется во внутреннюю память в папку /data/local/traces/ или /sdcard/Download/Traces/ в зависимости от версии ОС и прав доступа. Доступ к файлу из проводника возможен только если он скопирован в публичную директорию.
Команды ADB для управления трассировкой без UI
adb shell setprop debug.tracing.enable 1
adb shell am start -n com.huawei.systracing/.MainActivity
adb shell perfetto -c /data/misc/perfetto-config.pb -o /data/local/traces/trace.pftrace
Остановка: adb shell setprop debug.tracing.enable 0
Анализ полученных файлов трассировки
Файлы в формате .trace (протокол Perfetto) открываются в веб-интерфейсе ui.perfetto.dev — просто перетащите файл в браузер. Это официальный инструмент Google, он работает офлайн после первой загрузки. Для файлов .html (доступны в HarmonyOS 3+) достаточно открыть их в любом браузере на ПК — там уже встроен интерактивный таймлайн с зумом и фильтрами.
При анализе обратите внимание на колонки CPU Slices (потоки выполнения), Counter Tracks (частоты, температура, заряд) и Binder Transactions (межпроцессное взаимодействие). Длительные блокировки в binder часто указывают на дедлоки или ANR. Пики частот CPU без нагрузки пользователя могут говорить о фоновых процессах-«пожирателях» батареи.
Для отправки трассировки в техподдержку Huawei упакуйте файл в ZIP-архив. Необработанный .trace может весить 200-500 МБ, архивация сократит объем в 5-10 раз и ускорит передачу через форму обратной связи на сайте huawei-gid.vercel.app или в приложении «Поддержка».
Типичные ошибки и ограничения
Частая ошибка — попытка запустить трассировку при заряде батареи ниже 15-20%. Система принудительно остановит запись, чтобы не допустить глубокого разряда, и файл может оказаться поврежденным. Также запись не запустится, если свободного места менее 1-2 ГБ. В логах logcat при этом появится тег SysTracing с ошибкой ENOSPC (No space left on device).
На устройствах с HarmonyOS NEXT (без AOSP-совместимости) архитектура трассировки изменилась: используется нативный фреймворк HiTrace, а формат файлов — .htrace. Старый Perfetto их не откроет. Для анализа нужен инструмент DevEco Profiler из SDK HarmonyOS. Если вы участвуете в бета-тестировании NEXT, учитывайте это различие.
⚠️ Внимание: Не пытайтесь конвертировать .htrace в .trace сторонними скриптами. Внутренняя структура событий принципиально отличается, конвертация даст некорректные тайминги.
⚠️ Внимание: При отправке логов в сервисный центр обязательно удалите из архива файлы с личными данными (базы данных мессенджеров, фото), если трассировка захватывала работу файловой системы. Используйте фильтры категорий при записи.
Альтернативные способы логирования
Если системная трассировка недоступна или слишком сложна, для базовой диагностики используйте bugreport через ADB: adb bugreport > bugreport.zip. Он собирает logcat, dumpsys, статистику батареи и состояние сервисов. Этот архив понимают все службы поддержки Android-производителей. Для сетевых проблем есть встроенный «Анализатор сети» в меню разработчика (Wi-Fi verbose logging).
Разработчики приложений чаще пользуются Android Studio Profiler или Perfetto UI с подключенным устройством — это дает live-визуализацию без записи файлов на флеш. Для автоматизации в CI/CD используйте perfetto CLI с конфигурационным прото-файлом (.pb), задающим точные категории и длительность сессии.
Главный вывод: системная трассировка на Huawei — это мощный, но «тяжелый» инструмент. Включайте его точечно для воспроизведения конкретной проблемы, а не для постоянного мониторинга. Всегда проверяйте свободное место и заряд батареи перед стартом.
FAQ: Частые вопросы по трассировке на Huawei
Почему в меню разработчика нет пункта «Трассировка системы»?
Причина: устаревшая прошивка (EMUI 9 и ниже), корпоративная политика MDM, либо модель не поддерживает Perfetto-tracing. Обновите ОС или используйте adb bugreport.
Где лежит файл трассировки после остановки записи?
Обычно в /sdcard/Download/Traces/ или /data/local/traces/. Доступ к второй папке требует root или ADB pull. В приложении «Файлы» проверьте «Внутреннее хранилище» → «Download» → «Traces».
Как открыть .trace файл на компьютере?
Перетащите файл на страницу ui.perfetto.dev в браузере Chrome/Edge/Firefox. Никаких программ устанавливать не нужно. Для .html файлов — просто двойной клик.
Можно ли запустить трассировку через ADB без входа в меню?
Да. Команда: adb shell am start -n com.huawei.systracing/.MainActivity откроет UI. Для автозапуска с конфигом используйте adb shell perfetto -c config.pb -o trace.pftrace (нужен root для некоторых категорий).
Безопасно ли отправлять трассировку в службу поддержки?
Файл содержит имена процессов, тайминги, иногда пути к файлам. Личных сообщений и паролей там нет, но метаданные активности приложений присутствуют. При необходимости очистите архив перед отправкой.