Z tego przewodnika dowiesz się, jak mierzyć okresy za pomocą tagu analytics.js.
Przegląd
Badania wykazały, że skrócenie czasu wczytywania strony poprawia ogólne wrażenia użytkownika. Google Analytics udostępnia wiele zaawansowanych raportów, które automatycznie mierzą czas wczytywania strony i generują raporty. Możesz jednak mierzyć niestandardowe informacje o czasie, by mierzyć skuteczność konkretnej witryny.
Czasy użytkownika pozwalają programistom mierzyć okresy za pomocą biblioteki analytics.js. Jest to szczególnie przydatne dla deweloperów przy mierzeniu czasu oczekiwania, czyli czasu poświęcanego na tworzenie żądań AJAX i wczytywanie zasobów internetowych.
Implementacja
Działania związane z czasem działań użytkownika można wysyłać za pomocą polecenia send
, podając hitType o wartości timing
. Polecenie send
ma taki podpis dla typu działania timing
:
ga('send', 'timing',[timingCategory]
,[timingVar]
,[timingValue]
,[timingLabel]
, [fieldsObject]);
Pola czasu użytkownika
Tabela poniżej zawiera podsumowanie pól czasu użytkownika:
Nazwa pola | Typ wartości | Wymagane | Opis |
---|---|---|---|
timingCategory |
plik tekstowy, | tak | Ciąg tekstowy służący do kategoryzowania wszystkich zmiennych czasu użytkownika w grupy logiczne (np. 'JS Dependencies' ). |
timingVar |
plik tekstowy, | tak | Ciąg znaków identyfikujący zarejestrowaną zmienną (np. 'load' ). |
timingValue |
Liczba całkowita | tak | Liczba milisekund, które upływają w czasie raportowania do Google Analytics (np. 20 ). |
timingLabel |
plik tekstowy, | nie | Ciąg znaków, którego można używać, aby zwiększyć elastyczność w wizualizowaniu czasu działań użytkownika w raportach (np. 'Google CDN' ). |
Przykłady:
To polecenie wysyła do Google Analytics działanie czasowe użytkownika, wskazujące, że załadowanie wszystkich zewnętrznych zależności JavaScript od bieżącej strony internetowej trwało 3549 milisekund:
ga('send', 'timing', 'JS Dependencies', 'load', 3549);
Pamiętaj, że tak jak w przypadku wszystkich poleceń send
, pola przekazywane w parametrach wygody możesz też określać w polu fieldsObject
. Powyższe polecenie można napisać ponownie w takiej postaci:
ga('send', {
hitType: 'timing',
timingCategory: 'JS Dependencies',
timingVar: 'load',
timingValue: 3549
});
Mierzenie czasu
Wysyłając dane o czasie działania użytkownika, za pomocą parametru timingValue
określasz czas w milisekundach. Musisz napisać kod, który pozwoli uchwycić ten okres.
Najprostszym sposobem jest utworzenie sygnatury czasowej na początku przedziału czasu i kolejnej na końcu okresu. Następnie możesz porównać różnicę między tymi sygnaturami czasowymi, aby poznać czas.
Większość współczesnych przeglądarek obsługuje interfejs Navigation Timing API, który obejmuje metody wykorzystujące obiekt window.performance do pomiaru wydajności stron internetowych na podstawie danych o czasie w wysokiej rozdzielczości.
W tym przykładzie użyto metody performance.now()
, która zwraca czas, który upłynął od rozpoczęcia wczytywania strony:
// 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);
}
Uwagi na temat próbkowania
Google Analytics będzie próbkować trafienia w czasie podczas przetwarzania, aby zapewnić równomierny rozkład zasobów systemowych tej funkcji.
Częstotliwość próbkowania działań w czasie jest określana na podstawie łącznej liczby działań związanych z odsłonami, które miały miejsce poprzedniego dnia w przypadku danej usługi. W tabeli poniżej opisujemy, jak określa się częstotliwość próbkowania czasowego:
Łączna liczba działań odsłon (poprzedni dzień) | Maksymalna liczba działań czasowych, które zostaną przetworzone |
---|---|
0–1 tys. | 100 |
1000–100 000 | 10% łącznej liczby odsłon strony |
100 000–1 000 000 | 10 000 |
1 000 000+ | 1% łącznej liczby odsłon |
Ograniczenie liczby wysyłanych działań
Aby uniknąć wysyłania działań Google Analytics, które nie będą przetwarzane, tag analytics.js umożliwia kontrolowanie odsetka działań wysyłanych za pomocą opcji konfiguracji sampleRate
i siteSpeedSampleRate
. Domyślnie pola te mają wartości odpowiednio 100% i 1%. Możesz dostosować te wartości, aby dokładniej określić liczbę działań, które Google Analytics przetworzy na podstawie średniej dziennej liczby odsłon.