Benutzerdefinierte Überwachung für bestimmten App-Code hinzufügen

Performance sammelt Spuren überwachen, damit Sie die Leistung Ihrer App überwachen. Ein Trace ist ein Bericht mit Leistungsdaten, die zwischen zwei Zeitpunkten in Ihrer App erfasst wurden.

Sie können Ihre eigenen Ablaufverfolgungen erstellen, um Leistungsdaten zu überwachen, die mit bestimmtem Code in Ihrer App verknüpft sind. Mit einem benutzerdefinierten Code Trace können Sie messen , wie lange es Ihre Anwendung dauert eine bestimmte Aufgabe oder eine Reihe von Aufgaben zu erledigen, zum Beispiel eine Reihe von Bildern Laden oder Ihre Datenbank abfragt.

Die Standard - Metrik für eine benutzerdefinierte Code Trace ist die „Dauer“ (die Zeit zwischen den Anfangs- und Endpunkten der Kurve), aber Sie können benutzerdefinierte Messwerte als auch hinzufügen.

In Ihrem Code definieren Sie den Anfang und das Ende einer benutzerdefinierten Codeablaufverfolgung mithilfe der APIs, die vom Performance Monitoring SDK bereitgestellt werden.Spuren Individuelle Code kann jederzeit , nachdem sie erstellt habe gestartet werden, und sie sind threadsicher.

Da die für diese Traces erfasste Standardmetrik "Dauer" ist, werden sie manchmal als "Dauer-Traces" bezeichnet.

Sie können Daten aus diesen Spuren in den Custom Spuren Subreiter der Spuren Tabelle anzuzeigen, die am unteren Rande der Performance Dashboard ist (weitere Informationen über die Konsole später auf dieser Seite).

Standardattribute, benutzerdefinierte Attribute und benutzerdefinierte Metriken

Für Spuren benutzerdefinierten Code, Leistungsüberwachung protokolliert automatisch Standardattribute (gemeinsame Metadaten wie Land, Browser, URL der Seite, etc.) , so dass Sie die Daten für die Spur in der Firebase Konsole filtern. Sie können auch hinzufügen und Monitor benutzerdefinierte Attribute (wie Spiel - Ebene oder Benutzereigenschaften).

Sie können weiterhin einen benutzerdefinierten Code Trace Aufzeichnung konfigurieren benutzerdefinierte Messwerte für leistungsbezogene Ereignisse , die innerhalb der Spur des Oszilloskops auftreten. Sie können beispielsweise eine benutzerdefinierte Metrik für die Anzahl der Cache-Treffer und -Fehltreffer erstellen oder die Häufigkeit, mit der die Benutzeroberfläche für einen merklichen Zeitraum nicht mehr reagiert.

Benutzerdefinierte Attribute und benutzerdefinierte Metriken werden in der Firebase-Konsole neben den Standardattributen und der Standardmetrik für den Trace angezeigt.

Benutzerdefinierte Code-Traces hinzufügen

Verwenden Sie die Performance - Überwachung Trace - API benutzerdefinierten Code Spuren hinzufügen spezifischen Anwendungscode zu überwachen.

Beachte das Folgende:

  • Eine App kann mehrere benutzerdefinierte Code-Traces haben.
  • Es können mehrere benutzerdefinierte Codeablaufverfolgungen gleichzeitig ausgeführt werden.
  • Namen für Spuren benutzerdefinierte Code muss die folgenden Anforderungen erfüllen: keine führende oder nachfolgende Leerzeichen, keine führende Unterstrich ( _ ) Zeichen und maximale Länge beträgt 100 Zeichen.
  • Benutzerdefinierte Code Spuren unterstützen das Hinzufügen benutzerdefinierten Metriken und benutzerdefinierte Attribute .

Um eine benutzerdefinierte Codeablaufverfolgung zu starten und zu stoppen, umschließen Sie den Code, den Sie verfolgen möchten, mit Codezeilen ähnlich der folgenden:

Web v8

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

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

trace.stop();

Web v9

import { trace } from "firebase/performance";

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

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

t.stop();

Benutzerdefinierte Code-Traces mithilfe der User Timing API hinzufügen

Neben der Performance - Überwachung Trace - API können Sie benutzerdefinierte Code Spuren mit Hilfe eines Browsers nativen hinzufügen Nutzer - Timing - API . Die mit dieser API gemessene Dauer eines Trace wird automatisch vom Performance Monitoring SDK erfasst. Die Verwendung der User Timing API ist besonders hilfreich, wenn Sie es vorziehen, das Performance Monitoring SDK asynchron zu laden. Sobald das SDK initialisiert ist, zeichnet das SDK die Messungen auf, die vor dem Laden stattgefunden haben.

Um diese Funktion zu verwenden, umschließen Sie den Code, den Sie verfolgen möchten, mit Benutzer-Timing-Markierungen:

Web v8

const performance = window.performance;

performance.mark("measurementStart");

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

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

Web v9

const performance = window.performance;

performance.mark("measurementStart");

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

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

Beachten Sie, dass die performance im Beispiel oben auf den Browser verweist window.performance Objekt.

Bei Verwendung der User Timing API können den benutzerdefinierten Code-Traces keine benutzerdefinierten Metriken und Attribute hinzugefügt werden. Verwenden Sie die Performance - Überwachung Trace - API , wenn Sie diese benutzerdefinierten Elemente zu einem benutzerdefinierten Code Spur hinzufügen möchten.

