Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

विशिष्ट नेटवर्क अनुरोधों के लिए कस्टम निगरानी जोड़ें (Apple और Android ऐप्स)

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

प्रदर्शन निगरानी आपके ऐप के प्रदर्शन पर नज़र रखने में आपकी मदद करने के लिए ट्रेस एकत्र करती है। ट्रेस आपके ऐप में दो समय के बीच कैप्चर किए गए प्रदर्शन डेटा की रिपोर्ट है।

प्रदर्शन निगरानी द्वारा स्वचालित रूप से एकत्र किए गए नेटवर्क अनुरोध ट्रेस में आपके ऐप के लिए अधिकांश नेटवर्क अनुरोध शामिल होते हैं। हालाँकि, कुछ अनुरोधों की रिपोर्ट नहीं की जा सकती है या आप नेटवर्क अनुरोध करने के लिए किसी भिन्न लाइब्रेरी का उपयोग कर सकते हैं। इन मामलों में, आप कस्टम नेटवर्क अनुरोध ट्रेस को मैन्युअल रूप से साधने के लिए प्रदर्शन निगरानी API का उपयोग कर सकते हैं। कस्टम नेटवर्क अनुरोध ट्रेस केवल Apple और Android ऐप्स के लिए समर्थित हैं।

कस्टम नेटवर्क अनुरोध ट्रेस के लिए डिफ़ॉल्ट मेट्रिक्स प्रदर्शन मॉनिटरिंग द्वारा स्वचालित रूप से एकत्र किए गए नेटवर्क अनुरोध ट्रेस के समान होते हैं, विशेष रूप से प्रतिक्रिया समय, प्रतिक्रिया और अनुरोध पेलोड आकार, और सफलता दर। कस्टम नेटवर्क अनुरोध ट्रेस कस्टम मीट्रिक जोड़ने का समर्थन नहीं करते हैं।

अपने कोड में, आप प्रदर्शन निगरानी एसडीके द्वारा प्रदान किए गए एपीआई का उपयोग करके एक कस्टम नेटवर्क अनुरोध ट्रेस की शुरुआत और अंत को परिभाषित करते हैं।

कस्टम नेटवर्क अनुरोध ट्रेस फायरबेस कंसोल में नेटवर्क अनुरोधों के साथ दिखाई देते हैं जिन्हें प्रदर्शन निगरानी स्वचालित रूप से कैप्चर करती है (ट्रेस तालिका के नेटवर्क अनुरोध उपटैब में)।

कस्टम नेटवर्क अनुरोध ट्रेस जोड़ें

विशिष्ट नेटवर्क अनुरोधों की निगरानी के लिए कस्टम नेटवर्क अनुरोध ट्रेस जोड़ने के लिए प्रदर्शन निगरानी HttpMetric API का उपयोग करें।

प्रदर्शन निगरानी में कस्टम नेटवर्क अनुरोधों को मैन्युअल रूप से लिखने के लिए, निम्न के जैसा कोड जोड़ें:

Java

HttpMetric metric =
        FirebasePerformance.getInstance().newHttpMetric("https://www.google.com",
                FirebasePerformance.HttpMethod.GET);
final URL url = new URL("https://www.google.com");
metric.start();
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "application/json");
try {
    DataOutputStream outputStream = new DataOutputStream(conn.getOutputStream());
    outputStream.write(data);
} catch (IOException ignored) {
}
metric.setRequestPayloadSize(data.length);
metric.setHttpResponseCode(conn.getResponseCode());
printStreamContent(conn.getInputStream());

conn.disconnect();
metric.stop();

Kotlin+KTX

val url = URL("https://www.google.com")
val metric = Firebase.performance.newHttpMetric("https://www.google.com",
        FirebasePerformance.HttpMethod.GET)
metric.trace {
    val conn = url.openConnection() as HttpURLConnection
    conn.doOutput = true
    conn.setRequestProperty("Content-Type", "application/json")
    try {
        val outputStream = DataOutputStream(conn.outputStream)
        outputStream.write(data)
    } catch (ignored: IOException) {
    }

    // Set HttpMetric attributes
    setRequestPayloadSize(data.size.toLong())
    setHttpResponseCode(conn.responseCode)

    printStreamContent(conn.inputStream)

    conn.disconnect()
}

कस्टम नेटवर्क अनुरोध ट्रेस भी कस्टम विशेषताओं को जोड़ने का समर्थन करते हैं लेकिन कस्टम मीट्रिक नहीं।

अगले कदम

  • नेटवर्क अनुरोधों के लिए अलर्ट सेट करें जो आपके ऐप के प्रदर्शन को खराब कर रहे हैं। उदाहरण के लिए, आप अपनी टीम के लिए एक ईमेल अलर्ट कॉन्फ़िगर कर सकते हैं यदि किसी विशिष्ट URL पैटर्न के लिए प्रतिक्रिया समय आपके द्वारा निर्धारित सीमा से अधिक हो जाता है।