Ajouter une surveillance personnalisée pour un code d'application spécifique

Suivi de la performance recueille des traces pour vous aider à surveiller les performances de votre application. Une trace est un rapport de données de performances capturées entre deux points dans le temps dans votre application.

Vous pouvez créer vos propres traces pour surveiller les données de performances associées à un code spécifique dans votre application. Avec une trace de code personnalisé, vous pouvez mesurer combien de temps il prend votre application pour effectuer une tâche spécifique ou un ensemble de tâches, par exemple le chargement d' un ensemble d'images ou d' interroger la base de données.

La valeur par défaut métrique pour une trace de code personnalisé est sa « durée » (le temps entre les points de départ et d' arrêt de la trace), mais vous pouvez ajouter des paramètres personnalisés, ainsi.

Dans votre code, vous définissez le début et la fin d'une trace de code personnalisé à l'aide des API fournies par le SDK Performance Monitoring.pour les applications Android, vous pouvez également suivre des méthodes spécifiques en utilisant la @AddTrace annotation .traces de code personnalisés peuvent être lancés à tout moment après qu'ils ont été créés, et ils sont thread - safe.

Étant donné que la métrique par défaut collectée pour ces traces est la « durée », elles sont parfois appelées « traces de durée ».

Vous pouvez visualiser les données de ces traces dans les traces personnalisées sous - onglet de la table des traces, qui se trouve au bas du tableau de bord de performance ( en savoir plus sur l' utilisation de la console à la page suivante ).

Attributs par défaut, attributs personnalisés et métriques personnalisées

Pour les traces de code personnalisé, Contrôle des performances enregistre automatiquement les attributs par défaut (de métadonnées communes comme la version de l' application, pays, appareil, etc.) de sorte que vous pouvez filtrer les données pour la trace dans la console Firebase. Vous pouvez également ajouter et contrôler des attributs personnalisés (tels que, le niveau de jeu ou propriétés de l' utilisateur).

Vous pouvez configurer plus une trace de code personnalisé pour enregistrer des paramètres personnalisés pour les événements liés à la performance qui se produisent dans le champ d' application de la trace. Par exemple, vous pouvez créer une métrique personnalisée pour le nombre d'accès et d'échecs du cache ou le nombre de fois où l'interface utilisateur ne répond plus pendant une période notable.

Les attributs personnalisés et les métriques personnalisées s'affichent dans la console Firebase à côté des attributs par défaut et de la métrique par défaut pour la trace.

Ajouter des traces de code personnalisées

Utilisez le Contrôle des performances API Trace pour ajouter des traces de code personnalisé pour surveiller le code d'application spécifique.

Notez ce qui suit :

  • Une application peut avoir plusieurs traces de code personnalisé.
  • Plusieurs traces de code personnalisé peuvent s'exécuter en même temps.
  • Les noms des traces de code personnalisé doivent répondre aux exigences suivantes: premier pas ou espaces à la fin, pas underscore avant ( _ caractère), et la longueur max est de 100 caractères.
  • Traces de code personnalisé prennent en charge l' ajout de paramètres personnalisés et des attributs personnalisés .

Pour démarrer et arrêter une trace de code personnalisé, enveloppez le code que vous voulez tracer avec des lignes de code semblable au suivant (cet exemple utilise un nom de trace personnalisée de test_trace ):

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace

myTrace.stop();

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.Trace;

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace

myTrace.stop()

(Facultatif) Surveiller les méthodes spécifiques à l' aide de @AddTrace

Les applications Android prennent également en charge la @AddTrace annotation aux traces de code instrument de mesure. Grâce à cette fonctionnalité, la trace démarre au début de la méthode spécifiée et s'arrête lorsque la méthode se termine, y compris tout ce qui est invoqué par la méthode.

Par exemple, vous pouvez créer une trace de code personnalisé appelé onCreateTrace qui fonctionne lorsque le onCreate() méthode est appelée.

Java

// Import these Performance Monitoring classes at the top of your `.java` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
@Override
@AddTrace(name = "onCreateTrace", enabled = true /* optional */)
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

Kotlin+KTX

// Import these Performance Monitoring classes at the top of your `.kt` file
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.AddTrace;

// Add the `@AddTrace` annotation above the method you want to trace
@AddTrace(name = "onCreateTrace", enabled = true /* optional */)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
}

Ajouter des métriques personnalisées aux traces de code personnalisées

Utilisez le Contrôle des performances API Trace pour ajouter des paramètres personnalisés à des traces de code personnalisé.

Notez ce qui suit :

  • Les noms des paramètres personnalisés doivent répondre aux exigences suivantes: pas d' attaque ou de fuite des espaces, pas underscore avant ( _ caractère), et la longueur max est de 100 caractères.
  • Chaque trace de code personnalisé peut enregistrer jusqu'à 32 mesures (y compris la métrique par défaut Durée).

Pour ajouter une métrique personnalisée, ajoutez une ligne de code semblable à la suivante à chaque fois que l'événement se produit. Par exemple, ces événements liés à la performance des comptages sur mesure métriques qui se produisent dans votre application, tels que des hits de cache et misses ( en utilisant les noms d'événement exemple de item_cache_hit et item_cache_miss et un incrément de 1 ).

