In diesem Leitfaden wird beschrieben, wie Sie mit analytics.js Zeiträume messen.
Übersicht
Studien haben gezeigt, dass eine kürzere Seitenladezeit die Nutzerfreundlichkeit der Website insgesamt verbessert. Google Analytics bietet eine Reihe von leistungsfähigen Berichten, mit denen Seitenladezeiten automatisch erfasst und in Berichten dargestellt werden. Es ist jedoch auch möglich, benutzerdefinierte Timing-Informationen zu verwenden, um die Leistung speziell für Ihre Website zu messen.
Mit Nutzertimings können Entwickler Zeiträume mithilfe der analytics.js-Bibliothek messen. Dies ist besonders nützlich für Entwickler, um die Latenz oder die Zeit zu messen, die mit dem Erstellen von AJAX-Anfragen und dem Laden von Webressourcen verbracht wird.
Implementierung
Treffer mit Nutzertiming können mit dem Befehl send
gesendet und als hitType auf timing
festgelegt werden. Der Befehl send
hat die folgende Signatur für den Treffertyp timing
:
ga('send', 'timing',[timingCategory]
,[timingVar]
,[timingValue]
,[timingLabel]
, [fieldsObject]);
Felder für das Nutzertiming
In der folgenden Tabelle werden die Felder für das Nutzertiming zusammengefasst:
Feldname | Werttyp | Required | Beschreibung |
---|---|---|---|
timingCategory |
Text | ja | Ein String zum Kategorisieren aller Variablen für das Nutzertiming in logische Gruppen (z.B. 'JS Dependencies' ). |
timingVar |
Text | ja | Ein String zur Identifizierung der aufgezeichneten Variablen (z.B. 'load' ). |
timingValue |
integer | ja | Die Anzahl der Millisekunden, die vergangen sind, um Berichte an Google Analytics zu senden (z.B. 20 ). |
timingLabel |
Text | Nein | Ein String, mit dem Sie die Nutzertimings in den Berichten flexibel visualisieren können (z.B. 'Google CDN' ). |
Beispiele:
Mit dem folgenden Befehl wird ein Nutzertiming an Google Analytics gesendet, das angibt, dass 3.549 Millisekunden benötigt wurden, bis die aktuelle Webseite alle externen JavaScript-Abhängigkeiten geladen hat:
ga('send', 'timing', 'JS Dependencies', 'load', 3549);
Wie bei allen send
-Befehlen können die in den Convenience-Parametern übergebenen Felder auch in der fieldsObject
angegeben werden. Der obige Befehl könnte so geschrieben werden:
ga('send', {
hitType: 'timing',
timingCategory: 'JS Dependencies',
timingVar: 'load',
timingValue: 3549
});
Zeit wird gemessen
Beim Senden von Daten zum Nutzertiming geben Sie die Anzahl der Millisekunden an, die im Parameter timingValue
aufgewendet werden. Es bleibt Ihnen überlassen, Code zu schreiben, um diesen Zeitraum zu erfassen.
Am einfachsten ist es, einen Zeitstempel am Anfang eines Zeitraums zu erstellen und einen weiteren Zeitstempel am Ende dieses Zeitraums. Dann kannst du den Unterschied zwischen den beiden Zeitstempeln verwenden, um Zeit zu verbringen.
Die meisten modernen Browser unterstützen die Navigation Timing API, die Methoden für das window.performance-Objekt zur Messung der Leistung von Webseiten durch hochauflösende Zeit enthält.
Im folgenden Beispiel wird die Methode performance.now()
verwendet, die die Zeit zurückgibt, die seit dem ersten Laden der Seite vergangen ist:
// Feature detects Navigation Timing API support.
if (window.performance) {
// Gets the number of milliseconds since page load
// (and rounds the result since the value must be an integer).
var timeSincePageLoad = Math.round(performance.now());
// Sends the timing hit to Google Analytics.
ga('send', 'timing', 'JS Dependencies', 'load', timeSincePageLoad);
}
Hinweise zu Stichproben
In Google Analytics werden die Treffer während der Verarbeitung analysiert. So wird sichergestellt, dass die Systemressourcen für diese Funktion richtig verteilt werden.
Die Häufigkeit, mit der Treffer von Stichproben erfasst werden, hängt von der Gesamtzahl der Seitenaufrufe ab, die am Vortag für die Property erfasst wurden. In der folgenden Tabelle sehen Sie, wie die Rate für die Stichprobenerhebung festgelegt wird:
Trefferanzahl aller Seitenaufrufe (Vortag) | Maximale Anzahl von Timing-Treffern, die verarbeitet werden |
---|---|
0–1.000 | 100 |
1.000–100.000 | 10% der Gesamtzahl von Treffern für Seitenaufrufe |
100.000–1.000.000 | 10.000 |
Mehr als 1.000.000 | 1% der Treffer für Seitenaufrufe insgesamt |
Anzahl der gesendeten Treffer beschränken
Damit keine Google Analytics-Treffer gesendet werden, die nicht verarbeitet werden, können Sie in analytics.js den Prozentsatz der Treffer steuern, die über die Konfigurationsoptionen sampleRate
und siteSpeedSampleRate
gesendet werden. Standardmäßig sind diese Felder auf 100% bzw. 1 % eingestellt. Sie können diese Werte anpassen, um die Anzahl der Timing-Treffer, die Google Analytics basierend auf Ihrer durchschnittlichen Anzahl von Seitenaufrufen pro Tag verarbeitet, näher zu bestimmen.