Il existe plusieurs façons de surveiller les performances de votre Firebase Realtime Database et d'identifier les problèmes potentiels dans votre application. La surveillance de la bande passante et de la charge entrantes et sortantes de votre application peut également vous donner une idée de ce à quoi vous attendre pour votre facture. De plus, si vous avez l'impression qu'il y a un problème, avoir une vision claire des opérations de votre base de données peut être un outil de dépannage utile.
Cette page présente la surveillance des performances Realtime Database. Pour la surveillance de l'utilisation, consultez Surveiller l'utilisation de la base de données.
Utiliser les outils de surveillance Realtime Database
Vous pouvez collecter des données sur les performances de votre Realtime Database à l'aide de plusieurs outils différents, en fonction du niveau de précision dont vous avez besoin.
Utiliser l'outil de profilage Realtime Database
L'outil de profilage Realtime Database fournit un aperçu en temps réel des opérations de lecture/écriture sur votre base de données. Le rapport inclut des informations sur la vitesse et la taille de la charge utile de chaque opération, ainsi que sur les requêtes non indexées. Toutefois, elle n'inclut pas d'informations historiques ni de statistiques sur les frais généraux de connexion, et ne doit pas être utilisée pour estimer les coûts de facturation.
Pour en savoir plus sur l'utilisation de l'outil de profilage, consultez la section Profiler votre base de données.
Utiliser la console Firebase
L'onglet Utilisation de la console Firebase fournit des informations sur les connexions simultanées à votre base de données, la quantité de données que vous stockez, la bande passante sortante (y compris les frais généraux liés au protocole et au chiffrement) et la charge de votre base de données sur un intervalle d'une minute. Bien que l'onglet Utilisation vous offre un aperçu plus précis des performances globales de votre base de données, vous ne pourrez peut-être pas aller assez loin pour résoudre les problèmes de performances potentiels.
Utiliser "Cloud Monitoring"
Avec Cloud Monitoring à partir de Google Cloud, vous pouvez utiliser l'explorateur de métriques pour afficher des métriques de performances individuelles ou créer différents tableaux de bord avec des graphiques qui affichent différentes combinaisons de métriques de performances au fil du temps. L'intégration de Realtime Database avec Cloud Monitoring offre le niveau de précision le plus élevé.
La procédure de configuration de Cloud Monitoring est décrite dans Surveiller l'utilisation de la base de données.
Consultez les sections suivantes pour obtenir des conseils sur l'utilisation de métriques Cloud Monitoring spécifiques afin de détecter les problèmes de performances.
Surveiller les performances dans Cloud Monitoring
Si vous rencontrez des problèmes de performances, y compris de disponibilité ou de latence, vous pouvez utiliser Cloud Monitoring pour surveiller les métriques suivantes.
Notez que tous les noms de type de métrique sont précédés du préfixe firebasedatabase.googleapis.com/
.
Nom de la métrique | Description |
---|---|
Charge de la base de données |
|
Réseau désactivé en cas de dépassement |
|
Stockage désactivé pour les dépassements |
|
Combinez des métriques dans des graphiques de votre tableau de bord pour obtenir des insights et des aperçus utiles. Par exemple, essayez les combinaisons suivantes:
- Opérations:utilisez la métrique
io/database_load
pour voir dans quelle mesure la charge totale de votre base de données est utilisée par chaque type d'opération. Veillez à regrouper lesio/database_load
par type pour résoudre les problèmes liés aux différents types d'opérations. - Stockage:utilisez
storage/limit
etstorage/total_bytes
pour surveiller l'utilisation de votre espace de stockage par rapport aux limites de stockage Realtime Database. Vous pouvez également ajouterstorage/disabled_for_overages
pour voir si votre application a connu des temps d'arrêt en raison de dépassement des limites de stockage. - Charge SSL:utilisez
network/https_requests_count
pour surveiller le nombre de requêtes de connexion SSL reçues par votre base de données et séparer les requêtes qui réutilisent un ticket de session SSL existant avec le filtrereused_ssl_session
. Vous pouvez comparer cela auxnetwork/sent_bytes_count
etnetwork/sent_payload_and_protocol_bytes_count
pour surveiller si votre application utilise efficacement les billets de session SSL.
Vous pouvez également configurer des alertes via Cloud Monitoring et recevoir des notifications en fonction des métriques Realtime Database.
Par exemple, vous pouvez choisir de recevoir une notification si votre io/database_load
approche d'un certain seuil.
Consultez la liste complète des métriques Realtime Database disponibles via Cloud Monitoring.
Types de charge de la base de données
La métrique io/database_load
fournit également un libellé indiquant le type d'opération à l'origine de la charge. Voici les types d'opérations mesurés:
admin
: opérations d'administration telles que la définition de règles et la lecture des métadonnées de projet.auth
: vérification de l'authentification à partir de comptes de service ou de Firebase Authentication pour un seul client.client_management
: gestion de l'ajout et de la suppression de connexions simultanées, y compris l'exécution d'opérations de déconnexion lors de la suppression.get_shallow
: récupération des données à partir d'une requête GET REST avecshallow=true
.get
: gestion des opérations REST GET.listen
: récupération des données initiales pour les opérationson
etonce
à partir des clients connectés.on_disconnect
: Enregistrement des opérations de déconnexion des clients.put
: gestion des opérationsset
à partir de clients ou d'opérations REST PUT.transaction
: effectuer des transactions à partir de requêtes REST conditionnelles ou d'une opérationtransaction
à partir d'un client.update
: gestion des opérationsupdate
ou des requêtes REST PATCH.
Surveiller les règles de sécurité dans Cloud Monitoring
Vous pouvez également analyser l'évaluation des règles de sécurité. Notez que tous les noms de type de métrique sont précédés de firebasedatabase.googleapis.com/
.
Nom de la métrique | Description |
---|---|
Évaluations des règles | rules/evaluation_count : nombre d'évaluations des règles Realtime Database effectuées en réponse à des requêtes d'écriture ou de lecture. Vous pouvez décomposer cette métrique par résultat de la requête (AUTORISER, REFUSER ou ERREUR). |
Adaptez votre graphique Cloud Monitoring aux évaluations des règles si nécessaire, par exemple en filtrant sur des résultats d'évaluation spécifiques (AUTORISER, REFUSER ou ERREUR). Pour en savoir plus sur la configuration et la personnalisation des graphiques, consultez Surveiller l'utilisation de la base de données.
Consultez la liste complète des métriques Realtime Database disponibles via Cloud Monitoring.