Java

Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace");
myTrace.start();

// code that you want to trace (and log custom metrics)
Item item = cache.fetch("item");
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1);
} else {
    myTrace.incrementMetric("item_cache_miss", 1);
}

myTrace.stop();

Kotlin+KTX

val myTrace = Firebase.performance.newTrace("test_trace")
myTrace.start()

// code that you want to trace (and log custom metrics)
val item = cache.fetch("item")
if (item != null) {
    myTrace.incrementMetric("item_cache_hit", 1)
} else {
    myTrace.incrementMetric("item_cache_miss", 1)
}

myTrace.stop()

Créer des attributs personnalisés pour les traces de code personnalisées

Utilisez le Contrôle des performances API Trace pour ajouter des attributs personnalisés aux traces de code personnalisé.

Pour utiliser des attributs personnalisés, ajoutez du code à votre application qui définit l'attribut et l'associe à une trace de code personnalisé spécifique. Vous pouvez définir l'attribut personnalisé à tout moment entre le démarrage et l'arrêt de la trace.

Notez ce qui suit :

  • Les noms des attributs personnalisés doivent répondre aux exigences suivantes: premier pas ou espaces à la fin, pas underscore avant ( _ caractère) et longueur maximale est de 32 caractères.

  • Chaque trace de code personnalisé peut enregistrer jusqu'à 5 attributs personnalisés.

  • Vous ne devez pas utiliser d'attributs personnalisés contenant des informations permettant d'identifier personnellement une personne auprès de Google.

    En savoir plus sur cette directive

Java

Trace trace = FirebasePerformance.getInstance().newTrace("test_trace");

// Update scenario.
trace.putAttribute("experiment", "A");

// Reading scenario.
String experimentValue = trace.getAttribute("experiment");

// Delete scenario.
trace.removeAttribute("experiment");

// Read attributes.
Map<String, String> traceAttributes = trace.getAttributes();

Kotlin+KTX

Firebase.performance.newTrace("test_trace").trace {
    // Update scenario.
    putAttribute("experiment", "A")

    // Reading scenario.
    val experimentValue = getAttribute("experiment")

    // Delete scenario.
    removeAttribute("experiment")

    // Read attributes.
    val traceAttributes = this.attributes
}

Suivre, afficher et filtrer les données de performances

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

Pour savoir comment affichent une tendance, ajoutez vos paramètres clés à votre carte des paramètres en haut du tableau de bord de performance. Vous pouvez rapidement identifier les régressions en observant les modifications d'une semaine à l'autre ou vérifier que les modifications récentes apportées à votre code améliorent les performances.

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

Pour ajouter une mesure à votre carte de métriques, allez sur le tableau de bord de performance dans la console Firebase, puis cliquez sur l'onglet Tableau de bord. Cliquez sur une carte de métrique vide, puis sélectionnez une métrique existante à ajouter à votre tableau. Cliquez sur une carte métrique peuplée pour plus d' options, comme 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 .

Afficher les traces et leurs données

Pour afficher vos traces, allez sur le tableau de bord de performance dans la console Firebase, faites défiler vers le bas à la table 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.

Si vous cliquez sur un nom de trace dans le tableau des traces, vous pouvez ensuite cliquer sur différents écrans pour explorer la trace et explorer les métriques d'intérêt. Sur la plupart des pages, vous pouvez utiliser le filtre le bouton ( en haut à gauche de l'écran) pour filtrer les données par attribut, par exemple:

une image des données Firebase Performance Monitoring filtrées par attribut
  • Filtrer par la version App pour afficher des données concernant une version passée ou votre dernière version
  • Filtrer par appareil pour savoir comment gérer les anciens périphériques de votre application
  • Filtrer par pays pour vous assurer que l' emplacement de votre base de données ne touche pas une région spécifique

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

Prochaines étapes

  • Voir les rapports détaillés des sessions utilisateur dans lequel vous pouvez voir une trace spécifique dans un contexte de chronologie d'autres traces recueillies au cours de la même session.