Surveiller l'utilisation de la base de données

Dans le cadre de la gestion de vos projets Firebase, vous souhaiterez examiner l'utilisation des ressources de votre base de données en temps réel (par exemple, combien d'utilisateurs sont connectés, la quantité de stockage utilisée par votre base de données) et comment cette utilisation affecte votre facture.

Pour examiner l'utilisation facturée de votre base de données en temps réel, consultez le tableau de bord Utilisation et facturation . Consultez Comprendre la facturation de la base de données en temps réel pour plus d’informations sur la facturation.

Pour l'utilisation des ressources, l'onglet Utilisation de la base de données dans la console Firebase et les métriques disponibles via Cloud Monitoring peuvent vous aider à surveiller l'utilisation de la base de données en temps réel.

Console Firebase

Pour voir vos connexions actuelles à la base de données en temps réel et votre utilisation des données, consultez l'onglet Utilisation dans la console Firebase. Vous pouvez vérifier l'utilisation sur la période de facturation en cours, les 30 derniers jours ou les dernières 24 heures.

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

  • Connexions : nombre de connexions simultanées, actuellement ouvertes, en temps réel à votre base de données. Cela inclut les connexions en temps réel suivantes : WebSocket, interrogations longues 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. Cela n'inclut pas l'hébergement Firebase 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 la surcharge de protocole et de chiffrement.
  • Charge : ce graphique montre la quantité de votre base de données utilisée, traitant les requêtes, sur un intervalle donné d'une minute. Vous pourriez rencontrer des problèmes de performances lorsque votre base de données approche 100 %.

Le tableau de bord de surveillance des règles de base de données en temps réel dans la console Firebase.

De plus, la console Firebase fournit un tableau de bord d'évaluation des règles de sécurité Firebase, une vue utile en un coup d'œil des appels de règles. Vous pouvez compléter ce tableau de bord avec une analyse détaillée dans Cloud Monitoring.

Pour plus d'informations, consultez Surveiller les règles de sécurité dans Cloud Monitoring .

Le tableau de bord d'utilisation de la base de données en temps réel dans la console Firebase.

Surveillance du cloud

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 types de métriques portent le préfixe 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 via les opérations de base de données (y compris les obtentions, 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 cryptage). Le `sent_payload_bytes_count` contribue à vos coûts de bande passante sortante, mais il ne prend pas en compte 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, mais comme elle mesure la taille de la charge utile des données demandées, et non les données réellement envoyées, elle peut ne pas toujours être exacte.

Charge utile envoyée et nombre d’octets de protocole

network/sent_payload_and_protocol_bytes_count . Cette métrique reflète à la fois la taille des données utiles décrites ci-dessus et la surcharge de protocole nécessitée par la connexion (par exemple, les en-têtes HTTP, les trames WebSocket et les trames de protocole en temps réel Firebase). 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 les lectures. Il inclut les données utiles qui sont réellement envoyées aux clients, en plus de la surcharge de protocole et de chiffrement qui entraîne des coûts de connexion. Cela reflète le plus précisément la bande passante sortante totale sur votre facture de base de données en temps réel.
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 les mesures dans des graphiques sur votre tableau de bord pour obtenir des informations 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 contribuant à des coûts inattendus sur votre facture. Si vous constatez un écart important entre la taille des charges utiles de données demandées et les autres métriques reflétant la surcharge de connexion, vous souhaiterez peut-être résoudre les problèmes susceptibles d'entraîner des délais d'attente 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 lors de la reprise des connexions.
  • Opérations : utilisez la métrique io/database_load pour voir quelle part de la charge totale de votre base de données est utilisée par chaque type d'opération. Assurez-vous de regrouper io/database_load par type pour dépanner différents types d'opérations.
  • Stockage : utilisez les storage/limit et storage/total_bytes pour surveiller votre utilisation du stockage par rapport aux limites de stockage de la base de données en temps réel.

Consultez la liste complète des métriques de base de données en temps réel 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 suivi d'un ou plusieurs projets. Après avoir configuré un espace de travail, vous pouvez créer des tableaux de bord personnalisés et des politiques d'alerte.

  1. Ouvrez la page de surveillance du cloud

    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 de base de données en temps réel collectées à partir de 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édez à la page Tableaux de bord

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

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

  4. Dans la fenêtre Ajouter un graphique , entrez un titre de graphique. Cliquez sur l'onglet Métrique .

  5. Dans le champ 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 de la base de données en temps réel.

  6. Pour ajouter d'autres métriques au même graphique, cliquez sur Ajouter une métrique et répétez l'étape précédente.

  7. Vous pouvez éventuellement adapter votre graphique selon vos besoins. Par exemple, dans le champ Filtre , cliquez sur + Ajouter un filtre . Faites défiler vers le bas, puis sélectionnez une valeur ou une plage pour la mesure qui vous intéresse sur laquelle vous souhaitez filtrer le graphique.

  8. Cliquez sur Enregistrer .

Pour en savoir plus sur les graphiques Cloud Monitoring, consultez Utilisation des graphiques .

Créer une politique d'alerte

Vous pouvez créer une stratégie d'alerte basée sur les métriques de la base de données en temps réel. Suivez les étapes ci-dessous pour créer une politique d'alerte qui vous envoie un e-mail chaque fois qu'une métrique de base de données en temps réel 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édez à la page Créer une nouvelle politique d'alerte.

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

  3. Saisissez un nom pour votre stratégie d'alerte.

  4. Ajoutez une condition d'alerte basée sur l'une des métriques de la base de données en temps réel. Cliquez sur Ajouter une condition .

  5. Sélectionnez une cible . Dans le champ Rechercher un type de ressource et une métrique , saisissez Base de données en temps réel . Dans la liste déroulante renseignée automatiquement, sélectionnez l'une des métriques de la base de données en temps réel.

  6. Sous Déclencheurs de stratégie , utilisez les champs déroulants pour définir votre condition d'alerte.

  7. Ajoutez un canal de notification à votre politique d'alerte. Sous Notifications , cliquez sur Ajouter un canal de notification . Sélectionnez E-mail dans le menu déroulant.

  8. Entrez votre e-mail dans le champ Adresse e-mail . Cliquez sur Ajouter .

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

  10. Cliquez sur Enregistrer .

Si votre utilisation de la base de données en temps réel dépasse le seuil configuré, vous recevrez une alerte par e-mail.

Pour en savoir plus sur les stratégies d'alerte, consultez Introduction aux alertes .

Et après