Performance Monitoring verwendet Traces, um Daten zu überwachten Prozessen in Ihrer Anwendung zu erfassen. Ein Trace ist ein Bericht, der Daten enthält, die zwischen zwei Zeitpunkten erfasst wurden. in Ihrer App.
Performance Monitoring erfasst für alle App-Typen automatisch ein Trace für jedes Netzwerk Anfrage, die von Ihrer Anwendung ausgegeben wird, als HTTP/S-Netzwerkanfrage-Trace bezeichnet. Diese Traces erfassen Messwerte für die Zeit zwischen dem Zeitpunkt, zu dem Ihre App eine Anfrage an eine Dienstendpunkt und der Zeitpunkt, an dem die Antwort von diesem Endpunkt abgeschlossen ist. Für alle Endpunkt, an den Ihre Anwendung eine Anfrage sendet, erfasst Performance Monitoring mehrere Metriken:
Reaktionszeit: Zeit zwischen der Anfrage und dem wenn die Antwort vollständig empfangen wurde
Größe der Antwortnutzlast: Bytegröße der Netzwerknutzlast von der App heruntergeladen
Größe der Anfragenutzlast: Bytegröße der Netzwerknutzlast von der App hochgeladen
Erfolgsquote: Prozentsatz der erfolgreichen Antworten (Antwortcodes in den 100 - 399 Bereich) verglichen mit der Gesamtzahl der Antworten
Die Daten aus diesen Traces finden Sie auf dem Unter-Tab Netzwerkanfragen Traces-Tabelle, die sich unten im Dashboard Leistung befindet (weitere Informationen Weitere Informationen zur Konsole finden Sie weiter unten auf dieser Seite.
Performance Monitoring erfasst automatisch Messwerte für Netzwerkanfragen, die den folgenden Netzwerkbibliotheken:
OkHttp3, insbesondere HTTP-Client v3.x.x
Java's URLConnection insbesondere HttpURLConnection und HttpsURLConnection
-
Informieren Sie sich unbedingt Apache HTTP Client-Entfernung und Einstellung von Apache HTTP Client wenn Sie diese Bibliothek verwenden.
Datenaggregation für Netzwerkanfragen anpassen
Zusätzlich zu den vorkonfigurierten Tools und der Datenaggregation für Netzwerkanfragen unterstützt Performance Monitoring auch die folgenden Optionen:
- Netzwerkanfrage-Traces manuell instrumentieren: Das standardmäßige Monitoring umfasst die meisten Netzwerkanfragen für Ihre App. Einige Anfragen werden jedoch möglicherweise nicht erfasst oder Sie verwenden eine andere Bibliothek, um Netzwerkanfragen zu stellen. In können Sie mit der Performance Monitoring API manuell instrumentieren benutzerdefinierte Netzwerkanfrage-Traces.
- Daten unter benutzerdefinierten URL-Mustern aggregieren:Wenn bestimmte URLs Firebase erfasst mit dem abgeleiteten automatischen URL-Musterabgleich keine Daten. kann benutzerdefinierte URL-Muster erstellen um eine bestimmte Gruppe von URLs im Zeitverlauf zu überwachen.
- Berechnung der Erfolgsquote anpassen:Manchmal wird ein Fehlercode erwartet. für bestimmte API-Endpunkte oder wird bereits in Ihrer Anwendung verarbeitet. In diesen Fällen können Sie konfigurieren, wie die Erfolgsquote berechnet wird. und die Erfolgsquote für die Netzwerkaufrufe Ihrer App genauer zu beobachten.
Datenaggregation nach URL-Mustern
Firebase Performance Monitoring aggregiert automatisch Daten für ähnliche Netzwerkanfragen um Trends bei der Leistung Ihrer Netzwerkanfragen zu erkennen.
Firebase prüft bei jeder Anfrage, ob die URL der Netzwerkanfrage mit einer URL übereinstimmt Muster zu ändern. Stimmt die Anfrage-URL mit einem URL-Muster überein, aggregiert die Daten der Anfrage unter dem URL-Muster. Angezeigte URL in Firebase und ihre aggregierten Daten auf dem Tab Network Dashboard zur Leistungsüberwachung der Firebase-Konsole.
Was ist ein URL-Muster?
Ein URL-Muster enthält eine Domain plus ein Muster, das mit einem URL-Pfad übereinstimmen kann,
Instanz: example.com/*/animals/**
.
URL-Muster können die folgenden Pfadsegmente enthalten:
- Nur Text: Es wird eine genaue Übereinstimmung mit einem String gefunden.
*
: entspricht einem beliebigen String in einem einzelnen Pfadsegment**
: entspricht einem beliebigen Pfadsuffix
URL-Muster können entweder:
- Von Firebase abgeleitete Muster – als automatische URL bezeichnet Muster
- Benutzerdefinierte Muster – sogenannte benutzerdefinierte URL Muster
Beispiel: Jede der folgenden URL-Anfragen könnte mit dem URL-Muster example.com/*/animals/**
übereinstimmen.
example.com/singapore/animals
example.com/australia/animals/spiders
example.com/australia/animals/marsupials/koala.png
Die Domain für ein URL-Muster kann auch *
als erstes Segment enthalten.
Beispiel: *.example.com/*/fruits/**
.
Firebase ordnet jede Anfrage nur einem URL-Muster zu. Wenn Sie benutzerdefinierte URL-Muster festgelegt haben, versucht Firebase, URLs zu diesen Mustern zuerst anfordern. Wenn Firebase keine übereinstimmende benutzerdefinierte URL findet Muster gefunden, gleicht sie eine Anfrage-URL mit der repräsentativsten automatischen URL-Muster. Weitere Informationen zu automatischen und benutzerdefinierten URLs erhalten Sie in den folgenden Abschnitten.
Automatische URL-Muster
Ohne Konfiguration versucht Performance Monitoring, die Leistung Ihrer App des aktuellen Nutzungsverhaltens durch Abgleichen von App-Anfragen mit automatischer URL Muster.
Wie funktioniert der automatische URL-Musterabgleich?
Firebase gleicht jede Anfrage mit dem repräsentativsten automatischen URL-Muster ab, das aus Anfragen abgeleitet wurde, die von Ihrer App gesendet wurden. Beachten Sie jedoch, dass Firebase zuerst versucht, Anfrage-URLs mit konfigurierten benutzerdefinierten URL-Mustern abzugleichen.
Im Folgenden sehen Sie ein einfaches Beispiel dafür, wie Firebase Anfragen mit das repräsentativste automatische URL-Muster für Ihre App ist.
Ihre Anwendung sendet viele Anfragen an URLs wie die folgenden:
example.com/germany/animals/bears
example.com/germany/animals/birds
example.com/germany/cars
Firebase erkennt, dass
example.com/germany/**
ein gängiges Anfragemuster für Ihre App ist, und fügt es Ihrem Projekt als automatisches URL-Muster hinzu.Für alle neuen Anfragen mit Übereinstimmung an dieses URL-Muster fasst Firebase der Anträge unter dem automatischen URL-Muster
example.com/germany/**
.Nach einer Woche gehen die meisten Anfragen für Ihre App an
example.com/germany/animals/bears
undexample.com/germany/animals/birds
. Firebase leitet daraus eine repräsentatives URL-Muster vonexample.com/germany/animals/**
.Bei neuen Anfragen an dieses neue URL-Muster die Anfragen zusammenfasst“ nur unter dem neuen URL-Muster enthalten. Firebase aggregiert weiterhin Daten für Anfragen an
example.com/germany/cars
weniger alsexample.com/germany/**
.In den nächsten Wochen fordert Ihre App jedoch
example.com/germany/animals/bears
undexample.com/germany/animals/birds
erheblich verringern. Firebase stellt fest, dassexample.com/germany/animals/**
ist nicht repräsentativ für die aktuelle Version deiner App des Nutzungsverhaltens, sodass Firebase diese beiden Anfragenexample.com/germany/**
.Firebase aggregiert keine weiteren Anfragedaten gemäß
example.com/germany/animals/**
, weil das nicht mehr die repräsentatives automatisches URL-Muster.
Da der automatische URL-Musterabgleich dynamisch ist, beachten Sie Folgendes:
Übereinstimmungen und aggregierte Daten aus vorherigen Anfragen sind von neuen URL-Mustern nicht betroffen. Firebase aggregiert Anfragedaten nicht rückwirkend neu.
Nur zukünftige Anfragen sind von neuen URL-Mustern betroffen. Firebase-Karten new an das repräsentativste automatische URL-Muster senden. Hinweis: Firebase versucht jedoch, Anfrage-URLs mit konfigurierten benutzerdefinierten URL-Mustern zuerst.
Automatische URL-Muster und zugehörige Daten anzeigen
Firebase zeigt alle URL-Muster und die zugehörigen aggregierten Daten im Der Untertab Netzwerkanfragen der Trace-Tabelle befindet sich am Ende der Dashboard zur Leistungsüberwachung der Firebase-Konsole.
Möglicherweise werden URL-Muster mit dem Label Keine Kategorie angezeigt. Das sind „weite“ automatische URL-Muster, unter denen Firebase Daten für Anfragen zusammenfassen kann, die keinem spezifischeren URL-Muster entsprechen.
Wann die Aufbewahrungsdauer für die unter einem URL-Muster aggregierten Daten endet, löscht Firebase diese Daten aus dem URL-Muster. Wenn alle Daten, die unter einem automatischen URL-Muster zusammengefasst wurden, ablaufen, löscht Firebase dieses URL-Muster aus der Firebase Console.
Benutzerdefinierte URL-Muster
Sie können benutzerdefinierte URL-Muster erstellen, um bestimmte URL-Muster zu überwachen, Firebase erfasst mit den abgeleiteten automatischen URL-Musterabgleich: Sie können beispielsweise ein benutzerdefiniertes URL-Muster verwenden, um Probleme mit einer bestimmten URL oder um eine bestimmte Gruppe von URLs im Zeitverlauf zu überwachen.
Weitere Informationen finden Sie unter Benutzerdefinierte URL-Muster erstellen.
Leistungsdaten erfassen, aufrufen und filtern
Wenn du Leistungsdaten in Echtzeit sehen möchtest, achte darauf, dass deine App eine Performance Max-Kampagne Monitoring SDK-Version, die mit der Datenverarbeitung in Echtzeit kompatibel ist. Weitere Informationen zu Echtzeit-Leistungsdaten
Bestimmte Messwerte in Ihrem Dashboard verfolgen
Wenn Sie wissen möchten, wie sich Ihre wichtigsten Messwerte entwickeln, fügen Sie sie Ihrer Messwerttafel oben in der Dashboard zur Leistungsüberwachung Sie können Regressionen schnell erkennen, indem Sie sich wöchentliche oder überprüfen Sie, ob die letzten Änderungen an Ihrem Code die Leistung verbessern.
Firebase Performance Monitoring-Dashboard“So fügen Sie Ihrem Messwert-Board einen Messwert hinzu:
- Gehen Sie zur Dashboard zur Leistungsüberwachung in der Firebase-Konsole
- Klicken Sie auf eine leere Messwertkarte und wählen Sie dann einen vorhandenen Messwert aus, um ihn Ihrem Board hinzuzufügen.
- Klicken Sie auf auf einer ausgefüllten Messwertkarte für weitere Optionen, z. B. um einen Messwert zu ersetzen oder zu entfernen.
Das Messwert-Board zeigt gesammelte Messwertdaten im Zeitverlauf, sowohl in grafischer Form als auch als numerische Veränderung in Prozent.
Weitere Informationen zur Verwendung des Dashboards
Traces und ihre Daten ansehen
Ihre Traces finden Sie in der Dashboard zur Leistungsüberwachung Scrollen Sie in der Firebase-Konsole nach unten zur Traces-Tabelle und klicken Sie dann auf den entsprechenden Untertab. In der Tabelle werden einige der wichtigsten Messwerte für jeden Trace angezeigt. Sie können die Liste sogar nach den prozentuale Veränderung für einen bestimmten Messwert.
Performance Monitoring bietet in der Firebase-Konsole eine Seite zur Fehlerbehebung, auf der der Messwert hervorgehoben ist. So lassen sich die Auswirkungen von Leistungsproblemen Apps und Nutzer. Sie können die Seite zur Fehlerbehebung verwenden, wenn Sie Leistungsprobleme auftreten, z. B. in folgenden Szenarien:
- Sie wählen relevante Messwerte im Dashboard aus und stellen ein großes Delta fest.
- In der Trace-Tabelle sortieren Sie die Werte so, dass oben die größten Deltas angezeigt werden, und es wird ein signifikante prozentuale Änderung.
- Sie erhalten eine E-Mail-Benachrichtigung über ein Leistungsproblem.
So greifen Sie auf die Seite zur Fehlerbehebung zu:
- Klicken Sie im Messwert-Dashboard auf die Schaltfläche Messwertdetails ansehen.
- Wählen Sie auf einer beliebigen Messwertkarte
Auf der Seite zur Fehlerbehebung werden Informationen zum Messwert angezeigt. die Sie ausgewählt haben. aus. => Details ansehen - Klicken Sie in der Trace-Tabelle auf einen Trace-Namen oder einen beliebigen Messwert in der zugehörigen Zeile. Trace.
- Klicken Sie in einer E-Mail-Benachrichtigung auf Jetzt prüfen.
Wenn Sie in der Tabelle „Traces“ auf einen Trace-Namen klicken, können Sie die Messwerte aufschlüsseln. Klicken Sie auf das
Schaltfläche
- Filtern Sie nach App-Version, um Daten zu einem früheren oder aktuellen Release aufzurufen.
- Filtere nach Gerät, um zu sehen, wie ältere Geräte deine App verwenden
- Filtern Sie nach Land, um sicherzustellen, dass sich der Standort Ihrer Datenbank nicht auf ein bestimmtes Land auswirkt Region
Weitere Informationen über Daten für Ihre Traces.
Nächste Schritte
Weitere Informationen über Attribute verwenden, um Leistungsdaten zu untersuchen
Weitere Informationen zum Überwachen von Leistungsproblemen in der Firebase-Konsole
Benachrichtigungen für nachlassende Netzwerkanfragen einrichten die Leistung Ihrer App zu testen. Sie können beispielsweise eine E-Mail-Benachrichtigung für wenn die Antwortzeit für ein bestimmtes URL-Muster länger als Grenzwert festlegen.
- Sie können detaillierte Berichte zu Nutzersitzungen aufrufen, in denen können Sie einen bestimmten Trace in einem Zeitachsenkontext mit anderen Traces, die während desselben Zeitraums erfasst wurden, Sitzung.