Performance Monitoring utilise des traces pour collecter des données sur les processus surveillés dans votre application. Une trace est un rapport contenant des données capturées entre deux points dans le temps dans votre application.
Pour tous les types d'applications, Performance Monitoring collecte automatiquement une trace pour chaque requête réseau émise par votre application, appelée trace de requête réseau HTTP/S. Ces traces collectent des métriques pour la période s'écoulant entre le moment où votre application envoie une requête à un point de terminaison de service et la fin de la réponse de ce point de terminaison. Pour chaque point de terminaison auquel votre application envoie une requête, Performance Monitoring capture plusieurs métriques:
Temps de réponse : temps écoulé entre le moment où la requête est envoyée et celui où la réponse est entièrement reçue.
Taille de la charge utile de la réponse : taille en octets de la charge utile réseau téléchargée par l'application.
Taille de la charge utile de la requête : taille en octets de la charge utile réseau mise en ligne 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 consulter les données de ces traces dans le sous-onglet Requêtes réseau du tableau des traces, situé en bas du tableau de bord Performances (pour en savoir plus sur l'utilisation de la console, consultez la suite de 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 est également compatible avec les options suivantes:
- Instrumentez manuellement les traces des requêtes réseau:la surveillance prête à l'emploi inclut la plupart des requêtes réseau de votre application. Toutefois, certaines requêtes peuvent ne pas être signalées ou vous pouvez utiliser une autre bibliothèque pour effectuer des requêtes réseau. Dans ce cas, vous pouvez utiliser l'API Performance Monitoring pour instrumenter manuellement les traces de requêtes réseau personnalisées.
- Agréger des données sous des formats d'URL personnalisés:si Firebase ne capture pas certaines URL avec sa mise en correspondance automatique des formats d'URL dérivés, vous pouvez créer des formats d'URL personnalisés pour surveiller un ensemble spécifique d'URL au fil du temps.
- Personnaliser le 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 ce cas, vous pouvez configurer le calcul du taux de réussite et surveiller plus précisément le taux de réussite des appels réseau de votre application.
Agrégation des données sous les formats d'URL
Firebase Performance Monitoring agrège automatiquement les données des 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 requête correspond à un format d'URL, Firebase agrège automatiquement les données de la requête sous le format d'URL. Firebase affiche les formats d'URL et leurs données agrégées dans l'onglet Network (Réseau) du tableau de bord Performances de la console Firebase.
Qu'est-ce qu'un format d'URL ?
Un format d'URL contient un domaine et un format pouvant correspondre à un chemin d'URL, par exemple: example.com/*/animals/**
.
Les modèles d'URL peuvent contenir les segments de chemin d'accès suivants:
- texte brut : correspond à une chaîne exacte
*
: correspond à n'importe quelle chaîne dans un seul segment de chemin d'accès**
: correspond à un suffixe de chemin d'accès arbitraire
Les formats d'URL peuvent être:
- Modèles dérivés de Firebase (appelés modèles d'URL automatiques)
- Modèles définis par l'utilisateur (appelés formats d'URL personnalisés)
Par exemple, n'importe quelle requête d'URL suivante peut correspondre au format 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 format d'URL peut également contenir *
comme premier segment, par exemple: *.example.com/*/fruits/**
.
Firebase ne mappe chaque requête qu'à un seul format d'URL. Si vous avez configuré des formats d'URL personnalisés, Firebase tente d'abord de faire correspondre les URL de requête à ces formats. Si Firebase ne trouve aucun format d'URL personnalisé correspondant, il fait correspondre une URL de requête au format d'URL automatique le plus représentatif. Pour en savoir plus sur les formats d'URL automatiques et personnalisés, consultez les sections suivantes.
Formats d'URL automatiques
Sans aucune configuration de votre part, Performance Monitoring tente de refléter le dernier comportement d'utilisation de votre application en faisant correspondre les requêtes de votre application à des formats d'URL automatiques.
Comment fonctionne la mise en correspondance automatique des formats d'URL ?
Firebase fait correspondre chaque requête au format d'URL automatique le plus représentatif qu'il a dérivé des requêtes envoyées par votre application. Notez toutefois que Firebase tente d'abord de faire correspondre les URL de requête à tous les formats d'URL personnalisés configurés.
Vous trouverez ci-dessous un exemple de base montrant comment Firebase tente de faire correspondre les requêtes au format d'URL automatique le plus représentatif de votre application.
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 format de requête courant pour votre application et l'ajoute en tant que format d'URL automatique dans votre projet.Pour toute nouvelle requête correspondant à ce format d'URL, Firebase agrège les données des requêtes sous le format d'URL automatique
example.com/germany/**
.Au bout d'une semaine, la majorité des requêtes de votre application sont destinées à
example.com/germany/animals/bears
etexample.com/germany/animals/birds
. Firebase dérive donc un format d'URL plus représentatif deexample.com/germany/animals/**
.Pour toute nouvelle requête correspondant à ce nouveau format d'URL, Firebase agrège les données des requêtes uniquement sous le nouveau format d'URL. Firebase continue d'agréger les données pour les requêtes envoyées à
example.com/germany/cars
sousexample.com/germany/**
.Toutefois, au cours des prochaines semaines, les requêtes de votre application vers
example.com/germany/animals/bears
etexample.com/germany/animals/birds
diminueront considérablement. Firebase détermine queexample.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 plus de données de requête sous
example.com/germany/animals/**
, car ce n'est plus le modèle d'URL automatique le plus représentatif.
Étant donné que la mise en correspondance automatique des formats d'URL est dynamique, tenez compte des points suivants:
Les correspondances et les données agrégées des requêtes précédentes ne sont pas affectées par les nouveaux formats d'URL. Firebase ne réagrège pas rétroactivement les données de requête.
Seuls les futurs appels sont concernés par les nouveaux formats d'URL. Firebase mappe chaque nouvelle requête sur le format d'URL automatique le plus représentatif. Notez toutefois que Firebase tente d'abord de faire correspondre les URL de requête à 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 formats 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 Performances de la console Firebase.
Vous pouvez voir des formats d'URL associés au libellé Sans catégorie. Il s'agit de formats d'URL automatiques "larges" sous lesquels Firebase peut agréger les données des requêtes qui ne correspondent à aucun format 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 format d'URL, Firebase les supprime du format d'URL. Si toutes les données agrégées sous un format d'URL automatique expirent, Firebase supprime ce format d'URL de la console Firebase.
Formats d'URL personnalisés
Vous pouvez créer des formats d'URL personnalisés pour surveiller des formats d'URL spécifiques que Firebase ne capture pas avec sa mise en correspondance automatique des formats d'URL dérivée. Par exemple, vous pouvez utiliser un format d'URL personnalisé pour résoudre les problèmes liés à une URL spécifique ou pour surveiller un ensemble d'URL spécifiques au fil du temps.
Pour en savoir plus, consultez Créer des formats d'URL personnalisés.
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 Performance Monitoring compatible avec le traitement des données en temps réel. En savoir plus sur les données sur les performances en temps réel
Suivre 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 Performances. Vous pouvez identifier rapidement les régressions en observant les variations d'une semaine à l'autre ou vérifier que les modifications récentes apportées à votre code améliorent les performances.
"Panneau de contrôle Firebase Performance Monitoring" />Pour ajouter une métrique à votre tableau de métriques, procédez comme suit:
- Accédez au tableau de bord des performances dans la console Firebase.
- Cliquez sur une fiche de métrique vide, puis sélectionnez une métrique existante à ajouter à votre tableau.
- Cliquez sur sur une fiche de métrique renseignée pour afficher d'autres options, par exemple pour remplacer ou supprimer une métrique.
Le tableau de données métriques affiche les données métriques collectées au fil du temps, à la fois sous forme graphique et sous forme de pourcentage numérique.
En savoir plus sur l'utilisation du tableau de bord
Afficher les traces et leurs données
Pour afficher vos traces, accédez au tableau de bord "Performances" dans la console Firebase, faites défiler la page jusqu'au tableau des traces, puis cliquez sur le sous-onglet approprié. Le tableau affiche certaines métriques principales pour chaque trace. Vous pouvez même trier la liste en fonction du pourcentage de variation d'une métrique spécifique.
Performance Monitoring fournit une page de dépannage dans la console Firebase qui met en évidence les modifications des métriques. Vous pouvez ainsi résoudre rapidement et facilement les problèmes de performances et en limiter l'impact 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 les métriques pertinentes dans le tableau de bord et vous remarquez un écart important.
- Dans le tableau des traces, vous triez les données pour afficher les deltas les plus importants en haut. Vous constatez alors une variation importante 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 de différentes manières:
- Dans le tableau de bord des métriques, cliquez sur le bouton Afficher les détails de la métrique.
- Sur une fiche de métrique, sélectionnez
. La page de dépannage affiche des informations sur la métrique que vous avez sélectionnée. > Afficher les détails - Dans le tableau des traces, cliquez sur un nom de trace ou sur une valeur de métrique dans la ligne associée à cette trace.
- Dans une alerte par e-mail, cliquez sur Examiner.
Lorsque vous cliquez sur un nom de trace dans le tableau des traces, vous pouvez ensuite examiner les métriques qui vous intéressent. Cliquez sur le bouton
- Filtrez les données par Version de l'application pour afficher les données d'une version précédente ou de la 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.
Découvrez comment afficher les données de vos traces.
Étapes suivantes
Découvrez comment utiliser des attributs pour examiner les données sur les performances.
Découvrez comment suivre les problèmes de performances dans la console Firebase.
Configurez des alertes pour les requêtes 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 d'un format d'URL spécifique dépasse un seuil que vous définissez.
- Consultez des rapports détaillés sur les sessions utilisateur dans lesquels vous pouvez afficher une trace spécifique dans le contexte chronologique des autres traces collectées au cours de la même session.