Firebase Performance Monitoring автоматически агрегирует данные по схожим сетевым запросам, помогая вам понять тенденции в производительности сетевых запросов.
Однако иногда вам нужно настроить, как Firebase агрегирует данные о конкретных сетевых запросах, чтобы лучше поддерживать сценарии использования вашего приложения. Мы предлагаем два способа настройки агрегации данных для сетевых запросов: агрегация данных по пользовательским шаблонам URL и настройка расчёта показателя успешности .
Агрегировать данные по пользовательским шаблонам URL
Для каждого запроса Firebase проверяет, соответствует ли URL-адрес сетевого запроса шаблону URL . Если URL-адрес запроса соответствует шаблону URL, Firebase автоматически агрегирует данные запроса по этому шаблону URL.
Вы можете создать пользовательские шаблоны URL-адресов для отслеживания определённых шаблонов URL-адресов, которые Firebase не регистрирует с помощью своего автоматического сопоставления шаблонов URL-адресов . Например, вы можете использовать пользовательский шаблон URL-адресов для диагностики определённого URL-адреса или для отслеживания определённого набора URL-адресов с течением времени.
Firebase отображает все шаблоны URL (включая пользовательские шаблоны URL) и их агрегированные данные на вкладке « Сетевые запросы» таблицы трассировок, которая находится в нижней части панели «Производительность» консоли Firebase .
Как работает сопоставление пользовательских шаблонов URL?
Firebase пытается сопоставить URL-адреса запросов с любыми настроенными шаблонами URL, прежде чем перейти к автоматическому сопоставлению шаблонов URL. Для всех запросов, соответствующих шаблону URL, Firebase агрегирует данные запросов в соответствии с этим шаблоном URL.
Если URL-адрес запроса соответствует нескольким пользовательским шаблонам URL, Firebase сопоставляет запрос только с наиболее точным пользовательским шаблоном URL в следующем порядке специфичности: простой текст > *
> **
слева направо в пути . Например, запрос к example.com/books/dog
соответствует двум пользовательским шаблонам URL:
-
example.com/books/*
-
example.com/*/dog
Однако шаблон example.com/books/*
является наиболее точным соответствующим шаблоном URL, поскольку самый левый сегмент books
в example.com/books/*
имеет приоритет над самым левым сегментом *
в example.com/*/dog
.
При создании нового пользовательского шаблона URL-адреса учтите следующее:
Создание нового шаблона URL не влияет на совпадения и агрегированные данные из предыдущих запросов. Firebase не выполняет повторную агрегацию данных запросов задним числом.
Создание нового шаблона URL-адреса повлияет только на будущие запросы. Вам может потребоваться подождать до 12 часов, пока Performance Monitoring соберет и агрегирует данные по новому шаблону URL-адреса.
Создайте собственный шаблон URL
Вы можете создать собственный шаблон URL-адреса на вкладке «Сетевые запросы» в таблице трассировок, которая находится в нижней части панели «Производительность» консоли Firebase .
Для создания нового пользовательского шаблона URL-адреса участник проекта должен быть владельцем или редактором . Однако все участники проекта могут просматривать пользовательские шаблоны URL-адресов и их агрегированные данные.
Вы можете создать до 400 пользовательских шаблонов URL-адресов для одного приложения и до 100 пользовательских шаблонов URL-адресов для одного домена для этого приложения.
Чтобы создать собственный шаблон URL, начните с имени хоста, а затем добавьте сегменты пути. Имя хоста должно включать допустимый домен и, при необходимости, поддомен. Используйте следующий синтаксис сегмента пути для создания шаблона, соответствующего URL-адресам.
- простой текст — соответствует точной строке
-
*
— соответствует первому сегменту поддомена или любой строке в одном сегменте пути -
**
— соответствует произвольному суффиксу пути
В следующей таблице описываются некоторые потенциальные шаблоны сопоставления пользовательских URL-адресов.
Чтобы соответствовать... | Создайте собственный шаблон URL, например... | Пример соответствия этому шаблону URL |
---|---|---|
Точный URL-адрес | example.com/foo/baz | example.com/foo/baz |
Любой отдельный сегмент пути ( * ) | example.com/*/baz | example.com/foo/baz example.com/bar/baz |
example.com/*/*/baz | example.com/foo/bar/baz example.com/bah/qux/baz | |
example.com/foo/* | example.com/foo/baz example.com/foo/bar Примечание: этот шаблон не будет соответствовать | |
Произвольный суффикс пути ( ** ) | example.com/foo/** | example.com/foo example.com/foo/baz example.com/foo/baz/more/segments |
subdomain.example.com/foo.bar/** | subdomain.example.com/foo.bar subdomain.example.com/foo.bar/baz subdomain.example.com/foo.bar/baz/more/segments | |
Первый сегмент поддомена ( * ) | *.example.com/foo | bar.example.com/foo baz.example.com/foo |
Просмотр пользовательских шаблонов URL и их данных
Firebase отображает все шаблоны URL (включая пользовательские шаблоны URL) и их агрегированные данные на вкладке « Сетевые запросы» таблицы трассировок, которая находится в нижней части панели «Производительность» консоли Firebase .
Чтобы просмотреть только пользовательские шаблоны URL, выберите пункт «Пользовательские шаблоны» в раскрывающемся меню на вкладке «Сетевые запросы» таблицы трассировок. Обратите внимание: если для пользовательского шаблона URL нет агрегированных данных, он отображается только в этом списке.
По истечении срока хранения данных , агрегированных по шаблону URL, Firebase удаляет эти данные из шаблона URL. Если срок хранения всех данных, агрегированных по пользовательскому шаблону URL, истекает, Firebase не удаляет этот шаблон URL из консоли Firebase . Вместо этого Firebase продолжает отображать «пустые» пользовательские шаблоны URL в списке «Пользовательские шаблоны» на вкладке « Сетевые запросы» таблицы трассировок.
Удалить пользовательский шаблон URL
Вы можете удалить пользовательские шаблоны URL из своего проекта. Обратите внимание, что автоматический шаблон URL удалить нельзя.
На панели «Производительность» прокрутите вниз до таблицы трассировок, затем выберите вкладку «Сетевые запросы» .
В раскрывающемся меню на подвкладке Сетевые запросы выберите Пользовательские шаблоны .
Наведите указатель мыши на строку пользовательского шаблона URL, который вы хотите удалить.
Нажмите
в правом углу строки, выберите Удалить пользовательский шаблон , затем подтвердите удаление в диалоговом окне.
При удалении пользовательского шаблона URL-адреса имейте в виду следующее:
Все последующие запросы будут сопоставляться со следующим наиболее подходящим шаблоном URL. Если Firebase не находит соответствующих шаблонов URL, система возвращается к автоматическому сопоставлению шаблонов URL .
Удаление пользовательского шаблона URL не влияет на совпадения и агрегированные данные из предыдущих запросов.
Вы по-прежнему сможете получить доступ к удалённому шаблону URL-адреса и его агрегированным данным на вкладке « Сетевые запросы» (при выбранном параметре «Все сетевые запросы» ) до окончания соответствующего срока хранения данных. По истечении срока действия всех агрегированных данных по удалённому шаблону URL-адреса Firebase удалит его.
На подвкладке «Сетевые запросы» (с выбранными пользовательскими шаблонами ) не перечислены удаленные пользовательские шаблоны URL.
Следующие шаги
- Настройте оповещения о сетевых запросах, снижающих производительность вашего приложения. Например, вы можете настроить оповещение по электронной почте для своей команды, если время ответа для определённого шаблона URL превысит заданное вами пороговое значение.
Настройте способ расчета показателя успешности
Одна из метрик, которую Firebase отслеживает для каждого сетевого запроса, — это процент успешных ответов. Этот показатель определяет процент успешных ответов по сравнению с общим числом ответов. Эта метрика помогает оценить количество сбоев в сети и на сервере.
В частности, Firebase автоматически подсчитывает сетевые запросы с кодом ответа в диапазоне 100–399 как успешные ответы.
Вы можете настроить расчет показателя успешности, подсчитывая определенные коды ошибок как «успешные ответы» в дополнение к кодам ответов, которые Firebase автоматически считает успешными.
Например, если в вашем приложении есть API конечной точки поиска, вы можете считать ответы 404 «успешными», поскольку для конечной точки поиска ожидается именно 404 ответа. Предположим, что для этой конечной точки поиска каждый час регистрируется 100 выборок, 60 из которых — ответы с кодом 200, а 40 — ответы с кодом 404. До настройки вероятности успеха она будет составлять 60%. После настройки вероятности успеха для подсчёта ответов 404 как успешных, она составит 100%.
Настроить расчет показателя успешности
Чтобы настроить расчёт показателя успешности для шаблона сетевого URL-адреса, необходимо разрешение firebaseperformance.config.update
. Это разрешение по умолчанию включено для следующих ролей: Firebase Performance Admin , Firebase Quality Admin , Firebase Admin и Project Owner или Editor .
- Перейдите на вкладку «Панель Performance Monitoring » в консоли Firebase , затем выберите приложение, для которого вы хотите настроить расчет показателя успешности.
- Прокрутите вниз до таблицы трассировок в нижней части экрана и выберите вкладку Сетевые запросы .
- Найдите шаблон URL, для которого вы хотите настроить расчет показателя успешности.
- В правом дальнем углу строки откройте дополнительное меню ( ) и выберите Настроить показатель успешности .
- Следуйте инструкциям на экране, чтобы выбрать коды ответов, которые вы хотите считать успешными кодами ответов.