Performance Monitoring ट्रेस इकट्ठा करता है, ताकि आप अपने ऐप्लिकेशन की परफ़ॉर्मेंस पर नज़र रख सकें. ऐप्लिकेशन ट्रेस समय के दौरान दो बिंदुओं के बीच कैप्चर किए गए परफ़ॉर्मेंस डेटा की एक रिपोर्ट है आपका ऐप्लिकेशन.
कॉन्टेंट बनाने नेटवर्क अनुरोध के ट्रेस Performance Monitoring अपने-आप इकट्ठा करते हैं अपने ऐप्लिकेशन के ज़्यादातर नेटवर्क अनुरोध शामिल करते हैं. हालांकि, हो सकता है कि कुछ अनुरोध रिपोर्ट नहीं की जाती या नेटवर्क के अनुरोध करने के लिए किसी दूसरी लाइब्रेरी का इस्तेमाल किया जा सकता है. इनमें मामलों में, Performance Monitoring एपीआई का इस्तेमाल मैन्युअल तरीके से किया जा सकता है कस्टम नेटवर्क अनुरोध ट्रेस. कस्टम नेटवर्क अनुरोध के ट्रेस सिर्फ़ हैं Apple और Android ऐप्लिकेशन पर काम करती है.
कस्टम नेटवर्क अनुरोध ट्रेस के लिए डिफ़ॉल्ट मेट्रिक वही होती हैं जो खास तौर पर, नेटवर्क अनुरोध को Performance Monitoring की मदद से अपने-आप इकट्ठा किया जाता है रिस्पॉन्स का समय, रिस्पॉन्स और पेलोड का साइज़, और सक्सेस रेट के लिए अनुरोध करना. अपने हिसाब से चुनी गई रेंज नेटवर्क अनुरोध के ट्रेस, कस्टम मेट्रिक जोड़ने की सुविधा नहीं देते हैं.
अपने कोड में, कस्टम नेटवर्क अनुरोध की शुरुआत और आखिर में जानकारी दी जाती है Performance Monitoring SDK टूल से मिले एपीआई का इस्तेमाल करके ट्रेस करें.
कस्टम नेटवर्क अनुरोध के ट्रेस, Firebase कंसोल में ऐसे नेटवर्क अनुरोध जिन्हें Performance Monitoring अपने-आप कैप्चर करता है (ट्रेस टेबल के नेटवर्क अनुरोध सबटैब में).
नेटवर्क अनुरोध के कस्टम ट्रेस जोड़ें
Performance Monitoring HTTPMetric API का इस्तेमाल करें (स्विफ़्ट | ओबीजे-सी) का इस्तेमाल किया जा सकता है.
Performance Monitoring में कस्टम नेटवर्क अनुरोधों को मैन्युअल तरीके से भेजने के लिए, मिलता-जुलता कोड जोड़ें इन सुझावों को लागू करता है:
Swift
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()
Objective-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];
}
कस्टम नेटवर्क अनुरोध ट्रेस भी कस्टम एट्रिब्यूट जोड़ने की सुविधा देते हैं (Swift | ओबीजे-सी) कस्टम मेट्रिक नहीं.
अगले चरण
- खराब नेटवर्क अनुरोधों के लिए सूचनाएं सेट अप करें परफ़ॉर्मेंस को बेहतर बनाना है. उदाहरण के लिए, आप तो आपकी टीम, अगर किसी खास यूआरएल पैटर्न के लिए जवाब देने का समय जिसे आपने सेट किया है.