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


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

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

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

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

Данные из этих трассировок можно просмотреть на вкладке «Сетевые запросы» таблицы трассировок, которая находится в нижней части панели мониторинга производительности (подробнее об использовании консоли см. далее на этой странице).

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

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

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

Для каждого запроса Firebase проверяет, соответствует ли URL-адрес сетевого запроса шаблону URL. Если URL-адрес запроса соответствует шаблону URL, Firebase автоматически объединяет данные запроса в соответствии с этим шаблоном. Firebase отображает шаблоны URL и их объединенные данные на вкладке «Сеть» в панели мониторинга «Производительность » консоли 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

Без какой-либо настройки с вашей стороны, Performance Monitoring пытается отразить последнее поведение вашего приложения при использовании, сопоставляя запросы вашего приложения с автоматическими шаблонами 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-адресов и их агрегированные данные во вкладке «Сетевые запросы» таблицы трассировки, которая находится в нижней части панели мониторинга производительности консоли Firebase .

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

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

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

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

Для получения дополнительной информации посетите раздел «Создание пользовательских шаблонов URL-адресов» .

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

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

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

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

изображение табло с показателями в <span class= Панель мониторинга производительности Firebase" />

Чтобы добавить метрику на доску метрик, выполните следующие действия:

  1. Перейдите на панель мониторинга «Производительность» в консоли Firebase .
  2. Щелкните по пустой карточке показателя, затем выберите существующий показатель, чтобы добавить его на доску.
  3. Нажмите кнопку на заполненной карточке показателя, чтобы получить дополнительные параметры, например, заменить или удалить показатель.

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

Узнайте больше об использовании панели управления .

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

Чтобы просмотреть трассировки, перейдите на панель мониторинга «Производительность» в консоли Firebase , прокрутите вниз до таблицы трассировок, а затем щелкните соответствующую подвкладку. В таблице отображаются некоторые ключевые показатели для каждой трассировки, и вы даже можете отсортировать список по процентному изменению для конкретного показателя.

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

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

Доступ к странице устранения неполадок можно получить следующими способами:

  • На панели мониторинга показателей нажмите кнопку « Просмотреть подробные сведения о показателе» .
  • На любой метрической карте выберите => Просмотреть подробности . На странице устранения неполадок отображается информация о выбранном вами показателе.
  • В таблице трассировок щелкните имя трассировки или любое значение метрики в строке, связанной с этой трассировкой.
  • В электронном письме с уведомлением нажмите «Провести расследование» .

При щелчке по названию трассировки в таблице трассировок вы можете перейти к просмотру интересующих вас метрик. Щелкните Кнопка « фильтр» позволяет фильтровать данные по атрибутам, например:

изображение <span class= Данные мониторинга производительности Firebase фильтруются по атрибуту" />
  • Используйте фильтр по URL страницы , чтобы просмотреть данные по конкретной странице вашего сайта.
  • Отфильтруйте результаты по типу эффективного соединения , чтобы узнать, как соединение 3G влияет на ваше приложение.
  • Используйте фильтр по стране , чтобы убедиться, что местоположение вашей базы данных не влияет на конкретный регион.

Узнайте больше о просмотре данных ваших трассировок .

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