Отслеживание использования базы данных

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

Чтобы посмотреть, за что с вас Realtime Database взимается плата, откройте панель управления Использование и оплата. Подробнее об оплате Realtime Database…

Чтобы отслеживать использование ресурсов Realtime Database, вы можете использовать вкладку Использование в консоли Firebase и показатели, доступные в Cloud Monitoring.

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

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

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

Как включить или отключить оповещения для своего аккаунта

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

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

  1. В правом верхнем углу консоли Firebase нажмите Оповещения Firebase.
  2. Затем перейдите в Настройки и задайте настройки аккаунта для оповещений Realtime Database.

Отслеживание использования в консоли Firebase

Чтобы посмотреть текущие подключения Realtime Database и использование данных, откройте вкладку Использование в консоли Firebase. Вы можете посмотреть данные за текущий расчетный период, последние 30 дней или последние 24 часа.

Firebase показывает статистику использования для следующих показателей:

  • Подключения. Количество одновременных открытых подключений к базе данных в реальном времени. К ним относятся следующие подключения в реальном времени: WebSocket, длинный опрос и события, отправляемые сервером HTML. Запросы RESTful не учитываются.
  • Хранилище. Объем данных, хранящихся в базе данных. Это не относится к хостингу Firebase и данным, хранящимся в других продуктах Firebase.
  • Скачивания. Все байты, скачанные из базы данных, включая накладные расходы на протокол и шифрование.
  • Нагрузка. На этом графике показано, какая часть базы данных используется для обработки запросов в течение заданного одноминутного интервала. Вы можете столкнуться с проблемами производительности, когда ваша база данных приблизится к 100%.

Вкладка "Правила" для Realtime Database в консоли Firebase.

Кроме того, в консоли Firebase есть панель оценки Firebase Security Rules, на которой можно быстро посмотреть вызовы правил. Вы также можете отслеживать использование Firebase Security Rules с помощью Cloud Monitoring. Это позволяет получать те же показатели оценки правил, а также создавать собственные панели мониторинга, анализировать тенденции и настраивать оповещения (например, о резком увеличении количества отклоненных запросов). Полный список доступных показателей приведен в справочнике по показателям Cloud Monitoring.

Подробнее о том, как отслеживать правила безопасности в Cloud Monitoring…

Вкладка "Использование" для Realtime Database в консоли Firebase.

Отслеживайте использование с помощью Cloud Monitoring

Показатели использования

Чтобы отслеживать использование, за которое взимается плата, с помощью Cloud Monitoring, используйте следующие показатели: Обратите внимание, что названия всех типов показателей начинаются с firebasedatabase.googleapis.com/.

Название показателя Описание
Количество байтов отправленной полезной нагрузки

network/sent_payload_bytes_count. Этот показатель отражает объем данных, запрошенных в результате операций с базой данных (включая получение, запросы, запись, обновления в режиме реального времени и трансляции). В нем не учитываются накладные расходы на подключение (протокол или шифрование). Значение `sent_payload_bytes_count` влияет на стоимость исходящей пропускной способности, но не учитывает общую сумму к оплате. Это приблизительный объем данных, отправленных из базы данных в ответ на запросы. Однако, поскольку он измеряет размер полезной нагрузки запрошенных данных, а не фактически отправленных данных, он не всегда может быть точным.

Количество отправленных байтов полезной нагрузки и протокола

network/sent_payload_and_protocol_bytes_count. Этот показатель отражает размер как полезной нагрузки, описанной выше, так и служебных данных протокола, необходимых для подключения (например, HTTP-заголовков, фреймов WebSocket и фреймов протокола Firebase Realtime). При этом не учитываются затраты на шифрование при защищенных подключениях.

Количество отправленных байтов network/sent_bytes_count. Этот показатель отражает приблизительный общий объем данных, отправленных из базы данных в результате операций чтения. Он включает в себя полезную нагрузку, которая отправляется клиентам, а также накладные расходы на протокол и шифрование, которые приводят к затратам на подключение. Это наиболее точно отражает общую исходящую пропускную способность в вашем счете за Realtime Database.
Общее количество байтов

