Пара вещей: вы упомянули Firestore и Realtime Database; Я просто хотел убедиться, что вы знаете, что это две разные базы данных, предлагаемые под зонтиком Firebase.
сколько пользователей одновременно слушают
есть ли какие-либо пользователи, удерживающие соединение более X минут
- Да, есть панель приборов: https://support.google.com/firebase/answer/6317517?hl=en. Включая множество вариантов, таких как пользователи, активные в течение последних 30 минут.
сколько пользователей приняли какое-либо исключение во время соединения
любое исключение любого типа, окружающее нашу базу данных Firestore
Да, вы можете отслеживать ошибки и другие записи в журнал через драйвер стека. Они могут дать вам отчеты о ваших облачных функциях.
https://cloud.google.com/functions/docs/monitoring
Где я могу найти Stackdriver в консоли Firebase?
когда был выбор соединения сегодня утром
Для этого я не уверен, имеете ли вы в виду A., когда кто-то входил в систему утром, или B. во сколько был пик \ наибольшее использование. Если B см. 1. Если A,
База данных реального времени имеет концепцию присутствия, которая позволяет узнать, вошел ли пользователь в данный момент в систему или нет. Смотрите примеры здесь из официальной документации: https://firebase.google.com/docs/firestore/solutions/presence
и этот пост
Как сделать механизм присутствия пользователя с помощью Firebase?
Также относится к вашему
есть ли пользователь, удерживающий соединение более X минут
........... ...
Редактировать в ответ на комментарии: Я полагаю, что вы испытываете проблему XY https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem, когда вы сосредоточены на конкретном решении, даже если у вашей проблемы есть другие решения. Пользовательские метрики, события базы данных и ошибки доступны через панели мониторинга и облачные функции. Вы можете использовать облачные функции cURL, если вы используете sh, или настроить функции cron для автоматического создания отчетов, или настроить функции запуска базы данных для регистрации ошибок. Таким образом, хотя точного способа , который вы хотите, чтобы это работало, может не существовать, вам просто нужно подключить существующие инструменты, чтобы получить желаемый результат.