Surveiller l'utilisation de la base de données

Lorsque vous gérez vos projets Firebase, vous devez examiner l'utilisation des ressources de votre Realtime Database (par exemple, le nombre d'utilisateurs connectés ou l'espace de stockage utilisé par votre base de données) et son impact sur votre facture.

Pour examiner votre utilisation facturée de Realtime Database, consultez le tableau de bord Utilisation et facturation. Pour en savoir plus sur la facturation, consultez Comprendre la facturation Realtime Database.

Pour l'utilisation des ressources, l'onglet Utilisation de la Firebase console et les métriques disponibles via Cloud Monitoring peuvent vous aider à surveiller l'utilisation de Realtime Database.

Recevoir des alertes Firebase

Vous pouvez choisir de recevoir des alertes par e-mail lorsque votre utilisation de Realtime Database approche l'une des limites de votre forfait. Par défaut, Firebase envoie des alertes par e-mail lorsque vous avez atteint ou dépassé la limite d'une formule. Toutefois, vous pouvez choisir de recevoir ces notifications plus tôt afin d'ajuster votre formule ou votre utilisation et d'éviter toute interruption de service.

Ces alertes Firebase et leurs paramètres s'appliquent à l'ensemble du projet. Cela signifie que, par défaut, chaque membre du projet disposant des autorisations requises pour recevoir des alertes recevra un e-mail lorsqu'une alerte Realtime Database sera déclenchée. Les e-mails sont envoyés à des adresses e-mail individuelles (et non à des groupes de comptes tels que des groupes Google ou des comptes Google Workspace).

Activer/Désactiver les alertes pour votre propre compte

Pour votre propre compte, vous pouvez activer ou désactiver les alertes Realtime Database sans affecter les autres membres du projet. Notez que vous devez toujours disposer des autorisations requises pour recevoir des alertes.

Pour activer ou désactiver les alertes Realtime Database :

  1. Dans la console Firebase, en haut à droite, accédez à Alertes Firebase.
  2. Ensuite, accédez à Paramètres et définissez vos préférences de compte pour les alertes Realtime Database.

Surveiller l'utilisation dans la console Firebase

Pour consulter vos connexions Realtime Database actuelles et votre utilisation des données, accédez à l'onglet Utilisation de la console Firebase. Vous pouvez vérifier l'utilisation au cours de la période de facturation actuelle, des 30 derniers jours ou des dernières 24 heures.

Firebase affiche des statistiques d'utilisation pour les métriques suivantes :

  • Connexions : nombre de connexions simultanées en temps réel actuellement ouvertes à votre base de données. Cela inclut les connexions en temps réel suivantes : WebSocket, long polling et événements envoyés par le serveur HTML. Il n'inclut pas les requêtes RESTful.
  • Stockage : quantité de données stockées dans votre base de données. Cette valeur n'inclut pas les données Firebase Hosting, ni celles stockées via d'autres produits Firebase.
  • Téléchargements : tous les octets téléchargés à partir de votre base de données, y compris les dépassements associés au protocole et au chiffrement.
  • Charge : ce graphique indique la part de votre base de données utilisée pour traiter les requêtes sur un intervalle d'une minute donné. Vous pouvez constater des problèmes de performances lorsque votre base de données approche les 100 %.

Onglet "Règles" pour Realtime Database dans la console Firebase.

En outre, la console Firebase fournit un tableau de bord d'évaluation Firebase Security Rules, une vue d'ensemble utile des appels de règles. Vous pouvez compléter ce tableau de bord par une analyse détaillée dans Cloud Monitoring.

Pour en savoir plus, consultez Surveiller les règles de sécurité dans Cloud Monitoring.

Onglet "Utilisation" de Realtime Database dans la console Firebase.

Surveiller l'utilisation avec Cloud Monitoring

Métriques d'utilisation

Pour utiliser Cloud Monitoring afin de surveiller votre utilisation facturée, suivez les métriques suivantes. 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
Nombre d'octets de charge utile envoyés

network/sent_payload_bytes_count. Cette métrique reflète la taille des données demandées par le biais d'opérations de base de données (y compris les opérations d'obtention, de requête, d'écriture, de mise à jour des écouteurs en temps réel et de diffusion). Il n'inclut pas de surcharge de connexion (protocole ou chiffrement). Le champ `sent_payload_bytes_count` contribue à vos coûts de bande passante sortante, mais ne représente pas le total des coûts facturés. Il s'agit d'une estimation des données envoyées depuis votre base de données en réponse aux requêtes. Toutefois, comme elle mesure la taille de la charge utile des données demandées et non des données réellement envoyées, elle n'est pas toujours précise.

Nombre d'octets de charge utile et de protocole envoyés

network/sent_payload_and_protocol_bytes_count. Cette métrique reflète la taille des données utiles décrites ci-dessus et la surcharge de protocole nécessaire à la connexion (par exemple, les en-têtes HTTP, les trames WebSocket et les trames de protocole Firebase en temps réel). Il ne tient pas compte des coûts de chiffrement sur les connexions sécurisées.

Nombre d'octets envoyés network/sent_bytes_count. Cette métrique reflète une estimation de la taille totale des données envoyées depuis votre base de données via des lectures. Il inclut les données de charge utile qui sont réellement envoyées aux clients, en plus du protocole et du surcoût de chiffrement qui entraînent des coûts de connexion. Cette valeur reflète le plus précisément la bande passante sortante totale sur votre facture Realtime Database.
Nombre total d'octets

storage/total_bytes. Utilisez cette métrique pour surveiller la quantité de données que vous stockez dans votre base de données. Les données que vous stockez dans Realtime Database contribuent à vos coûts de facturation.

