En savoir plus sur les données de performances des requêtes réseau HTTP/S (toute application)

La surveillance des performances utilise des traces pour collecter des données sur les processus surveillés dans votre application. Une trace est un rapport qui contient des données capturées entre deux points dans le temps dans votre application.

Pour tous les types d'applications, la surveillance des performances collecte automatiquement une trace pour chaque demande réseau émise par votre application, appelée trace de demande réseau HTTP/S . Ces traces collectent des métriques pour le temps écoulé entre le moment où votre application envoie une demande à un point de terminaison de service et le moment où la réponse de ce point de terminaison est terminée. Pour tout point de terminaison auquel votre application envoie une requête, la surveillance des performances capture plusieurs métriques :

  • Temps de réponse — Temps entre le moment où la demande est faite et le moment où la réponse est entièrement reçue

  • Taille de la charge utile de réponse — Taille en octets de la charge utile du réseau téléchargée par l'application

  • Demander la taille de la charge utile — Taille en octets de la charge utile du réseau téléchargée par l'application

  • Taux de réussite — Pourcentage de réponses réussies (codes de réponse compris entre 100 et 399) par rapport au nombre total de réponses

Vous pouvez afficher les données de ces traces dans le sous-onglet Requêtes réseau du tableau des traces, qui se trouve en bas du tableau de bord des performances (en savoir plus sur l'utilisation de la console plus loin sur cette page).

Personnaliser l'agrégation des données des requêtes réseau

En plus des outils prêts à l'emploi et de l'agrégation de données pour les requêtes réseau, Performance Monitoring prend également en charge les options suivantes :

  • Instrumenter manuellement les traces de demande réseau : la surveillance prête à l'emploi inclut la plupart des demandes réseau pour votre application. Cependant, certaines requêtes peuvent ne pas être signalées ou vous pouvez utiliser une bibliothèque différente pour effectuer des requêtes réseau. Dans ces cas, vous pouvez utiliser l'API de surveillance des performances pour instrumenter manuellement les traces de demande réseau personnalisées .
  • Agréger les données sous des modèles d'URL personnalisés : s'il existe des URL spécifiques que Firebase ne capture pas avec sa correspondance de modèle d'URL automatique dérivée, vous pouvez créer des modèles d'URL personnalisés pour surveiller un ensemble spécifique d'URL au fil du temps.
  • Personnalisez le mode de calcul du taux de réussite : parfois, un code d'erreur est attendu pour certains points de terminaison d'API ou est déjà géré dans votre application. Dans ces cas, vous pouvez configurer la façon dont le taux de réussite est calculé et surveiller plus précisément le taux de réussite des appels réseau de votre application.

Agrégation de données sous des modèles d'URL

Firebase Performance Monitoring regroupe automatiquement les données de requêtes réseau similaires pour vous aider à comprendre les tendances des performances de vos requêtes réseau.

Pour chaque requête, Firebase vérifie si l'URL de la requête réseau correspond à un modèle d'URL. Si l'URL de la demande correspond à un modèle d'URL, Firebase agrège automatiquement les données de la demande sous le modèle d'URL. Firebase affiche les modèles d'URL et leurs données agrégées dans l'onglet Réseau du tableau de bord Performances de la console Firebase.

Qu'est-ce qu'un format d'URL ?

Un modèle d'URL contient un domaine plus un modèle qui peut correspondre à un chemin d'URL, par exemple : example.com/*/animals/** .

  • Les formats d'URL peuvent contenir les segments de chemin suivants :

    • texte brut — correspond à une chaîne exacte
    • * - correspond à n'importe quelle chaîne dans un seul segment de chemin
    • ** — correspond à un suffixe de chemin arbitraire
  • Les formats d'URL peuvent être :

Par exemple : n'importe laquelle des demandes d'URL suivantes peut correspondre au modèle d'URL example.com/*/animals/** .

  • example.com/singapore/animals
  • example.com/australia/animals/spiders
  • example.com/australia/animals/marsupials/koala.png

Le domaine d'un modèle d'URL peut également contenir * comme premier segment, par exemple : *.example.com/*/fruits/** .

Firebase mappe chaque demande à un seul modèle d'URL . Si vous avez configuré des modèles d'URL personnalisés , Firebase tente d'abord de faire correspondre les URL de demande à ces modèles. Si Firebase ne trouve aucun modèle d'URL personnalisé correspondant, il associe une URL de demande au modèle d'URL automatique le plus représentatif . En savoir plus sur les modèles d'URL automatiques et personnalisés dans les sections suivantes.

Modèles d'URL automatiques

Sans aucune configuration de votre part, la surveillance des performances tente de refléter le dernier comportement d'utilisation de votre application en faisant correspondre les demandes de votre application aux modèles d'URL automatiques .

Comment fonctionne la correspondance automatique des modèles d'URL ?

Firebase associe chaque demande au modèle d'URL automatique le plus représentatif qu'il a dérivé des demandes envoyées par votre application. Notez, cependant, que Firebase tente d'abord de faire correspondre les URL de demande à tous les modèles d'URL personnalisés configurés.

Voici un exemple de base de la manière dont Firebase tente de faire correspondre les demandes au modèle d'URL automatique le plus représentatif pour votre application.

  1. Votre application envoie de nombreuses requêtes à des URL telles que :

    • example.com/germany/animals/bears
    • example.com/germany/animals/birds
    • example.com/germany/cars

    Firebase détermine que example.com/germany/** est un modèle de demande courant pour votre application et l'ajoute en tant que modèle d'URL automatique dans votre projet.

    Pour toute nouvelle demande correspondant à ce modèle d'URL, Firebase agrège les données des demandes sous le modèle d'URL automatique example.com/germany/** .

  2. Après une semaine, la majorité des requêtes de votre application sont adressées à example.com/germany/animals/bears et example.com/germany/animals/birds . Ainsi, Firebase dérive un modèle d'URL plus représentatif de example.com/germany/animals/** .

    Pour toute nouvelle demande correspondant à ce nouveau modèle d'URL, Firebase agrège les données des demandes uniquement sous le nouveau modèle d'URL. Firebase continue d'agréger les données pour les demandes adressées à example.com/germany/cars sous example.com/germany/** .

  3. Cependant, au cours des prochaines semaines, les demandes de votre application à example.com/germany/animals/bears et example.com/germany/animals/birds diminuent considérablement. Firebase détermine que example.com/germany/animals/** n'est pas représentatif du dernier comportement d'utilisation de votre application. Firebase commence donc à faire correspondre ces deux requêtes à example.com/germany/** .

    Firebase n'agrège aucune autre donnée de demande sous example.com/germany/animals/** , car il ne s'agit plus du modèle d'URL automatique le plus représentatif.

Étant donné que la correspondance automatique des modèles d'URL est dynamique, tenez compte des points suivants :

  • Les correspondances et les données agrégées des demandes précédentes ne sont pas affectées par les nouveaux modèles d'URL. Firebase ne réagrège pas rétroactivement les données de demande.

  • Seules les demandes futures sont affectées par les nouveaux modèles d'URL. Firebase mappe chaque nouvelle demande au modèle d'URL automatique le plus représentatif. Notez, cependant, que Firebase tente d'abord de faire correspondre les URL de demande à tous les modèles d'URL personnalisés configurés.

Afficher les modèles d'URL automatiques et leurs données

Firebase affiche tous les modèles d'URL et leurs données agrégées dans le sous-onglet Requêtes réseau du tableau des traces, qui se trouve en bas du tableau de bord des performances de la console Firebase.

Vous pouvez voir des modèles d'URL avec une étiquette Non classé . Il s'agit de modèles d'URL automatiques "larges" sous lesquels Firebase peut agréger des données pour les demandes qui ne correspondent à aucun modèle d'URL plus spécifique.

Lorsque la période de conservation des données se termine pour les données agrégées sous un modèle d'URL, Firebase supprime ces données du modèle d'URL. Si toutes les données agrégées sous un modèle d'URL automatique expirent, Firebase supprime ce modèle d'URL de la console Firebase.

Modèles d'URL personnalisés

Vous pouvez créer des modèles d'URL personnalisés pour surveiller des modèles d'URL spécifiques que Firebase ne capture pas avec sa correspondance de modèle d'URL automatique dérivée . Par exemple, vous pouvez utiliser un modèle d'URL personnalisé pour dépanner une URL spécifique ou pour surveiller un ensemble spécifique d'URL au fil du temps.

Consultez Créer des modèles d'URL personnalisés pour en savoir plus.

Suivre, afficher et filtrer les données de performances

Pour afficher les données de performances en temps réel, assurez-vous que votre application utilise une version du SDK de surveillance des performances compatible avec le traitement des données en temps réel. En savoir plus sur les données de performances en temps réel .

Suivez des métriques spécifiques dans votre tableau de bord

Pour connaître l'évolution de vos métriques clés, ajoutez-les à votre tableau de métriques en haut du tableau de bord des performances . Vous pouvez rapidement identifier les régressions en voyant les changements d'une semaine sur l'autre ou vérifier que les modifications récentes de votre code améliorent les performances.

une image du tableau des métriques dans le tableau de bord Firebase Performance Monitoring

Pour ajouter une statistique à votre tableau de statistiques, procédez comme suit :

  1. Accédez au tableau de bord des performances dans la console Firebase.
  2. Cliquez sur une carte de métrique vide, puis sélectionnez une métrique existante à ajouter à votre tableau.
  3. Cliquez sur sur une carte de métrique remplie pour plus d'options, par exemple pour remplacer ou supprimer une métrique.

Le tableau des métriques affiche les données métriques collectées au fil du temps, à la fois sous forme graphique et sous forme de pourcentage de variation numérique.

En savoir plus sur l'utilisation du tableau de bord .

Visualiser les traces et leurs données

Pour afficher vos traces, accédez au tableau de bord des performances dans la console Firebase, faites défiler jusqu'au tableau des traces, puis cliquez sur le sous-onglet approprié. Le tableau affiche certaines des principales métriques pour chaque trace, et vous pouvez même trier la liste en fonction du pourcentage de changement pour une métrique spécifique.

La surveillance des performances fournit une page de dépannage dans la console Firebase qui met en évidence les changements de métriques, ce qui permet de résoudre rapidement et de minimiser l'impact des problèmes de performances sur vos applications et vos utilisateurs. Vous pouvez utiliser la page de dépannage lorsque vous découvrez des problèmes de performances potentiels, par exemple, dans les scénarios suivants :

  • Vous sélectionnez des métriques pertinentes sur le tableau de bord et vous remarquez un grand delta.
  • Dans le tableau des traces, vous triez pour afficher les plus grands deltas en haut, et vous constatez une variation significative en pourcentage.
  • Vous recevez une alerte par e-mail vous informant d'un problème de performances.

Vous pouvez accéder à la page de dépannage des manières suivantes :

  • Dans le tableau de bord des métriques, cliquez sur le bouton Afficher les détails des métriques .
  • Sur n'importe quelle carte de métrique, sélectionnez => Afficher les détails . La page de dépannage affiche des informations sur la métrique que vous avez sélectionnée.
  • Dans le tableau des traces, cliquez sur un nom de trace ou sur n'importe quelle valeur de mesure dans la ligne associée à cette trace.
  • Dans une alerte par e-mail, cliquez sur Enquêter maintenant .

Lorsque vous cliquez sur un nom de trace dans le tableau des traces, vous pouvez ensuite explorer les métriques qui vous intéressent. Cliquez sur le bouton Filter pour filtrer les données par attribut, par exemple :

une image des données Firebase Performance Monitoring filtrées par attribut
  • Filtrez par version de l'application pour afficher les données d'une version antérieure ou de votre dernière version
  • Filtrez par appareil pour savoir comment les appareils plus anciens gèrent votre application
  • Filtrez par pays pour vous assurer que l'emplacement de votre base de données n'affecte pas une région spécifique

En savoir plus sur l'affichage des données pour vos traces .

Prochaines étapes

  • En savoir plus sur l'utilisation des attributs pour examiner les données de performances.

  • En savoir plus sur le suivi des problèmes de performances dans la console Firebase.

  • Configurez des alertes pour les demandes réseau qui dégradent les performances de votre application. Par exemple, vous pouvez configurer une alerte par e-mail pour votre équipe si le temps de réponse pour un modèle d'URL spécifique dépasse un seuil que vous avez défini.

  • Affichez des rapports détaillés des sessions utilisateur dans lesquels vous pouvez voir une trace spécifique dans un contexte de chronologie des autres traces collectées au cours de la même session.