Surveiller l'utilisation de la base de données

Dans le cadre de la gestion de vos projets Firebase, vous devez examiner l'utilisation des ressources de votre Realtime Database (par exemple, le nombre d'utilisateurs connectés, la quantité de stockage utilisée par votre base de données) et l'impact de cette utilisation sur votre facture.

Pour consulter votre utilisation facturée 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 Usage de la console Firebase 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'un forfait, mais vous pouvez activer ces notifications plus tôt pour ajuster votre forfait ou votre utilisation et éviter toute interruption de service.

Ces alertes Firebase et leurs paramètres s'appliquent à l'ensemble du projet. 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 regroupements 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/désactiver les alertes Realtime Database sans affecter les autres membres du projet. Notez que vous avez toujours besoin des autorisations requises pour recevoir des alertes.

Pour activer ou désactiver les alertes Realtime Database, procédez comme suit:

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

Surveiller l'utilisation dans la console Firebase

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

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

  • Connexions:nombre de connexions simultanées, actuellement ouvertes et en temps réel à votre base de données. Cela inclut les connexions en temps réel suivantes: WebSocket, long polling et événements HTML envoyés par le serveur. Il n'inclut pas les requêtes RESTful.
  • Stockage:quantité de données stockées dans votre base de données. Cela n'inclut pas Firebase Hosting ni les données 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 quantité de votre base de données utilisée pour traiter des 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" de 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 pour 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 du préfixe firebasedatabase.googleapis.com/.

Nom de la métrique Description
Nombre d'octets de la charge utile envoyée

network/sent_payload_bytes_count. Cette métrique reflète la taille des données demandées via les opérations de base de données (y compris les récupérations, les requêtes, les écritures, les mises à jour des écouteurs en temps réel et les diffusions). Il n'inclut aucune surcharge de connexion (protocole ou chiffrement). La valeur "sent_payload_bytes_count" contribue aux coûts de bande passante sortante, mais ne représente pas le coût total facturé. 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 il mesure la taille de la charge utile des données demandées, et non les données réellement envoyées, il n'est pas toujours précis.

Nombre de charges utiles et d'octets de protocole envoyés

network/sent_payload_and_protocol_bytes_count. Cette métrique reflète la taille des données de charge utile décrites ci-dessus et les frais généraux du protocole requis par la connexion (par exemple, les en-têtes HTTP, les trames WebSocket et les trames du 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. Elle inclut les données de charge utile qui sont réellement envoyées aux clients, en plus des frais généraux de protocole et de chiffrement qui entraînent des coûts de connexion. Il s'agit de la valeur la plus précise pour refléter 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 des 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 détecter les problèmes potentiels liés aux frais généraux de protocole ou 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 les frais généraux de connexion, vous pouvez résoudre les problèmes susceptibles de provoquer des délais avant expiration ou des connexions fréquentes. Si vous n'utilisez pas de billets de session TLS, vous pouvez essayer de les implémenter pour réduire les frais généraux de connexion SSL pour les connexions reprises.
  • 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 les 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 l'utilisation de votre espace de stockage par rapport aux limites de stockage 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 recueillies 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 (Base de données en temps réel). 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