Существует несколько различных способов отслеживать производительность вашей базы данных Firebase Realtime и выявлять потенциальные проблемы в вашем приложении. Просмотр входящей и исходящей пропускной способности и нагрузки вашего приложения также может дать вам представление о том, чего ожидать от вашего счета. Кроме того, если что-то кажется неправильным, получение четкой картины операций вашей базы данных может быть полезным инструментом устранения неполадок.
На этой странице обсуждается мониторинг производительности базы данных в реальном времени. Сведения о мониторинге использования см. в разделе Мониторинг использования базы данных .
Используйте инструменты мониторинга базы данных в реальном времени
Вы можете собирать данные о производительности вашей базы данных реального времени с помощью нескольких различных инструментов, в зависимости от необходимого уровня детализации.
Используйте инструмент профилировщика базы данных в реальном времени
Инструмент профилировщика базы данных в реальном времени предоставляет обзор операций чтения/записи в вашей базе данных в реальном времени. Отчет включает информацию о скорости и размере полезной нагрузки каждой операции в дополнение к неиндексированным запросам. Однако он не включает исторические данные или какие-либо статистические данные о накладных расходах на соединение и не должен использоваться для оценки затрат на выставление счетов .
Дополнительные сведения об использовании средства профилирования см. в разделе Профилирование базы данных .
Используйте консоль Firebase
Вкладка «Использование» в консоли Firebase предлагает информацию об одновременных подключениях к вашей базе данных, объеме хранимых данных, исходящей пропускной способности (включая накладные расходы на протокол и шифрование) и загрузке вашей базы данных с интервалом в 1 минуту. Хотя вкладка «Использование» дает вам более точный обзор общей производительности вашей базы данных, вы, возможно, не сможете достаточно детализировать данные, чтобы устранить потенциальные проблемы с производительностью.
Используйте облачный мониторинг
Благодаря Cloud Monitoring от Google Cloud вы можете использовать Metrics Explorer для просмотра отдельных показателей производительности или создавать различные информационные панели с диаграммами, которые отображают различные комбинации показателей производительности с течением времени. Интеграция базы данных в реальном времени с облачным мониторингом обеспечивает самый глубокий уровень детализации.
Шаги по настройке Cloud Monitoring описаны в разделе Monitor Database Usage .
В следующих разделах приведены советы по использованию конкретных метрик Cloud Monitoring для выявления проблем с производительностью.
Мониторинг производительности в Cloud Monitoring
Если у вас возникают проблемы с производительностью, включая время безотказной работы или задержку, вы можете использовать облачный мониторинг для отслеживания следующих показателей. Обратите внимание, что все имена типов метрик имеют префикс firebasedatabase.googleapis.com/
.
Название показателя | Описание |
---|---|
Загрузка базы данных | |
Сеть отключена из-за перерасхода | |
Хранилище отключено из-за избытка | |
Объединяйте показатели в диаграммы на панели инструментов, чтобы получать полезную информацию и обзоры. Например, попробуйте следующие комбинации:
- Операции: используйте метрику
io/database_load
, чтобы увидеть, какая часть общей нагрузки базы данных используется каждым типом операции. Не забудьте сгруппироватьio/database_load
по типу для устранения неполадок различных типов операций. - Хранилище: Используйте
storage/limit
иstorage/total_bytes
, чтобы контролировать использование хранилища по отношению к ограничениям хранилища базы данных реального времени. Вы также можете добавитьstorage/disabled_for_overages
, чтобы узнать, было ли время простоя вашего приложения в результате превышения лимитов хранилища. - Накладные расходы SSL: используйте
network/https_requests_count
чтобы отслеживать, сколько запросов SSL-подключений получила ваша база данных, и разделите запросы, которые повторно использовали существующий билет сеанса SSL, с помощью фильтраreused_ssl_session
. Вы можете измерить это по параметрамnetwork/sent_bytes_count
иnetwork/sent_payload_and_protocol_bytes_count
чтобы контролировать, эффективно ли ваше приложение использует билеты сеанса SSL.
Вы также можете настроить оповещения с помощью облачного мониторинга и получать уведомления на основе показателей базы данных в реальном времени. Например, вы можете выбрать получение уведомления, если ваш io/database_load
приближается к определенному порогу.
См. полный список метрик базы данных в реальном времени, доступных через Cloud Monitoring .
Типы загрузки базы данных
Метрика io/database_load
также предоставляет метку того, какой тип операции вызвал загрузку. Ниже приведены возможные типы измеряемых операций:
-
admin
: операции администратора, такие как установка правил и чтение метаданных проекта. -
auth
: проверка аутентификации из сервисных учетных записей или аутентификации Firebase для одного клиента. -
client_management
: обработка добавления и удаления одновременных подключений, включая выполнение операций отключения при удалении. -
get_shallow
: получение данных из REST GET с помощьюshallow=true
. -
get
: обработка операций REST GET. -
listen
: получение начальных данных дляon
иonce
операций от подключенных клиентов. -
on_disconnect
: Регистрация операций отключения от клиентов. -
put
: обработка операцийset
от клиентов или операций REST PUT. -
transaction
: выполнение транзакций из условных запросов REST илиtransaction
операция от клиента. -
update
: обработка операцийupdate
или запросов REST PATCH.
Мониторинг правил безопасности в облачном мониторинге
Вы также можете проанализировать оценку правил безопасности. Обратите внимание, что все имена типов метрик имеют префикс firebasedatabase.googleapis.com/
.
Название показателя | Описание |
---|---|
Оценки правил | rules/evaluation_count . Количество оценок правил базы данных реального времени, выполненных в ответ на запросы на запись или чтение. Вы можете разбить эту метрику по результату запроса (РАЗРЕШИТЬ, ЗАПРЕТИТЬ или ОШИБКА). |
При необходимости настройте диаграмму Cloud Monitoring для оценки правил, например, отфильтровав определенные результаты оценки, РАЗРЕШИТЬ, ЗАПРЕТИТЬ или ОШИБКА. Настройка и настройка диаграмм описаны в разделе Мониторинг использования базы данных .
См. полный список метрик базы данных в реальном времени, доступных через Cloud Monitoring .