Настройка оповещений о проблемах с производительностью

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

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

Что вызывает оповещение?

Оповещение срабатывает, когда показатель вашего приложения превышает пороговое значение, которое вы задаете для указанного процентиля (если применимо) в консоли Firebase . Оповещения срабатывают только в том случае, если ваше приложение использует версию SDK, совместимую с режимом реального времени .

время запуска приложения

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

  • За последний час Firebase записал как минимум 100 образцов трассировки _app_start для последней версии вашего приложения.
  • Продолжительность трассировки _app_start превысила заданный для приложения пороговый уровень в течение последнего часа и для настроенного процентиля.
  • В последней версии вашего приложения ранее не было оповещений о превышении этого порогового значения.

пользовательские трассировки кода

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

  • За последний час Firebase записал как минимум 100 образцов трассировки пользовательского кода для последней версии вашего приложения.
  • Продолжительность отслеживания превысила установленный приложением пороговый уровень в течение последнего часа и для заданного процентиля.
  • (Только для iOS+ и Android) В последней версии вашего приложения ранее не было оповещений о превышении этого порогового значения.
  • (Только для веб-версии) За последние 3 дня не было зарегистрировано ни одного оповещения о превышении этого порогового значения.

сетевые запросы

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

  • За последний час Firebase зафиксировал как минимум 100 совпадений с шаблоном URL-адреса во всех версиях вашего приложения.
  • Суммарное значение показателя превысило установленный пороговый уровень за последний час:
    • Время отклика : агрегированное значение превысило установленный порог для заданного процентиля.
    • Показатель успешности : (только для iOS+/Android) совокупное значение оказалось ниже установленного порогового значения для всех пользователей.
  • В течение последних 3 дней никаких предупреждений по этому же пороговому значению не поступало.

отрисовка экрана

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

  • За последний час Firebase записал как минимум 100 образцов отрисовки экрана для последней версии вашего приложения.
  • Суммарное значение показателя превысило установленный пороговый уровень за последний час:
    • Замороженные кадры : суммарное значение превысило установленный порог.
    • медленные кадры : суммарное значение превысило установленный порог.
  • В последней версии вашего приложения ранее не было оповещений о превышении этого порогового значения.

страница загружается

При настройке оповещения по показателю загрузки страницы, оповещение срабатывает, если выполняются все следующие условия:

  • Firebase зафиксировал как минимум 100 примеров загрузки страницы вашего приложения за последний час.
  • Совокупное значение показателя превысило заданный пороговый уровень за последний час и для настроенного процентиля:
    • Первая задержка ввода : суммарное значение превысило установленный порог и заданный процентиль.
    • Первая отрисовка контента : агрегированное значение превысило установленный порог и заданный процентиль.
    • Первая отрисовка : совокупное значение превысило установленный порог и заданный процентиль.
  • В течение последних 3 дней никаких предупреждений по этому же пороговому значению не поступало.

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

Оповещения по другим показателям производительности или по интеграциям Slack, Jira или PagerDuty, настроенным в консоли Firebase, недоступны для системы Performance Monitoring .

Получайте оповещения

Получать оповещения по умолчанию

По умолчанию Firebase может отправлять оповещения Performance Monitoring по электронной почте.

Для получения оповещений Performance Monitoring через этот механизм по умолчанию необходимо иметь разрешение firebaseperformance.config.update . Следующие роли по умолчанию обладают этим необходимым разрешением:

Оповещения и их настройки применяются ко всему проекту. Это означает, что по умолчанию каждый участник проекта будет получать электронное письмо при срабатывании оповещения о производительности. Оповещения отправляются только участникам проекта, имеющим необходимые права на их получение, и на отдельные адреса электронной почты (а не группам учетных записей, таким как группы Google или учетные записи Google Workspace).

Включите/отключите оповещения для своей учетной записи.

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

Чтобы включить или отключить оповещения Performance Monitoring , выполните следующие действия:

  1. В консоли Firebase , в правом верхнем углу, перейдите по следующему пути: Firebase alerts .
  2. Затем перейдите к Настройте параметры своей учетной записи для оповещений Performance Monitoring .

Настройте расширенные оповещения для сторонних сервисов.

Вы также можете отправлять оповещения Performance Monitoring в предпочтительный канал уведомлений вашей команды, используя Cloud Functions for Firebase . Например, вы можете написать функцию, которая перехватывает событие оповещения о медленном запуске приложения и отправляет информацию об оповещении в сторонний сервис, такой как Discord, Slack или Jira.

