Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Wenn ein Benutzer in einer herkömmlichen mehrseitigen Anwendung das Laden neuer Inhalte anfordert, fordert der Benutzer eigentlich eine neue HTML-Seite vom Server an. Infolgedessen erfasst der CloudWatch RUM-Webclient die Ladezeiten anhand der regulären Performance-API-Metriken.
Einseitige Webanwendungen verwenden JavaScript jedoch Ajax, um die Benutzeroberfläche zu aktualisieren, ohne eine neue Seite vom Server zu laden. Single-Page-Aktualisierungen werden nicht von der Browser-Timing-API erfasst, sondern verwenden stattdessen das Routenänderungs-Timing.
CloudWatch RUM unterstützt die Überwachung sowohl ganzer Seitenladevorgänge vom Server als auch einzelner Seitenaktualisierungen mit den folgenden Unterschieden:
Für das Routenänderungs-Timing gibt es keine browserseitig bereitgestellten Metriken wie
tlsTime
undtimeToFirstByte
.Beim Routenänderungs-Timing hat das Feld
initiatorType
den Wertroute_change
.
Der CloudWatch RUM-Webclient überwacht Benutzerinteraktionen, die zu einer Änderung der Route führen können, und wenn eine solche Benutzerinteraktion aufgezeichnet wird, zeichnet der Webclient einen Zeitstempel auf. Dann beginnt das Routenänderungs-Timing, wenn die beiden folgenden Punkte zutreffen:
Für die Routenänderung wurde eine Browserverlaufs-API verwendet (mit Ausnahme der Browserschaltflächen für „Weiter“ und „Zurück“).
Der zeitliche Abstand zwischen dem Zeitpunkt der Routenänderungserkennung und dem Zeitstempel der letzten Benutzerinteraktion beträgt weniger als 1 000 ms. Dadurch werden Datenverzerrungen vermieden.
Das gestartete Routenänderungs-Timing wird abgeschlossen, wenn keine laufenden AJAX-Anforderungen und DOM-Mutationen vorhanden sind. Anschließend wird der Zeitstempel der letzten abgeschlossenen Aktivität als Abschlusszeitstempel verwendet.
Für das Routenänderungs-Timing tritt ein Timeout auf, wenn AJAX-Anforderungen oder DOM-Mutationen länger als 10 Sekunden dauern (Standardeinstellung). In diesem Fall zeichnet der CloudWatch RUM-Webclient das Timing für diese Routenänderung nicht mehr auf.
Die Dauer eines Routenänderungsereignisses wird somit wie folgt berechnet:
(time of latest completed activity) - (latest user interaction timestamp)