RequestFinishedInfo.Metrics

abstract class RequestFinishedInfo.Metrics


Dane zebrane w ramach jednego żądania. Większość tych danych to sygnatury czasowe zdarzeń w trakcie trwania żądania, które można wykorzystać do utworzenia szczegółowej osi czasu na potrzeby analizowania wydajności.

Wydarzenia występują w tej kolejności:

  1. request start
  2. DNS start
  3. DNS end
  4. connect start
  5. SSL start
  6. SSL end
  7. connect end
  8. sending start
  9. sending end
  10. response start
  11. request end
Czasy rozpoczęcia są podawane jako czas, w którym żądanie zaczęło blokować zdarzenie, a nie czas, w którym zdarzenie faktycznie wystąpiło. Wyjątkiem są rozpoczęcie i zakończenie wysyłania powiadomień push. Jeśli dane nie są istotne lub są niedostępne (np. gdy żądanie zostało zakończone przed osiągnięciem tego etapu), czas rozpoczęcia i zakończenia będzie oznaczony symbolem null. Jeśli nie poświęcono czasu na blokowanie wydarzenia, godzina rozpoczęcia i zakończenia będzie taka sama.

Jeśli zegar systemowy zostanie dostosowany podczas żądania, niektóre wartości java.util.Date mogą się z nim nie zgadzać. Sygnatury czasowe są rejestrowane za pomocą zegara, który na pewno nie będzie się cofać. Wszystkie sygnatury czasowe są prawidłowe w stosunku do zegara systemowego w momencie rozpoczęcia żądania, a różnica między dwiema sygnaturami czasowymi będzie prawidłową różnicą między zdarzeniami. Aby zachować tę właściwość, sygnatury czasowe zdarzeń innych niż rozpoczęcie żądania nie muszą odpowiadać zegarowi systemowemu w czasie, który reprezentują.

Większość danych o czasie pochodzi z interfejsu LoadTimingInfo, który zawiera informacje o .

Podsumowanie

Konstruktory publiczne

Funkcje publiczne

abstract Date?

Zwraca czas zakończenia nawiązywania połączenia.

abstract Date?

Zwraca czas rozpoczęcia nawiązywania połączenia.

abstract Date?

Zwraca czas zakończenia wyszukiwania DNS.

abstract Date?

Zwraca czas rozpoczęcia wyszukiwania DNS.

abstract Date?

Zwraca czas, w którym został odebrany ostatni bajt komunikatu push z serwera HTTP/2.

abstract Date?

Zwraca czas otrzymania pierwszego bajta komunikatu push z serwera HTTP/2.

abstract Long?

Zwraca łączną liczbę bajtów odebranych w warstwie transportowej sieci lub null, jeśli nie zostały zebrane.

abstract Date?

Zwraca czas zakończenia żądania.

abstract Date?

Zwraca czas rozpoczęcia żądania.

abstract Date?

Zwraca czas otrzymania końca nagłówków odpowiedzi.

abstract Date?

Zwraca czas zakończenia wysyłania żądania.

abstract Date?

Zwraca czas rozpoczęcia wysyłania żądania.

abstract Long?

Zwraca łączną liczbę bajtów wysłanych przez warstwę transportową sieci lub wartość null, jeśli nie są zbierane.

abstract Boolean

Zwraca informację, czy gniazdo zostało ponownie użyte z poprzedniego żądania.

abstract Date?

Zwraca czas zakończenia uzgadniania połączenia SSL.

abstract Date?

Zwraca czas rozpoczęcia uzgadniania protokołu SSL.

abstract Long?

Zwraca liczbę milisekund między rozpoczęciem a zakończeniem żądania, w tym nieudanego lub anulowanego, albo null, jeśli nie zebrano danych.

abstract Long?

Zwraca liczbę milisekund między zainicjowaniem żądania a pierwszym bajtem nagłówków odpowiedzi lub null, jeśli nie zebrano tych danych.

Konstruktory publiczne

Wskaźniki

Metrics()

Funkcje publiczne

getConnectEnd

abstract fun getConnectEnd(): Date?

Zwraca czas zakończenia nawiązywania połączenia.

Zwraca
Date?

java.util.Date – moment zakończenia nawiązywania połączenia po nawiązaniu połączenia TCP i zakończeniu uzgadniania SSL (jeśli używasz protokołu HTTPS). W przypadku QUIC 0-RTT jest to czas potwierdzenia uzgadniania połączenia, który może nastąpić później niż getSendingStart. null jeśli gniazdo zostało ponownie użyte (patrz getSocketReused).

getConnectStart

abstract fun getConnectStart(): Date?

Zwraca czas rozpoczęcia nawiązywania połączenia.

Zwraca
Date?

java.util.Date – moment rozpoczęcia nawiązywania połączenia, zwykle po zakończeniu rozpoznawania nazw DNS. null jeśli gniazdo zostało ponownie użyte (patrz getSocketReused).

getDnsEnd

abstract fun getDnsEnd(): Date?

Zwraca czas zakończenia wyszukiwania DNS. Zarówno ta funkcja, jak i funkcja getDnsStart zwracają wartości inne niż null niezależnie od tego, czy wynik pochodzi z serwera DNS, czy z pamięci podręcznej.

