Catch up on everthing we announced at this year's Firebase Summit. Learn more

Узнайте о данных производительности сетевых запросов HTTP / S (любое приложение)

Мониторинг использует следы для сбора данных о контролируемых процессах в приложении Performance. Трассировка - это отчет, содержащий данные, полученные между двумя моментами времени в вашем приложении.

Для всех типов приложений, Performance Monitoring автоматически собирает трассировку для каждого запроса сети , выданного вашим приложением, называемый HTTP / S сеть запрос трассировки. Эти трассировки собирают метрики за время между отправкой вашим приложением запроса в конечную точку службы и завершением ответа от этой конечной точки. Для любой конечной точки, к которой ваше приложение отправляет запрос, мониторинг производительности фиксирует несколько показателей:

  • Время отклика - время между отправкой запроса и полным получением ответа.

  • Размер полезной нагрузки ответа - размер в байтах полезной нагрузки сети, загруженной приложением.

  • Размер полезной нагрузки запроса - размер в байтах сетевой полезной нагрузки, загруженной приложением.

  • Коэффициент успешности - процент успешных ответов по сравнению с общим числом ответов (для измерения сбоев сети или сервера).

Производительность Мониторинг автоматически собирает метрики для сетевых запросов , которые используют следующие сетевые библиотеки:

Быстрый

  • URLSession
  • URLConnection

Цель-C

  • NSURLSession
  • NSURLConnection

Вы можете просмотреть данные из этих следов в Сети просит подвкладку таблицы следов, которая находится в нижней части приборной панели Performance (узнать больше об использовании консоли ниже на этой странице).

Этот стандартный мониторинг включает большинство сетевых запросов для вашего приложения. Однако о некоторых запросах может не сообщаться, или вы можете использовать другую библиотеку для выполнения сетевых запросов. В этих случаях, вы можете использовать Performance Monitoring API , чтобы вручную инструмент пользовательских трасс запроса сети .

Агрегация данных по шаблонам URL

Firebase Performance Monitoring автоматически объединяет данные для похожих сетевых запросов, чтобы помочь вам понять тенденции в производительности ваших сетевых запросов.

Для каждого запроса Firebase проверяет, соответствует ли URL-адрес сетевого запроса шаблону URL-адреса. Если URL-адрес запроса соответствует шаблону URL-адреса, Firebase автоматически объединяет данные запроса по шаблону URL-адреса. Firebase модель отображает URL и их агрегированные данные на вкладке Сети в приборной панели Performance консоли Firebase.

Что такое шаблон URL?