Benutzerdefinierte Metriken zu benutzerdefinierten Code-Traces hinzufügen

Verwenden Sie die Performance - Überwachung Trace - API -Messwerte , um benutzerdefinierten Code Spuren hinzuzufügen.

Beachte das Folgende:

  • Namen für benutzerdefinierte Messwerte müssen die folgenden Anforderungen erfüllen: keine führende oder nachfolgende Leerzeichen, keine führende Unterstrich ( _ ) Zeichen und maximale Länge 100 Zeichen ist.
  • Jeder benutzerdefinierte Code Trace kann bis zu 32 Messwerte (einschließlich der Standardlaufzeit metric) aufzuzeichnen.

Um eine benutzerdefinierte Metrik hinzuzufügen, fügen Sie jedes Mal, wenn das Ereignis eintritt, eine Codezeile ähnlich der folgenden hinzu. Dieser benutzerdefinierte Messwert zählt beispielsweise leistungsbezogene Ereignisse, die in Ihrer App auftreten.

Web v8

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;
}

Web v9

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;
}

Erstellen Sie benutzerdefinierte Attribute für benutzerdefinierte Code-Traces

Verwenden Sie die Performance - Überwachung Trace - API benutzerdefinierte Attribute , um benutzerdefinierten Code Spuren hinzuzufügen.

Um benutzerdefinierte Attribute zu verwenden, fügen Sie Ihrer App Code hinzu, der das Attribut definiert und es mit einer bestimmten benutzerdefinierten Codeablaufverfolgung verknüpft. Sie können das benutzerdefinierte Attribut jederzeit zwischen dem Start der Ablaufverfolgung und dem Ende der Ablaufverfolgung festlegen.

Beachte das Folgende:

  • Namen für benutzerdefinierte Attribute müssen die folgenden Anforderungen erfüllen: keine führende oder nachfolgende Leerzeichen, keine führende Unterstrich ( _ ) Zeichen und maximale Länge 32 Zeichen ist.

  • Jeder benutzerdefinierte Code-Trace kann bis zu 5 benutzerdefinierte Attribute aufzeichnen.

  • Sie sollten keine benutzerdefinierten Attribute verwenden, die Informationen enthalten, die eine Person gegenüber Google persönlich identifizieren.

    Erfahren Sie mehr über diese Richtlinie

Web v8

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();

Web v9

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();

Leistungsdaten verfolgen, anzeigen und filtern

Um Echtzeit-Leistungsdaten anzuzeigen, stellen Sie sicher, dass Ihre App eine Performance Monitoring SDK-Version verwendet, die mit der Echtzeit-Datenverarbeitung kompatibel ist. Erfahren Sie mehr .

Verfolgen Sie bestimmte Metriken in Ihrem Dashboard

Um zu erfahren , wie Sie Ihre wichtigsten Kennzahlen sind Trending, fügen Sie sie in Ihre Metriken Board an der Spitze der Performance - Dashboard. Sie können Regressionen schnell erkennen, indem Sie Änderungen von Woche zu Woche anzeigen oder überprüfen, ob die jüngsten Änderungen in Ihrem Code die Leistung verbessern.

ein Bild des Metrik-Boards im Firebase Performance Monitoring-Dashboard

Um eine Metrik zu Ihrer Metriken Board hinzuzufügen, gehen Sie auf die Performance - Dashboard in der Konsole Firebase und dann auf die Registerkarte Dashboard. Klicken Sie auf eine leere Messwertkarte und wählen Sie dann einen vorhandenen Messwert aus, den Sie zu Ihrem Board hinzufügen möchten. Klicken Sie auf einer bevölkerten metric Karte für mehr Optionen, wie eine Metrik zu ersetzen oder zu entfernen.

Das Metrics Board zeigt gesammelte Metrikdaten im Zeitverlauf sowohl in grafischer Form als auch als numerische prozentuale Veränderung an.

Erfahren Sie mehr über das Dashboard .

Anzeigen von Spuren und deren Daten

Um Ihre Spuren, gehen Sie zur Ansicht Performance - Dashboard in der Firebase Konsole, scrollen Sie nach unten auf die Spuren Tabelle, und klicken Sie auf den entsprechenden Unterreiter. Die Tabelle zeigt einige der wichtigsten Metriken für jeden Trace an, und Sie können die Liste sogar nach der prozentualen Änderung für eine bestimmte Metrik sortieren.

Wenn Sie in der Trace-Tabelle auf einen Trace-Namen klicken, können Sie durch verschiedene Bildschirme klicken, um den Trace zu durchsuchen und die relevanten Metriken aufzuschlüsseln. Auf den meisten Seiten, können Sie die Filter verwenden - Taste (oben links auf dem Bildschirm) , um die Daten , die durch Attribut, zum Beispiel zu filtern:

ein Bild von Firebase Performance Monitoring-Daten, die nach Attributen gefiltert werden
  • Filtern Seite URL anzuzeigen Daten für eine bestimmte Seite Ihrer Website
  • Filter nach Effective Verbindungsart zu lernen , wie eine 3G - Verbindung Auswirkungen auf Ihre App
  • Filter nach Land um sicherzustellen , dass Ihre Datenbank Lage ist nicht auf eine bestimmte Region zu beeinflussen

Erfahren Sie mehr über Daten für Ihre Spuren sehen .

Nächste Schritte