Как настроить расширенные оповещения для специальных каналов уведомлений

Firebase предлагает два варианта настройки оповещений и их отправки в пользовательские каналы уведомлений.



(Рекомендуется) Настройте и отправьте специальные оповещения в специальные каналы уведомлений

В Firebase по умолчанию доступны оповещения Crashlytics (см. обзорную страницу). Однако этих оповещений по умолчанию и их каналов уведомлений может быть недостаточно для ваших нужд.

В таких случаях вы можете использовать Cloud Monitoring, чтобы отправлять специальные оповещения в специальные каналы уведомлений на основе данных Crashlytics (и, при необходимости, данных о сеансах Firebase), экспортированных в Cloud Logging.

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

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

В документации по Google Cloud вы можете узнать больше о Cloud Monitoring и оповещениях, в том числе о ценах.

Требования

  1. Убедитесь, что в проекте Firebase используется тарифный план Blaze с оплатой по мере использования.

  2. Настройте экспорт данных Crashlytics и (необязательно) сеансов Firebase в Cloud Logging.

  3. Настройте каналы уведомлений.

Как настроить правила оповещений

Ниже приведены общие инструкции. Подробные инструкции можно найти в документации по Google Cloud (например, в статьях Как создавать правила оповещений о пороговых значениях показателей и Как создавать правила оповещений с помощью PromQL).

При выполнении запросов можно настроить оповещение на основе журнала или SQL:

  • Как настроить оповещение на основе журнала

    1. Выполните запрос в Logs Explorer.

    2. Нажмите кнопку Добавить оповещение.

    3. Чтобы добавить оповещение на основе журнала, следуйте инструкциям на экране.

  • Как настроить оповещение на основе SQL

    1. Выполните запрос в Анализе журналов.

    2. Нажмите кнопку Добавить оповещение.

    3. Чтобы добавить оповещение на основе SQL, следуйте инструкциям на экране.

Вы также можете настроить оповещения для показателей на основе данных журналов с помощью инструмента настройки правил в консоли Google Cloud. Для этого выберите один из следующих вариантов:

  • Конструктор. В интерфейсе консоли есть пошаговые инструкции по созданию правил оповещений.

  • PromQL. Вы указываете запрос PromQL для правила оповещений.



Отправка стандартных оповещений Crashlytics в специальные каналы уведомлений

В Firebase по умолчанию доступны оповещения Crashlytics (см. список на обзорной странице вариантов оповещений). Однако информации в этих оповещениях по умолчанию и каналов уведомлений может быть недостаточно для ваших нужд.

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

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

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

  1. Настройте Cloud Functions for Firebase, выполнив следующие действия:

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

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

Подробнее о том, как обрабатывать оповещения Crashlytics с помощью Cloud Functions for Firebase…