Monitorowanie wydajności zbiera ślady , które pomogą Ci monitorować wydajność aplikacji. Ślad jest raport danych przechwyconych wydajności pomiędzy dwoma punktami w czasie w swojej aplikacji.
Na żądanie sieciowe ślady automatycznie zebrane przez monitorowania wydajności obejmują większość żądań sieciowe dla swojej aplikacji. Jednak niektóre wnioski nie mogą być zgłaszane lub można użyć innej biblioteki, aby żądania sieciowe. W takich przypadkach można użyć API do monitorowania wydajności ręcznie przyrząd niestandardowych żądanie sieciowe śladów . sieciowe zwyczaj żądania ślady są obsługiwane tylko przez Apple i Androida.
Domyślne dane na żądanie zwyczaj sieci śladu są takie same jak te dla żądania śladów sieciowych automatycznie zbierane przez monitorowanie wydajności, a konkretnie czas odpowiedzi, odpowiedzi i poprosić rozmiarze bloku, a sukces tempie. sieciowe zwyczaj żądania śladów nie obsługują dodawania niestandardowych danych.
W kodzie, można zdefiniować początek i koniec żądanie śladu zwyczaj sieciowym za pomocą API dostarczone przez Monitorowanie wydajności SDK.
Sieciowe zwyczaj żądania ślady pojawiają się w konsoli Firebase obok żądań sieciowych, które automatycznie przechwytuje Monitorowanie wydajności (w sieci będzie żądać podrzędną tabeli ślady).
Dodaj niestandardowy sieciowych żądania śladów
Użyj Monitorowanie wydajności HTTPMetric API ( Swift | Obj-C ), aby dodać niestandardowe żądania sieć ślady monitorować konkretne żądania sieciowe.
Aby ręcznie wniosków instrumentem zwyczaj sieciowych w monitorowaniu wydajności, code Dodaj podobny do następującego:
Szybki
guard let metric = HTTPMetric(url: "https://www.google.com", httpMethod: .get) else { return }
metric.start()
guard let url = URL(string: "https://www.google.com") else { return }
let request: URLRequest = URLRequest(url:url)
let session = URLSession(configuration: .default)
let dataTask = session.dataTask(with: request) { (urlData, response, error) in
if let httpResponse = response as? HTTPURLResponse {
metric.responseCode = httpResponse.statusCode
}
metric.stop()
}
dataTask.resume()
Cel C
@property (nonatomic) FIRHTTPMetric *metric;
- (void)beginManualNetworkInstrumentation {
self.metric =
[[FIRHttpMetric alloc] initWithURL:[NSURL URLWithString:@"https://www.google.com"]
HTTPMethod:FIRHTTPMethodGET];
[self.metric start];
NSURLRequest *request =
[NSURLRequest requestWithURL:[NSURL URLWithString:@"https://www.google.com"]];
NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request
delegate:self];
[connection resume];
}
- (void)connection:(NSURLConnection *)connection
didReceiveResponse:(NSURLResponse *) response {
NSHTTPURLResponse* httpResponse = (NSHTTPURLResponse*)response
self.metric.responseCode = httpResponse.statusCode;
[self.metric stop];
}
Sieciowe zwyczaj żądania ślady również wspierać dodawanie niestandardowych atrybutów ( Swift | Obj-C ), ale nie niestandardowe dane.
Następne kroki
- Skonfigurować alerty dotyczące zapytań sieciowych, które pogarszają wydajność aplikacji. Na przykład, można skonfigurować powiadomienia dla swojego zespołu, jeżeli czas reakcji dla wzoru określonego adresu URL przekracza próg, który można ustawić.