Для настройки расширенных возможностей оповещения с помощью Cloud Functions for Firebase выполните следующие шаги:

  1. Настройка Cloud Functions для Firebase включает в себя следующие задачи:

    1. Настройте среду разработки для Node.js или Python.
    2. Установите Firebase CLI и войдите в систему.
    3. Инициализация Cloud Functions for Firebase с помощью Firebase CLI.
  2. Напишите и разверните функцию , которая перехватывает событие оповещения из Performance Monitoring и обрабатывает полезную нагрузку события (например, отправляет информацию об оповещении в сообщении в Discord).

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

Автоматическое удаление недействительных оповещений

Performance Monitoring проверяет оповещения, чтобы убедиться в достоверности данных и в том, что оповещения активно используются. Оповещения считаются действительными, если выполняется одно из следующих условий:

  • Оповещение создается для идентификатора ресурса, по которому Performance Monitoring получал данные за последние 90 дней.
  • Недавно было создано оповещение для пользовательского шаблона URL-адреса. После создания пользовательского шаблона URL-адреса и настройки оповещения у вас есть 90 дней для отправки данных по этому шаблону. Если данные не будут отправлены в течение 90 дней, Performance Monitoring удалит это оповещение. Для получения дополнительной информации о пользовательских шаблонах URL-адресов см. раздел «Агрегирование данных» в подразделе «Пользовательские шаблоны URL-адресов» .

Если хотя бы одно из этих условий не выполняется, Performance Monitoring удаляет оповещение.

Настройте оповещение

Для настройки оповещений Performance Monitoring необходимо иметь разрешение firebaseperformance.config.update . Следующие роли по умолчанию обладают этим необходимым разрешением: Firebase Performance Admin , Firebase Quality Admin , Firebase Admin , а также Project Owner или Editor .

Если вы еще этого не сделали, добавьте последнюю версию SDK Performance Monitoring в свое приложение. Для получения дополнительной информации см. руководства по началу работы для веб- платформ, Android , Apple и Flutter .

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

Настройте оповещение в таблице трассировок.

  1. Перейдите на вкладку «Панель Performance Monitoring » в консоли Firebase , а затем выберите приложение, для которого вы хотите настроить оповещение.

  2. Прокрутите вниз до таблицы «Трассировки» в нижней части экрана.

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

  4. В правом верхнем углу строки откройте меню переполнения ( ) и выберите «Настройки оповещений» .

  5. Следуйте инструкциям на экране, чтобы установить пороговое значение оповещения и процентиль (если применимо) для приложения, или включить/выключить оповещение. По умолчанию используются 90-й процентиль для Android и iOS и 75-й для веб-версии. Подробнее о процентилях по умолчанию см. в разделе «Отслеживание ключевых показателей на панели управления» .

Настройте оповещение в отчете на панели мониторинга.

  1. Перейдите на вкладку «Панель Performance Monitoring » в консоли Firebase , а затем выберите приложение, для которого вы хотите настроить оповещение.

  2. На вкладке «Отчет» найдите карточку показателя, для которой вы хотите настроить оповещение.

  3. В нужной карточке метрики откройте меню переполнения ( ) и выберите «Настройки оповещений» .

  4. Следуйте инструкциям на экране, чтобы установить пороговое значение оповещения и процентиль (если применимо) для приложения, или включить/выключить оповещение. По умолчанию используются 90-й процентиль для Android и iOS и 75-й для веб-версии. Подробнее о процентилях по умолчанию см. в разделе «Отслеживание ключевых показателей на панели управления» .

Рекомендации по настройке оповещений о производительности

Сетевые запросы

Firebase агрегирует данные из похожих сетевых запросов по шаблонам URL, которые могут быть одним из следующих типов:

Настройте оповещения для ваших пользовательских шаблонов URL-адресов.

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

Настройте оповещения для автоматического распознавания шаблонов URL-адресов.

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

Загрузка веб-страницы

Чтобы узнать рекомендуемые пороговые значения для измерения веб-метрик, см. документацию Core Web Vitals .

Визуализация экрана

Для обеспечения оптимальной работы приложения пользовательские сессии должны быть свободны от медленных и зависших кадров. Performance Monitoring рекомендует настроить оповещения о зависших кадрах, превышающих 1%, и о медленных кадрах, превышающих 5%. Эти значения будут присутствовать в настройках по умолчанию при настройке оповещений о производительности. Чтобы узнать больше о чрезмерном количестве медленных или зависших кадров и других рекомендациях по повышению производительности приложений, см. руководство Google Play .