Combinez des métriques dans les graphiques de votre tableau de bord pour obtenir des insights et des aperçus utiles. Par exemple, essayez les combinaisons suivantes :

  • Données sortantes : utilisez les métriques network/sent_bytes_count, network/sent_payload_and_protocol_bytes_count et network/sent_payload_bytes_count pour identifier les problèmes potentiels liés au protocole ou au surcoût de chiffrement qui contribuent à des coûts inattendus sur votre facture. Si vous constatez une grande différence entre la taille des charges utiles de données demandées et les autres métriques reflétant la surcharge de connexion, vous pouvez résoudre les problèmes susceptibles d'entraîner des délais d'expiration ou des connexions fréquentes. Si vous n'utilisez pas de tickets de session TLS, vous pouvez essayer de les implémenter pour réduire la surcharge de connexion SSL pour les connexions reprises.
  • Opérations : utilisez la métrique io/database_load pour connaître la part de la charge totale de votre base de données utilisée par chaque type d'opération. Veillez à regrouper io/database_load par type pour résoudre les problèmes liés aux différents types d'opérations.
  • Stockage : utilisez storage/limit et storage/total_bytes pour surveiller votre utilisation du stockage par rapport aux limites de stockage de Realtime Database.

Consultez la liste complète des métriques Realtime Database disponibles via Cloud Monitoring.

Créer un espace de travail Cloud Monitoring

Pour surveiller Realtime Database avec Cloud Monitoring, vous devez configurer un espace de travail pour votre projet. Un espace de travail organise les informations de surveillance d'un ou de plusieurs projets. Après avoir configuré un espace de travail, vous pouvez créer des tableaux de bord et des règles d'alerte personnalisés.

  1. Ouvrir la page Cloud Monitoring

    Si votre projet fait déjà partie d'un espace de travail, la page Cloud Monitoring s'ouvre. Sinon, sélectionnez un espace de travail pour votre projet.

  2. Sélectionnez l'option Nouvel espace de travail ou sélectionnez un espace de travail existant.

  3. Cliquez sur Ajouter. Une fois votre espace de travail créé, la page Cloud Monitoring s'ouvre.

Créer un tableau de bord et ajouter un graphique

Affichez les métriques Realtime Database collectées par Cloud Monitoring dans vos propres graphiques et tableaux de bord.

Avant de continuer, assurez-vous que votre projet fait partie d'un espace de travail Cloud Monitoring.

  1. Sur la page Cloud Monitoring, ouvrez votre espace de travail et accédez à la page Tableaux de bord.

    Accéder à la page Tableaux de bord

  2. Cliquez sur Créer un tableau de bord et entrez un nom.

  3. Dans le coin supérieur droit, cliquez sur Ajouter un graphique.

  4. Dans la fenêtre Ajouter un graphique, entrez un titre pour le graphique. Cliquez sur l'onglet Metric (Métrique).

  5. Dans le champ Find resource type and metric (Rechercher un type de ressource et une métrique), saisissez Firebase Realtime Database. Dans la liste déroulante renseignée automatiquement, sélectionnez l'une des métriques Realtime Database.

  6. Pour ajouter des métriques au même graphique, cliquez sur Add Metric (Ajouter une métrique), puis répétez l'étape précédente.

  7. Si vous le souhaitez, vous pouvez personnaliser votre graphique. Par exemple, dans le champ Filter (Filtre), cliquez sur + Add a filter (Ajouter un filtre). Faites défiler la page vers le bas, puis sélectionnez une valeur ou une plage pour la métrique sur laquelle vous souhaitez filtrer le graphique.

  8. Cliquez sur Enregistrer.

Pour en savoir plus sur les graphiques Cloud Monitoring, consultez la page Travailler avec des graphiques.

Créer une règle d'alerte

Vous pouvez créer une règle d'alerte basée sur les métriques Realtime Database. Suivez les étapes ci-dessous pour créer une règle d'alerte qui vous envoie un e-mail lorsqu'une métrique Realtime Database spécifique atteint un certain seuil.

Avant de continuer, assurez-vous que votre projet fait partie d'un espace de travail Cloud Monitoring.

  1. Sur la page Cloud Monitoring, ouvrez votre espace de travail et accédez à la page Alertes.

    Accéder à la page "Créer une règle d'alerte"

  2. Cliquez sur Créer une stratégie.

  3. Saisissez un nom pour votre règle d'alerte.

  4. Ajoutez une condition d'alerte basée sur l'une des métriques Realtime Database. Cliquez sur Ajouter une condition.

  5. Sélectionner une Target (cible). Dans le champ Find resource type and metric (Rechercher un type de ressource et une métrique), saisissez Realtime Database. Dans la liste déroulante renseignée automatiquement, sélectionnez l'une des métriques Realtime Database.

  6. Dans la section Déclencheurs de règle, utilisez les champs de la liste déroulante pour définir votre condition d'alerte.

  7. Ajoutez un canal de notification à votre règle d'alerte. Dans la section Notifications, cliquez sur Ajouter un canal de notification. Sélectionnez E-mail dans le menu déroulant.

  8. Saisissez votre adresse e-mail dans le champ Email address. Cliquez sur Ajouter.

  9. Vous pouvez également renseigner le champ de documentation pour inclure des informations supplémentaires dans votre notification par e-mail.

  10. Cliquez sur Enregistrer.

Si votre utilisation de Realtime Database dépasse le seuil configuré, vous recevrez une alerte par e-mail.

Pour plus d'informations sur les règles d'alerte, consultez la page Présentation des alertes.

Étape suivante