Giám sát hiệu suất thu thập dấu vết để giúp bạn theo dõi hiệu suất của ứng dụng. Dấu vết là báo cáo về dữ liệu hiệu suất được ghi lại giữa hai thời điểm trong ứng dụng của bạn.
Dấu vết yêu cầu mạng do Giám sát hiệu suất thu thập tự động bao gồm hầu hết các yêu cầu mạng cho ứng dụng của bạn. Tuy nhiên, một số yêu cầu có thể không được báo cáo hoặc bạn có thể sử dụng một thư viện khác để thực hiện các yêu cầu mạng. Trong những trường hợp này, bạn có thể sử dụng API giám sát hiệu suất để ghi lại dấu vết yêu cầu mạng tùy chỉnh theo cách thủ công . Dấu vết yêu cầu mạng tùy chỉnh chỉ được hỗ trợ cho ứng dụng Apple và Android.
Các chỉ số mặc định cho theo dõi yêu cầu mạng tùy chỉnh giống như các chỉ số cho theo dõi yêu cầu mạng do Giám sát hiệu suất tự động thu thập, cụ thể là thời gian phản hồi, kích thước tải trọng phản hồi và yêu cầu cũng như tỷ lệ thành công. Dấu vết yêu cầu mạng tùy chỉnh không hỗ trợ thêm số liệu tùy chỉnh.
Trong mã của mình, bạn xác định phần đầu và phần cuối của theo dõi yêu cầu mạng tùy chỉnh bằng cách sử dụng API do SDK giám sát hiệu suất cung cấp.
Dấu vết yêu cầu mạng tùy chỉnh xuất hiện trong bảng điều khiển Firebase cùng với các yêu cầu mạng mà Giám sát hiệu suất tự động nắm bắt (trong tab phụ Yêu cầu mạng của bảng dấu vết).
Thêm dấu vết yêu cầu mạng tùy chỉnh
Sử dụng API HTTPMetric giám sát hiệu suất ( Swift | Obj-C ) để thêm dấu vết yêu cầu mạng tùy chỉnh nhằm giám sát các yêu cầu mạng cụ thể.
Để thiết lập thủ công các yêu cầu mạng tùy chỉnh trong Giám sát hiệu suất, hãy thêm mã tương tự như sau:
Nhanh
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()
Mục tiêu-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];
}
Dấu vết yêu cầu mạng tùy chỉnh cũng hỗ trợ thêm thuộc tính tùy chỉnh ( Swift | Obj-C ) nhưng không hỗ trợ số liệu tùy chỉnh.
Bước tiếp theo
- Thiết lập cảnh báo cho các yêu cầu mạng đang làm giảm hiệu suất của ứng dụng của bạn. Ví dụ: bạn có thể định cấu hình cảnh báo qua email cho nhóm của mình nếu thời gian phản hồi cho một mẫu URL cụ thể vượt quá ngưỡng mà bạn đã đặt.