storage/total_bytes. Используйте этот показатель, чтобы отслеживать, сколько данных хранится в вашей базе данных. Данные, которые вы храните в Realtime Database, влияют на ваши расходы.

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

  • Исходящие данные. Используйте показатели network/sent_bytes_count, network/sent_payload_and_protocol_bytes_count и network/sent_payload_bytes_count, чтобы выявлять потенциальные проблемы с протоколом или шифрованием, которые могут привести к непредвиденным расходам. Если вы видите большое расхождение между размером запрошенных полезных данных и другими показателями, отражающими накладные расходы на подключение, возможно, вам стоит устранить неполадки, которые могут приводить к тайм-аутам или частым подключениям. Если вы не используете билеты сеансов TLS, попробуйте внедрить их, чтобы снизить нагрузку на SSL-подключение при возобновлении соединений.
  • Операции. Используйте показатель io/database_load, чтобы узнать, какая часть общей нагрузки на базу данных приходится на каждый тип операций. Чтобы устранить неполадки, связанные с разными типами операций, сгруппируйте io/database_load по типу.
  • Хранилище. Используйте storage/limit и storage/total_bytes, чтобы отслеживать использование хранилища в соответствии с ограничениями Realtime Database.

Ознакомьтесь с полным списком показателей Realtime Database, доступных в Cloud Monitoring.

Создайте рабочую область Cloud Monitoring

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

  1. Открыть страницу Cloud Monitoring

    Если проект уже входит в рабочую область, откроется страница Cloud Monitoring. В противном случае выберите рабочую область для проекта.

  2. Выберите Новая рабочая область или выберите существующую рабочую область.

  3. Нажмите Добавить. После создания рабочей области откроется страница Cloud Monitoring.

Как создать сводку и добавить диаграмму

Показывайте показатели Realtime Database, собранные из Cloud Monitoring, на собственных диаграммах и сводках.

Прежде чем продолжить, убедитесь, что ваш проект является частью рабочей области Cloud Monitoring.

  1. На странице Cloud Monitoring откройте рабочую область и перейдите на страницу Dashboards (Панели).

    Перейти на страницу "Сводки"

  2. Нажмите Создать сводку и введите название сводки.

  3. В правом верхнем углу нажмите Добавить диаграмму.

  4. В окне Добавить диаграмму введите название диаграммы. Откройте вкладку Показатель.

  5. В поле Find resource type and metric (Найти тип ресурса и показатель) введите Firebase Realtime Database. В раскрывающемся списке выберите один из показателей Realtime Database.

  6. Чтобы добавить на диаграмму другие показатели, нажмите Добавить показатель и повторите предыдущий шаг.

  7. При необходимости настройте диаграмму. Например, в поле Фильтр нажмите + Добавить фильтр. Прокрутите страницу вниз и выберите значение или диапазон для показателя, по которому нужно отфильтровать диаграмму.

  8. Нажмите Сохранить.

Подробнее о работе с диаграммами…

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

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

Прежде чем продолжить, убедитесь, что ваш проект является частью рабочей области Cloud Monitoring.

  1. На странице Cloud Monitoring откройте рабочую область и перейдите на страницу Alerting (Оповещения).

    Перейти на страницу создания правил оповещений

  2. Нажмите Create Policy (Создать правило).

  3. Введите название правила оповещений.

  4. Добавьте условие оповещения на основе одного из показателей Realtime Database. Нажмите Добавить условие.

  5. Выберите цель. В поле Find resource type and metric (Найти тип ресурса и показатель) введите Realtime Database. В раскрывающемся списке выберите один из показателей Realtime Database.

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

  7. Добавьте канал уведомлений в правила оповещений. В разделе Notifications (Уведомления) нажмите Add Notification Channel (Добавить канал уведомлений). В раскрывающемся меню выберите Электронная почта.

  8. Введите адрес электронной почты в поле Адрес электронной почты. Нажмите Добавить.

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

  10. Нажмите Сохранить.

Если использование Realtime Database превысит заданное пороговое значение, вы получите оповещение по электронной почте.

Подробнее о правилах оповещений…

Дальнейшие действия