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


Performance Monitoring collecte des traces pour vous aider à surveiller les performances de votre appli. A une trace est un rapport sur les données de performances capturées entre deux moments au cours votre application.

Vous pouvez créer vos propres traces pour surveiller les données de performances associées aux un code spécifique dans votre application. Une trace de code personnalisée vous permet de mesurer à quel point le temps nécessaire à votre application pour accomplir une tâche spécifique ou un ensemble de tâches, par exemple pour charger un ensemble d'images ou interroger votre base de données.

La métrique par défaut d'une trace de code personnalisée est sa "durée" (temps écoulé entre le point de départ et le point d'arrêt de la trace), mais vous pouvez également ajouter des métriques personnalisées.

Dans votre code, vous définissez le début et la fin d'une trace de code personnalisée à l'aide des API fournies par le SDK Performance Monitoring. Les traces de code personnalisées peuvent être démarrées à tout moment après leur création et sont thread-safe.

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

Vous pouvez consulter les données de ces traces dans le sous-onglet Traces personnalisées 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).

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

Pour les traces de code personnalisées, Performance Monitoring enregistre automatiquement attributs par défaut (métadonnées courantes telles que le pays, le navigateur, l'URL de la page, etc.) afin que vous puissiez filtrer les données de la trace dans la console Firebase. Toi Vous pouvez également ajouter et surveiller des attributs personnalisés. (niveau de jeu ou propriétés utilisateur, par exemple).

Vous pouvez également configurer une trace de code personnalisée pour enregistrer des métriques personnalisées pour les événements liés aux performances qui se produisent dans le champ d'application de la trace. Par exemple, vous pouvez créer une métrique personnalisée le nombre de succès de cache et de défauts de cache, ou le nombre de fois où l'UI devient ne répond pas pendant une période notable.

Les attributs personnalisés et les métriques personnalisées s'affichent dans la console Firebase avec les attributs et la métrique par défaut pour la trace.

Ajouter des traces de code personnalisées

Utiliser le Performance Monitoring API Trace pour ajouter des traces de code personnalisées afin de surveiller un code d'application spécifique.

Veuillez noter les points suivants :

  • Une application peut avoir plusieurs traces de code personnalisées.
  • Plusieurs traces de code personnalisées peuvent s'exécuter en même temps.
  • Les noms des traces de code personnalisés doivent répondre aux exigences suivantes: pas d'espace blanc de début ou de fin, pas de trait de soulignement au début (_) ; et la longueur maximale est de 100 caractères.
  • Les traces de code personnalisées permettent d'ajouter des métriques personnalisées et attributs personnalisés.

Pour démarrer et arrêter une trace de code personnalisée, encapsulez le code que vous souhaitez trace avec des lignes de code semblables à ce qui suit:

Web

import { trace } from "firebase/performance";

const t = trace(perf, "CUSTOM_TRACE_NAME");
t.start();

// Code that you want to trace 
// ...

t.stop();

Web

const trace = perf.trace("CUSTOM_TRACE_NAME");
trace.start();

// Code that you want to trace 
// ...

trace.stop();

Ajouter des traces de code personnalisées à l'aide de l'API User Timing

En plus de l'API Trace Performance Monitoring, vous pouvez ajouter des traces de code personnalisées à l'aide d'un le navigateur natif API User Timing : La durée d'une trace mesurée à l'aide de cette API est automatiquement détectée par le SDK Performance Monitoring. L'API User Timing est particulièrement utile si vous préférez pour charger le SDK Performance Monitoring de manière asynchrone. Une fois le SDK initialisé, il enregistre les mesures effectuées avant son chargement.

Pour utiliser cette fonctionnalité, encapsulez le code que vous souhaitez suivre avec les marques de temps utilisateur:

Web

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

Web

const performance = window.performance;

performance.mark("measurementStart");

// Code that you want to trace 
// ...

performance.mark("measurementStop");
performance.measure("customTraceName", "measurementStart", "measurementStop");

Notez que dans l'exemple ci-dessus, performance fait référence au window.performance.

Lorsque vous utilisez l'API User Timing, vous ne pouvez pas ajouter de métriques ni d'attributs personnalisés aux traces de code personnalisées. Utilisez les Performance Monitoring API Trace si vous voulez ajouter à une trace de code personnalisée.

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

Utilisez l'Performance MonitoringAPI Trace pour ajouter des métriques personnalisées aux traces de code personnalisées.

Veuillez noter les points suivants :

  • Les noms des métriques personnalisées doivent respecter les conditions suivantes : pas d'espace blanc au début ni à la fin, pas de trait de soulignement (_) au début, et longueur maximale de 100 caractères.
  • Chaque trace de code personnalisé peut enregistrer jusqu'à 32 métriques (y compris les métriques par défaut). Duration).

Pour ajouter une métrique personnalisée, insérez à chaque fois une ligne de code semblable à celle-ci : que l'événement se produit. Par exemple, cette métrique personnalisée comptabilise les événements liés aux performances qui se produisent dans votre application.

Web

import { trace } from "firebase/performance";

async function getInventory(inventoryIds) {
  const t = trace(perf, "inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  t.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  t.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  t.stop();

  return inventoryData;
}

Web

async function getInventory(inventoryIds) {
  const trace = perf.trace("inventoryRetrieval");

  // Tracks the number of IDs fetched (the metric could help you to optimize in the future)
  trace.incrementMetric("numberOfIds", inventoryIds.length);

  // Measures the time it takes to request inventory based on the amount of inventory
  trace.start();
  const inventoryData = await retrieveInventory(inventoryIds);
  trace.stop();

  return inventoryData;
}

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

Utiliser l'API Trace Performance Monitoring pour ajouter des attributs personnalisés aux traces de code personnalisées.

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

Veuillez noter les points suivants :

  • Les noms des attributs personnalisés doivent répondre aux exigences suivantes:

    • Aucun espace blanc de début ou de fin, pas de trait de soulignement au début (_)
    • Pas d'espaces
    • La longueur maximale est de 32 caractères
    • Les caractères autorisés pour le nom sont A-Z, a-z et _.
  • Chaque trace de code personnalisé peut enregistrer jusqu'à cinq attributs personnalisés.

  • Assurez-vous que les attributs personnalisés ne contiennent aucune information identifie personnellement un individu auprès de Google.

    En savoir plus sur cette consigne

Web

import { trace } from "firebase/performance";

const t = trace(perf, "test_trace");
t.putAttribute("experiment", "A");

// Update scenario
t.putAttribute("experiment", "B");

// Reading scenario
const experimentValue = t.getAttribute("experiment");

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

// Read attributes
const traceAttributes = t.getAttributes();

Web

const trace = perf.trace("test_trace");
trace.putAttribute("experiment", "A");

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

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

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

// Read attributes
const traceAttributes = trace.getAttributes();

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 un Version du SDK Monitoring compatible avec le traitement des données en temps réel. En savoir plus sur les données de performances en temps réel

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

Pour découvrir les tendances de vos métriques clés, ajoutez-les à votre panneau des métriques en haut de la Performances. Vous pouvez identifier rapidement les régressions en examinant les données d'une semaine à l'autre ou vérifier que des modifications récentes apportées à votre code améliorent les performances.

une image du tableau des métriques dans la section <span class=Tableau de bord Firebase Performance Monitoring" /&gt;

Pour ajouter une métrique à votre tableau de métriques, procédez comme suit:

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

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

En savoir plus sur l'utilisation du tableau de bord

Afficher les traces et leurs données

Pour afficher vos traces, accédez à la 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 quelques-unes des principales métriques pour chaque trace, et vous pouvez même trier la liste par de variation en pourcentage pour 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 minimiser l'impact des problèmes de performances sur vos applications et vos utilisateurs. Consultez la page de dépannage pour connaître les problèmes des problèmes de performances, 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 de manière à afficher les deltas les plus grands en haut, et vous voyez un changement significatif 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étriques, sélectionnez . => Afficher les détails La page de dépannage affiche des informations sur la métrique sélectionné.
  • Dans le tableau des traces, cliquez sur le nom d'une trace ou sur une valeur de métrique dans la ligne associée à ce nom. traceur.
  • Dans une alerte par e-mail, cliquez sur Examiner maintenant.

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 l'icône Bouton Filtrer pour filtrer les données par attribut, par exemple:

une image de <span class=Données Firebase Performance Monitoring filtrées par attribut /&gt;
  • Filtrez par URL de page pour afficher les données d'une page spécifique de votre site.
  • Filtrez les données par Type de connexion effectif pour connaître l'impact d'une connexion 3G sur votre application
  • Filtrez les données par Pays pour vous assurer que l'emplacement de votre base de données n'affecte pas un pays spécifique. région

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

Étapes suivantes

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

  • Découvrez comment suivre les problèmes de performances Console Firebase.

  • Configurer des alertes pour les modifications de code qui se dégradent les performances de votre application. Par exemple, vous pouvez configurer une alerte par e-mail pour votre équipe si la durée d'une trace de code personnalisé spécifique dépasse que vous avez défini.