URL - адрес шаблон содержит домен плюс шаблон , который может соответствовать URL - путь, например: example.com/*/animals/** .

  • Шаблоны URL могут содержать следующие сегменты пути:

    • простой текст - соответствует точной строке
    • * - любая строка в одном отрезке пути
    • ** - соответствует произвольный суффикс пути
  • Шаблоны URL могут быть:

Например: Любое из следующих запросов URL может соответствовать URL шаблона example.com/*/animals/** .

  • example.com/singapore/animals
  • example.com/australia/animals/spiders
  • example.com/australia/animals/marsupials/koala.png

Домен для шаблона URL также может содержать * в качестве первого сегмента, например: *.example.com/*/fruits/** .

Firebase отображает каждый запрос только один шаблон URL. Если вы настраивали пользовательские шаблоны URL , попытки Firebase , чтобы соответствовать запросу URL - адрес для этих шаблонов первой. Если Firebase не находит соответствия пользовательского шаблона URL, то он совпадает с URL запроса к наиболее репрезентативному автоматическому шаблону URL . Дополнительные сведения об автоматических и настраиваемых шаблонах URL-адресов см. В следующих разделах.

Автоматические шаблоны URL

Без какой - либо конфигурации вами, попытки мониторинга производительности , чтобы отразить последнее поведение использования вашего приложения на соответствие запросов от вашего приложения, автоматических шаблоны URL.

Как работает автоматическое сопоставление шаблонов URL?

Firebase сопоставляет каждый запрос с наиболее репрезентативным автоматическим шаблоном URL, полученным из запросов, отправленных вашим приложением. Заметим, однако, что попытки Firebase соответствовать запрос URL - адреса в любых настроенных пользовательских шаблонов URL в первую очередь.

Ниже приведен базовый пример того, как Firebase пытается сопоставить запросы с наиболее репрезентативным автоматическим шаблоном URL для вашего приложения.

  1. Ваше приложение отправляет множество запросов на URL-адреса, например:

    • example.com/germany/animals/bears
    • example.com/germany/animals/birds
    • example.com/germany/cars

    Firebase определяет , что example.com/germany/** является общим шаблоном запроса для вашего приложения и добавляет его в качестве автоматического шаблона URL в вашем проекте.

    Для любых новых запросов , совпадающих с этим URL шаблона, Firebase агрегирует данные на запросы при автоматическом URL шаблона example.com/germany/** .

  2. После одной недели, большинство запросов вашего приложения является example.com/germany/animals/bears и example.com/germany/animals/birds . Таким образом, Firebase получает более представительный образец URL в example.com/germany/animals/** .

    Для любых новых запросов , совпадающих с этой новой моделью URL, Firebase агрегирует данные на запросы только по новой схеме URL. Firebase продолжает агрегированные данные для запросов к example.com/germany/cars под example.com/germany/** .

  3. Тем не менее, в течение следующих нескольких недель, запросы вашего приложения к example.com/germany/animals/bears и example.com/germany/animals/birds значительно уменьшаются. Firebase определяет , что example.com/germany/animals/** не является представителем последнего поведения использования вашего приложения, так Firebase начинает соответствие эти два запроса назад к example.com/germany/** .

    Firebase не не агрегирует какие - либо дополнительные данные запроса под example.com/germany/animals/** , потому что это уже не самый представительный автоматический шаблон URL.

Поскольку автоматическое сопоставление шаблонов URL-адресов является динамическим, имейте в виду следующее:

  • Спички и агрегированные данные из предыдущих запросов не зависят от новых шаблонов URL. Firebase не выполняет повторную агрегацию данных запроса задним числом.

  • Только будущие запросы зависят от новых шаблонов URL. Firebase отображает каждый новый запрос к наиболее репрезентативному автоматическому шаблону URL. Заметим, однако, что попытки Firebase соответствовать запрос URL - адреса в любых настроенных пользовательских шаблонов URL в первую очередь.

Просмотр автоматических шаблонов URL и их данных

Firebase отображает все шаблоны URL и их агрегированные данные в сети запрашивают подвкладку таблицы следов, которая находится в нижней части приборной панели Performance консоли Firebase.

Вы можете увидеть образцы URL с Без категории этикетки. Это «широкие» автоматические шаблоны URL, в соответствии с которыми Firebase может агрегировать данные для запросов, не соответствующих какому-либо конкретному шаблону URL.

Когда период хранения данных заканчивается для данных , агрегированных в соответствии с шаблоном URL, Firebase удаляет , что данные из шаблона URL. Если срок действия всех данных, собранных в соответствии с автоматическим шаблоном URL, истекает, Firebase удаляет этот шаблон URL из консоли Firebase.

Пользовательские шаблоны URL

Вы можете создавать шаблоны пользовательских URL , чтобы контролировать определенные шаблоны URL , которые Firebase не захватив с его производной автоматического URL поиска по шаблону . Например, вы можете использовать настраиваемый шаблон URL-адреса для устранения неполадок с определенным URL-адресом или для отслеживания определенного набора URL-адресов с течением времени.

Посещать Создание пользовательских шаблонов URL , чтобы узнать больше.

Отслеживайте, просматривайте и фильтруйте данные о производительности

Чтобы просматривать данные о производительности в реальном времени, убедитесь, что ваше приложение использует версию SDK для мониторинга производительности, совместимую с обработкой данных в реальном времени. Узнайте больше .

Отслеживайте определенные показатели на своей панели инструментов

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

изображение панели показателей на панели мониторинга Firebase Performance Monitoring.

Чтобы добавить метрику к вашей плате метрик, перейдите на приборную панель Performance в Firebase консоли, а затем нажмите на вкладку Сводки. Щелкните пустую карточку метрики, затем выберите существующую метрику, чтобы добавить ее на свою доску. Нажмите на заселенной метрической карты для более вариантов, как заменить или удалить метрики.

Доска показателей показывает собранные данные показателей с течением времени как в графической форме, так и в виде числового процентного изменения.

Подробнее об использовании приборной панели .

Просмотр трассировок и их данных

Для просмотра следов, перейдите на приборную панель Performance в Firebase консоли, прокрутите вниз к столу следов, а затем нажмите на соответствующую подвкладку. В таблице отображаются некоторые основные показатели для каждой трассы, и вы даже можете отсортировать список по процентному изменению для конкретной метрики.

Если вы щелкнете имя трассы в таблице трассировок, вы сможете переходить по различным экранам, чтобы изучить трассу и перейти к интересующим метрикам. На большинстве страниц, вы можете использовать фильтр кнопку ( в левом верхнем углу экрана) , чтобы отфильтровать данные по атрибутам, например:

изображение данных Firebase Performance Monitoring, фильтруемых по атрибуту
  • Фильтр по App версии для просмотра данных о прошлом выпуске или ваш последний релиз
  • Фильтр по устройству , чтобы узнать , как старые устройства обрабатывать приложение
  • Фильтр по стране , чтобы убедиться , что ваше местоположение базы данных не влияет на регион конкретного

Подробнее о просмотре данных для ваших следов .

Следующие шаги

  • Просматривать подробные отчеты о пользовательских сессиях , в которых вы можете увидеть конкретный след в контексте временной шкалы других следов , собранных в течение одной сессии.