Zwraca
Date?

java.util.Date – moment zakończenia wyszukiwania DNS. null jeśli gniazdo zostało ponownie użyte (patrz getSocketReused).

getDnsStart

abstract fun getDnsStart(): Date?

Zwraca czas rozpoczęcia wyszukiwania DNS. Zarówno ta funkcja, jak i funkcja getDnsEnd zwracają wartości inne niż null niezależnie od tego, czy wynik pochodzi z serwera DNS, czy z pamięci podręcznej.

Zwraca
Date?

java.util.Date – moment rozpoczęcia wyszukiwania DNS. null jeśli gniazdo zostało ponownie użyte (patrz getSocketReused).

getPushEnd

abstract fun getPushEnd(): Date?

Zwraca czas, w którym został odebrany ostatni bajt komunikatu push z serwera HTTP/2.

Zwraca
Date?

java.util.Date – moment otrzymania ostatniego bajtu komunikatu push z serwera HTTP/2. null jeśli nie jest używane wypychanie serwera.

getPushStart

abstract fun getPushStart(): Date?

Zwraca czas otrzymania pierwszego bajta komunikatu push z serwera HTTP/2.

Zwraca
Date?

java.util.Date – moment otrzymania pierwszego bajtu komunikatu push z serwera HTTP/2. null jeśli nie jest używane wypychanie serwera.

getReceivedByteCount

abstract fun getReceivedByteCount(): Long?

Zwraca łączną liczbę bajtów odebranych w warstwie transportowej sieci lub null, jeśli nie zostały zebrane. Liczba bajtów nie obejmuje żadnych poprzednich przekierowań.

getRequestEnd

abstract fun getRequestEnd(): Date?

Zwraca czas zakończenia żądania.

Zwraca
Date?

java.util.Date, która oznacza zakończenie żądania.

getRequestStart

abstract fun getRequestStart(): Date?

Zwraca czas rozpoczęcia żądania.

Zwraca
Date?

java.util.Date – moment rozpoczęcia żądania reklamy natywnej. Sygnatura czasowa będzie zgodna z zegarem systemowym w momencie, którego dotyczy.

getResponseStart

abstract fun getResponseStart(): Date?

Zwraca czas otrzymania końca nagłówków odpowiedzi.

Zwraca
Date?

java.util.Date, która oznacza moment otrzymania końca nagłówków odpowiedzi.

getSendingEnd

abstract fun getSendingEnd(): Date?

Zwraca czas zakończenia wysyłania żądania.

Zwraca
Date?

java.util.Date – oznacza zakończenie wysyłania treści żądania HTTP. (Treść żądania jest wysyłana po wysłaniu nagłówków żądania).

getSendingStart

abstract fun getSendingStart(): Date?

Zwraca czas rozpoczęcia wysyłania żądania.

Zwraca
Date?

java.util.Date – moment rozpoczęcia wysyłania nagłówków żądania HTTP.

getSentByteCount

abstract fun getSentByteCount(): Long?

Zwraca łączną liczbę bajtów wysłanych przez warstwę transportową sieci lub wartość null, jeśli nie są zbierane.

getSocketReused

abstract fun getSocketReused(): Boolean

Zwraca informację, czy gniazdo zostało ponownie użyte z poprzedniego żądania. W przypadku protokołów HTTP/2 lub QUIC, jeśli strumienie są multipleksowane w ramach jednego połączenia, funkcja zwraca wartość true dla wszystkich strumieni po pierwszym.

Zwraca
Boolean

czy ta prośba ponownie wykorzystała gniazdo z poprzedniej prośby. Gdy true, czasy DNS, połączenia i SSL będą null.

getSslEnd

abstract fun getSslEnd(): Date?

Zwraca czas zakończenia uzgadniania połączenia SSL. W przypadku QUIC będzie to ten sam czas co getConnectEnd.

Zwraca
Date?

java.util.Date – oznacza zakończenie uzgadniania połączenia SSL. null jeśli protokół SSL nie jest używany lub gniazdo zostało ponownie użyte (patrz getSocketReused).

getSslStart

abstract fun getSslStart(): Date?

Zwraca czas rozpoczęcia uzgadniania protokołu SSL. W przypadku QUIC będzie to ten sam czas co getConnectStart.

Zwraca
Date?

java.util.Date – moment rozpoczęcia inicjowania połączenia SSL. null jeśli protokół SSL nie jest używany lub gniazdo zostało ponownie użyte (patrz getSocketReused).

getTotalTimeMs

abstract fun getTotalTimeMs(): Long?

Zwraca liczbę milisekund między rozpoczęciem a zakończeniem żądania, w tym nieudanego lub anulowanego, albo null, jeśli nie zebrano danych. TODO(mgersh): Remove once new API works http://crbug.com/629194

getTtfbMs

abstract fun getTtfbMs(): Long?

Zwraca liczbę milisekund między zainicjowaniem żądania a pierwszym bajtem nagłówków odpowiedzi lub null, jeśli nie zebrano tych danych. TODO(mgersh): Remove once new API works http://crbug.com/629194