Dépannage et questions fréquentes concernant Performance Monitoring
Cette page fournit des conseils de dépannage pour vous aider à vous lancer avec Performance Monitoring ou à utiliser les fonctionnalités et les outils Performance Monitoring.
Premières vérifications pour le dépannage
Les deux vérifications suivantes sont des bonnes pratiques générales recommandées pour tous les utilisateurs avant de procéder à un dépannage plus approfondi.
1. Vérifier les messages du journal pour les événements de performances
Consultez vos messages de journal pour vous assurer que le SDK Performance Monitoring capture les événements de performances.
Afficher les messages de journal pour les événements de performances
Activez la journalisation du débogage comme suit :
Dans Xcode (version 16.2 ou ultérieure), sélectionnez Product (Produit) > Scheme (Schéma) > Edit scheme (Modifier le schéma).
Sélectionnez Run (Exécuter) dans le menu de gauche, puis sélectionnez l'onglet Arguments.
Dans la section Arguments Passed on Launch (Arguments transmis au lancement), ajoutez -FIRDebugEnabled.
Recherchez d'éventuels messages d'erreur dans vos messages de journaux.
Performance Monitoring ajoute le tag Firebase/Performance à ses messages de journal pour que vous puissiez les filtrer.
Recherchez les types de journaux suivants, qui indiquent que Performance Monitoring enregistre les événements de performances :
Cliquez sur l'URL pour afficher vos données dans la console Firebase. La mise à jour des données dans le tableau de bord peut prendre quelques instants.
Si votre application n'enregistre pas les événements de performances, consultez les conseils de dépannage.
Si vous débutez avec Performance Monitoring
(iOS+ |
Android |
Web), les conseils de dépannage suivants peuvent vous aider à résoudre les problèmes liés à la détection du SDK par Firebase ou à l'affichage de vos premières données sur les performances dans la console Firebase.
J'ai ajouté le SDK à l'application, mais la console
indique toujours de l'ajouter
Firebase peut détecter si vous avez bien ajouté le SDK Performance Monitoring à votre application lorsqu'il reçoit des informations sur les événements (comme les interactions avec l'application) de votre application. En général, dans les 10 minutes suivant le démarrage de votre application, le tableau de bord des performances de la console Firebase affiche le message "SDK détecté". Ensuite, dans les 30 minutes, le tableau de bord affiche les premières données traitées.
Si vous avez ajouté la dernière version du SDK à votre application il y a plus de 10 minutes et que vous ne voyez toujours aucun changement, vérifiez vos messages de journal pour vous assurer que Performance Monitoring enregistre les événements. Suivez les étapes de dépannage appropriées décrites ci-dessous pour résoudre les problèmes liés à un message de détection différée du SDK.
L'application enregistre des événements : étapes de dépannage
Si vous développez toujours en local, essayez de générer plus d'événements pour la collecte de données :
Continuez à développer votre application à l'aide d'un simulateur ou d'un appareil de test.
Générez des événements en basculant votre application entre l'arrière-plan et le premier plan plusieurs fois, en interagissant avec votre application en naviguant entre les écrans et/ou en déclenchant des requêtes réseau.
Assurez-vous que votre fichier de configuration Firebase (Google-Service-Info.plist) est correctement ajouté à votre application et que vous ne l'avez pas modifié.
Vérifiez en particulier les points suivants :
Le nom du fichier de configuration ne comporte pas de caractères supplémentaires, comme (2).
Le fichier de configuration se trouve à la racine de votre projet Xcode et est ajouté aux cibles appropriées.
L'ID d'application Apple Firebase (GOOGLE_APP_ID) indiqué dans le fichier de configuration est correct pour votre application. Trouvez votre ID d'application Firebase dans la fiche Vos applications des settingsparamètres du projet.
Si vous pensez que le fichier de configuration de votre application contient une erreur, essayez ce qui suit :
Supprimez le fichier de configuration actuellement présent dans votre application.
Suivez ces instructions pour télécharger un nouveau fichier de configuration et l'ajouter à votre application Apple.
Si le SDK enregistre des événements et que tout semble correctement configuré, mais que vous ne voyez toujours pas le message de détection du SDK ni les données traitées (après deux heures), contactez l'assistance Firebase.
L'application ne consigne pas les événements : étapes de dépannage
La console indique que le SDK est détecté, mais aucune donnée n'est affichée
Performance Monitoring traite les données d'événements de performances avant de les afficher dans le tableau de bord "Performances".
Si plus de 24 heures se sont écoulées depuis l'affichage du message "SDK détecté" et que vous ne voyez toujours aucune donnée, consultez le tableau de bord de l'état de Firebase pour vérifier si une panne connue est en cours. S'il n'y a pas de panne, contactez l'assistance Firebase.
Dépannage d'ordre général
Si vous avez ajouté le SDK et que vous utilisez Performance Monitoring dans votre application, les conseils de dépannage suivants peuvent vous aider à résoudre les problèmes généraux liés aux fonctionnalités et aux outils Performance Monitoring.
L'application n'enregistre pas les événements de performances
Il manque des données de trace d'écran dans le tableau de bord des performances
Si vous ne trouvez pas les données des traces de rendu d'écran, essayez les étapes de dépannage suivantes :
Il manque des données de trace personnalisées dans le tableau de bord des performances
Affichez-vous des données de performances pour les traces collectées automatiquement, mais pas pour les traces de code personnalisé ? Essayez les étapes de dépannage suivantes :
Vérifiez la configuration des traces de code personnalisé instrumentées via l'API Trace, en particulier les éléments suivants :
Les noms des traces de code personnalisé et des métriques personnalisées doivent répondre aux exigences suivantes : pas d'espace blanc au début ni à la fin, pas de caractère de soulignement (_) au début et une longueur maximale de 32 caractères.
Toutes les traces doivent être démarrées et arrêtées. Toute trace qui n'a pas été démarrée, qui n'a pas été arrêtée ou qui a été arrêtée avant d'avoir été démarrée ne sera pas enregistrée.
Vérifiez vos messages de journal pour vous assurer que Performance Monitoring enregistre les traces de code personnalisé attendues.
Si Performance Monitoring enregistre des événements, mais qu'aucune donnée ne s'affiche au bout de 24 heures, contactez l'assistance Firebase.
Les données de requête réseau sont manquantes dans le tableau de bord des performances
Si vous ne voyez pas les données sur les requêtes réseau, essayez de suivre les étapes de dépannage ci-dessous :
En fonction du comportement de votre code et des bibliothèques réseau utilisées par votre code, Performance Monitoring peut ne signaler que les requêtes réseau qui sont terminées. Cela signifie que les connexions HTTP/S laissées ouvertes peuvent ne pas être signalées.
Performance Monitoring ne génère pas de rapports sur les requêtes réseau avec des en-têtes Content-Type non valides. Toutefois, les requêtes réseau sans en-têtes Content-Type seront toujours acceptées.
Les données des requêtes réseau ne s'agrègent pas comme prévu
Qu'est-il arrivé à "Problèmes principaux" dans la fiche "Performances" de la page d'accueil du projet ?
Nous avons remplacé Problèmes principaux par Alertes récentes suite à l'introduction récente des alertes, qui vous avertissent automatiquement lorsque les seuils que vous avez définis sont dépassés. Les problèmes sont désormais obsolètes
et remplacés par des alertes.
Le sélecteur d'applications en haut de la fiche "Performances" filtre les entrées d'alertes sous Alertes récentes. Seules les trois alertes les plus récentes pour les applications sélectionnées sont affichées.
Qu'est-il arrivé à la possibilité de définir des seuils pour les problèmes dans la console ?
Performance Monitoring est compatible avec les alertes pour les métriques qui dépassent les seuils définis. Pour éviter toute confusion avec ces seuils configurables pour les métriques de performances, nous avons supprimé la possibilité de configurer des seuils pour les problèmes.
Qu'est-il advenu des informations "Détails" et "Métriques" dans la console Firebase ?
Nous avons remplacé les pages "Détails" et "Métriques" par une interface utilisateur (UI) centralisée et repensée pour vous aider à résoudre les problèmes plus efficacement. Cette nouvelle interface utilisateur de dépannage offre les mêmes fonctionnalités de base que les sections "Détails" et "Métriques". Pour en savoir plus sur le dépannage, consultez Afficher plus de données pour une trace spécifique.
Pourquoi le nombre d'échantillons ne correspond-il pas à mes attentes ?
Performance Monitoring collecte des données de performances à partir des appareils des utilisateurs de votre application. Si votre application compte de nombreux utilisateurs ou génère une grande quantité d'activités liées aux performances, Performance Monitoring peut limiter la collecte de données à un sous-ensemble d'appareils afin de réduire le nombre d'événements traités. Ces limites sont suffisamment élevées pour que, même avec moins d'événements, les valeurs des métriques restent représentatives de l'expérience utilisateur dans votre application.
Pour gérer le volume de données que nous collectons, Performance Monitoring utilise les options d'échantillonnage suivantes :
Limitation du débit sur l'appareil : pour empêcher un appareil d'envoyer des rafales soudaines de traces, nous limitons le nombre de traces de code et de requêtes réseau envoyées par un appareil à 300 événements toutes les 10 minutes. Cette approche protège l'appareil contre les instrumentations en boucle qui peuvent envoyer de grandes quantités de données de performances. Elle empêche également un seul appareil de fausser les mesures de performances.
Échantillonnage dynamique : Performance Monitoring collecte un nombre limité de traces de code et de traces de requêtes réseau par application et par jour pour tous les utilisateurs de l'application. Un taux d'échantillonnage dynamique est récupéré sur les appareils (à l'aide de Firebase Remote Config) pour déterminer si un appareil aléatoire doit capturer et envoyer des traces. Un appareil qui n'est pas sélectionné pour l'échantillonnage n'envoie aucun événement. Le taux d'échantillonnage dynamique est spécifique à l'application et s'ajuste pour s'assurer que le volume global de données collectées reste en dessous de la limite.
Les projets pour lesquels l'intégration BigQuery est activée bénéficient d'une limite plus élevée pour le nombre de traces de requêtes réseau.
Les sessions utilisateur envoient des données supplémentaires et détaillées depuis l'appareil d'un utilisateur, ce qui nécessite plus de ressources pour capturer et envoyer les données. Pour minimiser l'impact des sessions utilisateur, Performance Monitoring peut également limiter le nombre de sessions.
Limitation du débit côté serveur : pour s'assurer que les applications ne dépassent pas la limite d'échantillonnage, Performance Monitoring peut utiliser l'échantillonnage côté serveur pour supprimer certains événements reçus des appareils. Bien que ce type de limitation ne modifie pas l'efficacité de nos métriques, il peut entraîner de légères modifications des tendances, y compris les suivantes :
Le nombre de traces peut être différent du nombre de fois qu'un élément de code a été exécuté.
Les traces étroitement couplées dans le code peuvent avoir un nombre d'échantillons différent.
Qu'est-il arrivé à l'onglet Problèmes de la console ?
Nous avons remplacé l'onglet "Problèmes" par les alertes, qui vous avertissent automatiquement lorsque les seuils que vous avez définis sont dépassés. Vous n'avez plus besoin de vérifier manuellement la console Firebase pour déterminer l'état d'un seuil. Pour en savoir plus sur les alertes, consultez Configurer des alertes pour les problèmes de performances.
Qu'est-il arrivé aux onglets Sur l'appareil et Réseau de la console ?
Comment puis-je afficher les traces qui se trouvaient sur ces pages ?
Nous avons repensé la section Performance Monitoring de la console Firebase afin que l'onglet Tableau de bord affiche vos métriques clés et toutes vos traces au même endroit. Dans le cadre de cette refonte, nous avons supprimé les pages Sur l'appareil et Réseau.
Le tableau des traces en bas de l'onglet Tableau de bord contient les mêmes informations que celles affichées dans les onglets Sur l'appareil et Réseau, mais avec quelques fonctionnalités supplémentaires, y compris la possibilité de trier vos traces par variation en pourcentage pour une métrique spécifique. Pour afficher toutes les métriques et données d'une trace spécifique, cliquez sur son nom dans le tableau des traces.
Affichez vos traces dans les sous-onglets suivants du tableau des traces :
Traces de demandes réseau (prêtes à l'emploi et personnalisées) : sous-onglet Requêtes réseau
Traces de code personnalisé : sous-onglet Traces personnalisées
Traces de démarrage de l'application, d'application au premier plan et d'application en arrière-plan : sous-onglet Traces personnalisées
Traces de rendu d'écran : sous-onglet Rendu d'écran
Traces de chargement de page : sous-onglet Chargement de page
Pour en savoir plus sur le tableau des traces et sur l'affichage des métriques et des données, consultez la page de présentation de la console (iOS+ |
Android |
Web).
Pourquoi le nombre d'images lentes et figées n'est-il pas celui auquel je m'attendais ?
Les images à rendu lent et les images figées sont calculées avec une fréquence d'actualisation de l'appareil supposée de 60 Hz. Si la fréquence d'actualisation d'un appareil est inférieure à 60 Hz, le temps de rendu de chaque frame sera plus lent, car moins de frames sont rendues par seconde.
Des temps de rendu plus lents peuvent entraîner le signalement d'un plus grand nombre de frames lents ou figés, car davantage de frames seront rendus plus lentement ou se figeront. Toutefois, si la fréquence d'actualisation d'un appareil est supérieure à 60 Hz, le temps de rendu de chaque frame sera plus rapide.
Cela peut entraîner la signalisation d'un nombre moins important d'images lentes ou figées. Il s'agit d'une limitation actuelle du SDK Performance Monitoring.
L'exportation de mes données Performance Monitoring vers BigQuery prend plus de temps que prévu. Les données ne sont-elles pas en temps réel ?
Si vous avez activé l'intégration BigQuery pour Firebase Performance Monitoring, vos données seront exportées vers BigQuery 12 à 24 heures après la fin de la journée (heure du Pacifique).
Par exemple, les données du 19 avril seront disponibles dans BigQuery le 20 avril entre midi et minuit (toutes les dates et heures sont indiquées en heure du Pacifique).
Traitement et affichage des données en quasi-temps réel
Que signifient les données sur les performances "en temps quasi réel" ?
Firebase Performance Monitoring traite les données de performances collectées à mesure qu'elles arrivent, ce qui permet d'afficher les données en temps quasi réel dans la console Firebase. Les données traitées s'affichent dans la console quelques minutes après leur collecte, d'où le terme "quasi-temps réel".
Comment obtenir des données sur les performances de mon application en temps quasi réel ?
Pour profiter du traitement des données en quasi-temps réel, il vous suffit de vous assurer que votre application utilise une version Performance Monitoring du SDK compatible avec le traitement des données en temps réel.
Voici les versions du SDK compatibles avec la surveillance en temps réel :
iOS : version 7.3.0 ou ultérieure
tvOS : version 8.9.0 ou ultérieure
Android : version 19.0.10 ou ultérieure (ou Firebase Android BoM version 26.1.0 ou ultérieure)
Web : version 7.14.0 ou ultérieure
Notez que nous vous recommandons toujours d'utiliser la dernière version du SDK, mais que toute version listée ci-dessus permettra à Performance Monitoring de traiter vos données en quasi-temps réel.
Quelles versions du SDK Performance Monitoring sont considérées comme compatibles avec la surveillance en temps réel ?
Voici les versions du SDK compatibles avec le traitement des données en temps réel :
iOS : version 7.3.0 ou ultérieure
tvOS : version 8.9.0 ou ultérieure
Android : version 19.0.10 ou ultérieure (ou Firebase Android BoM version 26.1.0 ou ultérieure)
Web : version 7.14.0 ou ultérieure
Notez que nous vous recommandons toujours d'utiliser la dernière version du SDK, mais que toute version listée ci-dessus permettra à Performance Monitoring de traiter vos données en quasi-temps réel.
Que se passera-t-il si je ne mets pas à jour mon application pour utiliser une version du SDK compatible avec le temps réel ?
Si votre application n'utilise pas de version du SDK compatible avec le temps réel, vous verrez toujours toutes les données de performances de votre application dans la console Firebase. Toutefois, l'affichage des données de performances sera retardé d'environ 36 heures à compter du moment où elles ont été collectées.
Je suis passé à une version du SDK compatible avec le temps réel, mais certains de mes utilisateurs utilisent encore d'anciennes versions de mon application. Vais-je continuer à voir leurs données de performances dans la console Firebase ?
Oui. Quelle que soit la version du SDK utilisée par une instance d'application, vous verrez les données sur les performances de tous vos utilisateurs.
Toutefois, si vous consultez des données récentes (datant de moins de 36 heures environ), les données affichées proviennent des utilisateurs d'instances d'application utilisant une version du SDK compatible avec le temps réel. Toutefois, les données non récentes incluent les données de performances de toutes les versions de votre application.
Contacter l'assistance Firebase
Si vous contactez l'assistance Firebase, incluez toujours l'ID de votre application Firebase. Vous trouverez l'ID de votre application Firebase dans la fiche Vos applications de vos settingsParamètres du projet.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/09 (UTC).
[null,null,["Dernière mise à jour le 2025/07/09 (UTC)."],[],[]]