Performance Monitoring использует трассировки для сбора данных о отслеживаемых процессах в вашем приложении. Трассировка — это отчет, содержащий данные, собранные между двумя моментами времени в вашем приложении.
Для приложений Apple и Android Performance Monitoring автоматически измеряет производительность рендеринга различных экранов вашего приложения. Performance Monitoring создает трассировку рендеринга экрана для каждого экрана вашего приложения. Эти трассировки собирают и измеряют следующие показатели:
Медленные кадры рендеринга — измеряет процент экземпляров экрана, рендеринг которых занимает более 16 мс.
Замороженные кадры — измеряет процент экземпляров экрана, рендеринг которых занимает более 700 мс.
Медленные или зависшие кадры в вашем приложении могут привести к снижению производительности устройства, также известному как зависание или задержка. Сбор показателей зависших и медленных кадров рендеринга может помочь вам выявить неэффективные экраны, что даст вам возможность улучшить производительность рендеринга вашего приложения.
Вы можете просмотреть данные для трассировок отрисовки экрана на вкладке Отрисовка экрана таблицы трассировок. Таблица трассировок расположена внизу страницы «Производительность» консоли Firebase . Дополнительные сведения см. в разделе Отслеживание, просмотр и фильтрация данных о производительности .
Метрики, собранные с помощью трассировок рендеринга экрана.
Эти трассировки являются готовыми трассировками, поэтому к ним нельзя добавлять пользовательские метрики или пользовательские атрибуты.
Медленные кадры рендеринга и замороженные кадры рассчитываются с предполагаемой частотой обновления устройства 60 Гц. Если частота обновления устройства ниже 60 Гц, время рендеринга каждого кадра будет медленнее, поскольку в секунду обрабатывается меньше кадров. Более медленное время рендеринга может привести к появлению более медленных или зависших кадров, поскольку большее количество кадров будет отображаться медленнее или будет зависать. Однако если частота обновления устройства превышает 60 Гц, время рендеринга каждого кадра будет увеличиваться. Это может привести к тому, что будет сообщено о меньшем количестве медленных или зависших кадров. Это текущее ограничение в SDK Performance Monitoring .
Медленная отрисовка кадров
Этот показатель представляет собой процент пользовательских сеансов, в которых наблюдалась заметная медленная отрисовка для определенного экрана. В частности, эта метрика представляет собой процент экземпляров экрана, в которых более 50% кадров отображались дольше 16 мс.
Замороженные кадры
Этот показатель представляет собой процент пользовательских сеансов, в которых наблюдалось заметное количество зависших кадров на определенном экране. В частности, эта метрика представляет собой процент экземпляров экрана, в течение которых более 0,1% кадров отображались дольше 700 мс.
Как генерируются трассировки рендеринга экрана?
Каждая трассировка рендеринга экрана идентифицируется по имени элемента представления в вашем приложении. Клиент Performance Monitoring создает трассировки рендеринга экрана для каждого действия или фрагмента , используемого вашим приложением.
Каждая трассировка рендеринга экрана выполняет следующие действия:
Запускается для каждого действия и класса фрагмента, когда объект становится видимым на экране.
OnActivityStarted()
для действий иOnFragmentResume()
для фрагментов.Останавливается для каждого действия и класса фрагмента, когда объект не виден на экране.
OnActivityStopped()
для действий иOnFragmentPaused()
для фрагментов.
Отслеживайте, просматривайте и фильтруйте данные о производительности
Чтобы просматривать данные о производительности в реальном времени, убедитесь, что ваше приложение использует версию Performance Monitoring SDK, совместимую с обработкой данных в реальном времени. Узнайте больше о данных о производительности в реальном времени .
Отслеживайте ключевые показатели на панели управления
Чтобы узнать, как меняются ваши ключевые показатели, добавьте их на доску показателей в верхней части панели мониторинга «Производительность» . Вы можете быстро выявить регрессии, наблюдая за изменениями еженедельно, или убедиться, что недавние изменения в вашем коде повышают производительность.
Панель мониторинга производительности Firebase" />Чтобы добавить метрику на доску метрик, выполните следующие действия:
- Перейдите на панель «Производительность» в консоли Firebase .
- Нажмите пустую карточку показателя, затем выберите существующий показатель, чтобы добавить его на доску.
- Нажмите на заполненной карточке показателя, чтобы просмотреть дополнительные параметры, например заменить или удалить показатель.
На панели показателей отображаются собранные данные показателей с течением времени как в графической форме, так и в виде численного процентного изменения.
Узнайте больше об использовании панели мониторинга .
Просмотр производительности экрана на консоли
Чтобы просмотреть трассировки, перейдите на панель мониторинга «Производительность» в консоли Firebase , прокрутите вниз до таблицы трассировок и щелкните соответствующую вложенную вкладку. В таблице отображаются некоторые основные метрики для каждой трассы, и вы даже можете отсортировать список по процентному изменению определенной метрики.
Performance Monitoring предоставляет страницу устранения неполадок в консоли Firebase , на которой освещаются изменения показателей, что позволяет легко быстро устранять и минимизировать влияние проблем с производительностью на ваши приложения и пользователей. Вы можете использовать страницу устранения неполадок, когда узнаете о потенциальных проблемах с производительностью, например в следующих сценариях:
- Вы выбираете соответствующие показатели на информационной панели и замечаете большую разницу.
- В таблице трассировок вы сортируете данные так, чтобы самые большие отклонения отображались вверху, и вы видите значительное процентное изменение.
- Вы получите оповещение по электронной почте, уведомляющее вас о проблеме с производительностью.
Вы можете получить доступ к странице устранения неполадок следующими способами:
- На панели мониторинга показателей нажмите кнопку «Просмотреть сведения о метрике» .
- На любой карточке показателя выберите
- В таблице трассировок щелкните имя трассировки или любое значение метрики в строке, связанной с этой трассировкой.
- В уведомлении по электронной почте нажмите «Провести расследование» .
Щелкнув имя трассировки в таблице трассировок, вы сможете перейти к интересующим метрикам. Нажмите кнопку
- Фильтруйте по версии приложения , чтобы просмотреть данные о предыдущей или последней версии приложения.
- Отфильтруйте по устройству, чтобы узнать, как старые устройства обрабатывают ваше приложение.
- Фильтруйте по стране , чтобы убедиться, что расположение вашей базы данных не влияет на определенный регион.
Узнайте больше о просмотре данных для ваших трассировок .
Атрибуты фрагмента
В приложениях Android вы можете повторно использовать фрагменты с другим действием или фрагментом. Производительность фрагмента может варьироваться в зависимости от фрагмента или действия, в котором фрагмент отображается. Используйте следующие атрибуты, чтобы узнать подробную информацию о том, как фрагмент работает в родительском фрагменте, на основе действия или фрагмента, с которым связан фрагмент. с:
Панель мониторинга производительности" />- Hosting_activity — активность, в которой размещается фрагмент. Позволяет понять производительность фрагмента в рамках активности хостинга.
- Parent_fragment — родительский фрагмент исследуемого вами фрагмента. Позволяет понять производительность фрагмента внутри родительского фрагмента. Если родительских фрагментов нет, атрибуту присваивается значение No Parent .
Следующие шаги
Узнайте больше об использовании атрибутов для изучения данных о производительности.
Узнайте больше о том, как отслеживать проблемы с производительностью в консоли Firebase .