Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Dodaj niestandardowe monitorowanie dla określonych żądań sieciowych (aplikacje Apple i Android)

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Monitorowanie wydajności zbiera ślady , aby pomóc w monitorowaniu wydajności aplikacji. Ślad to raport danych o wydajności przechwyconych między dwoma punktami w czasie w aplikacji.

Ślady żądań sieciowych zbierane automatycznie przez Performance Monitoring obejmują większość żądań sieciowych dla Twojej aplikacji. Jednak niektóre żądania mogą nie być zgłaszane lub możesz użyć innej biblioteki do tworzenia żądań sieciowych. W takich przypadkach można użyć interfejsu API Performance Monitoring do ręcznego instrumentowania niestandardowych śladów żądań sieciowych . Niestandardowe śledzenie żądań sieciowych są obsługiwane tylko w przypadku aplikacji Apple i Android.

Domyślne metryki dla niestandardowego śledzenia żądań sieciowych są takie same, jak te dla śledzenia żądań sieciowych automatycznie zbieranych przez monitorowanie wydajności, w szczególności czas odpowiedzi, rozmiar ładunku odpowiedzi i żądania oraz wskaźnik sukcesu. Niestandardowe ślady żądań sieciowych nie obsługują dodawania niestandardowych metryk.

W swoim kodzie definiujesz początek i koniec niestandardowego śledzenia żądania sieciowego za pomocą interfejsów API udostępnianych przez zestaw SDK monitorowania wydajności.

Niestandardowe ślady żądań sieciowych pojawiają się w konsoli Firebase obok żądań sieciowych, które funkcja Performance Monitoring przechwytuje automatycznie (na podkarcie Żądania sieciowe w tabeli śladów).

Dodaj niestandardowe ślady żądań sieciowych

Użyj interfejsu API Performance Monitoring HTTPMetric ( Swift | Obj-C ), aby dodać niestandardowe ślady żądań sieciowych w celu monitorowania określonych żądań sieciowych.

Aby ręcznie instrumentować niestandardowe żądania sieciowe w Monitorowaniu wydajności, dodaj kod podobny do następującego:

Szybki

Uwaga: ten produkt Firebase nie jest dostępny w systemach docelowych macOS, Mac Catalyst i watchOS.
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

Uwaga: ten produkt Firebase nie jest dostępny w systemach docelowych macOS, Mac Catalyst i watchOS.
@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];
}

Niestandardowe ślady żądań sieciowych obsługują również dodawanie niestandardowych atrybutów ( Swift | Obj-C ), ale nie niestandardowych metryk.

Następne kroki

  • Skonfiguruj alerty dla żądań sieciowych, które obniżają wydajność Twojej aplikacji. Możesz na przykład skonfigurować alert e-mail dla swojego zespołu, jeśli czas odpowiedzi dla określonego wzorca adresu URL przekroczy ustawiony przez Ciebie próg.