नेटवर्क अनुरोध डेटा एग्रीगेशन को पसंद के मुताबिक बनाएं

Firebase Performance Monitoring, नेटवर्क के एक जैसे अनुरोधों के लिए डेटा को अपने-आप इकट्ठा करता है. इससे आपको नेटवर्क के अनुरोध की परफ़ॉर्मेंस के रुझानों को समझने में मदद मिलती है.

हालांकि, कभी-कभी आपको यह तय करना पड़ता है कि Firebase, नेटवर्क अनुरोध के डेटा को किस तरह इकट्ठा करे. इससे आपको अपने ऐप्लिकेशन के इस्तेमाल के उदाहरणों को बेहतर तरीके से समझने में मदद मिलती है. हम दो तरीके उपलब्ध कराते हैं, जिनकी मदद से नेटवर्क के अनुरोधों के लिए डेटा एग्रीगेशन को पसंद के मुताबिक बनाया जा सकता है: कस्टम यूआरएल पैटर्न के तहत डेटा एग्रीगेट करना और सक्सेस रेट का हिसाब लगाने के तरीके को पसंद के मुताबिक बनाना.

कस्टम यूआरएल पैटर्न के तहत कुल डेटा

हर अनुरोध के लिए, Firebase यह जांच करता है कि नेटवर्क अनुरोध का यूआरएल, किसी यूआरएल पैटर्न से मैच करता है या नहीं. अगर अनुरोध का यूआरएल किसी यूआरएल पैटर्न से मैच करता है, तो Firebase उस यूआरएल पैटर्न के तहत अनुरोध के डेटा को अपने-आप एग्रीगेट कर देता है.

कस्टम यूआरएल पैटर्न बनाए जा सकते हैं, ताकि उन यूआरएल पैटर्न को मॉनिटर किया जा सके जिन्हें Firebase, यूआरएल पैटर्न के अपने-आप मैच होने की सुविधा की मदद से कैप्चर नहीं कर पा रहा है. उदाहरण के लिए, किसी खास यूआरएल से जुड़ी समस्या को हल करने या समय के साथ यूआरएल के किसी खास सेट पर नज़र रखने के लिए, कस्टम यूआरएल पैटर्न का इस्तेमाल किया जा सकता है.

Firebase, सभी यूआरएल पैटर्न (इनमें कस्टम यूआरएल पैटर्न भी शामिल हैं) और उनके कुल डेटा को ट्रेस टेबल के नेटवर्क अनुरोध सब-टैब में दिखाता है. यह सब-टैब, Firebase कंसोल के परफ़ॉर्मेंस डैशबोर्ड में सबसे नीचे होता है.

कस्टम यूआरएल पैटर्न मैचिंग की सुविधा कैसे काम करती है?

Firebase, अनुरोध के यूआरएल को कॉन्फ़िगर किए गए किसी भी कस्टम यूआरएल पैटर्न से मैच करने की कोशिश करता है. इसके बाद, वह यूआरएल पैटर्न को अपने-आप मैच करने की सुविधा का इस्तेमाल करता है. किसी कस्टम यूआरएल पैटर्न से मेल खाने वाले अनुरोधों के लिए, Firebase उन अनुरोधों के डेटा को कस्टम यूआरएल पैटर्न के तहत इकट्ठा करता है.

अगर किसी अनुरोध का यूआरएल, एक से ज़्यादा कस्टम यूआरएल पैटर्न से मैच करता है, तो Firebase उस अनुरोध को सिर्फ़ सबसे सटीक कस्टम यूआरएल पैटर्न से मैप करता है. इसके लिए, वह इस क्रम का इस्तेमाल करता है: सामान्य टेक्स्ट > * > ** पाथ में बाएं से दाएं. उदाहरण के लिए, example.com/books/dog के लिए किया गया अनुरोध, दो कस्टम यूआरएल पैटर्न से मैच करता है:

  • example.com/books/*
  • example.com/*/dog

हालांकि, पैटर्न example.com/books/*, सबसे ज़्यादा मैच करने वाला यूआरएल पैटर्न है. इसकी वजह यह है कि example.com/books/* में सबसे बाईं ओर मौजूद सेगमेंट books को, example.com/*/dog में सबसे बाईं ओर मौजूद सेगमेंट * के मुकाबले प्राथमिकता दी जाती है.

नया कस्टम यूआरएल पैटर्न बनाते समय, इन बातों का ध्यान रखें:

  • नया कस्टम यूआरएल पैटर्न बनाने से, पिछले अनुरोधों से मिले मैच और कुल डेटा पर कोई असर नहीं पड़ता. Firebase, अनुरोध के डेटा को फिर से एग्रीगेट नहीं करता.

  • नया कस्टम यूआरएल पैटर्न बनाने से, सिर्फ़ आने वाले समय में किए जाने वाले अनुरोधों पर असर पड़ता है. Performance Monitoring को नए कस्टम यूआरएल पैटर्न के तहत डेटा इकट्ठा करने और उसे एग्रीगेट करने में 12 घंटे लग सकते हैं.

कस्‍टम यूआरएल पैटर्न बनाना

Firebase कंसोल के परफ़ॉर्मेंस डैशबोर्ड में सबसे नीचे मौजूद, ट्रेस टेबल के नेटवर्क अनुरोध सब-टैब से, कस्टम यूआरएल पैटर्न बनाया जा सकता है.

प्रोजेक्ट के किसी सदस्य को नया कस्टम यूआरएल पैटर्न बनाने के लिए, मालिक या एडिटर होना चाहिए. हालांकि, प्रोजेक्ट के सभी सदस्य, कस्टम यूआरएल पैटर्न और उनका कुल डेटा देख सकते हैं.

हर ऐप्लिकेशन के लिए, ज़्यादा से ज़्यादा 400 कस्टम यूआरएल पैटर्न बनाए जा सकते हैं. साथ ही, उस ऐप्लिकेशन के लिए हर डोमेन पर ज़्यादा से ज़्यादा 100 कस्टम यूआरएल पैटर्न बनाए जा सकते हैं.

कस्टम यूआरएल पैटर्न बनाने के लिए, होस्टनेम से शुरुआत करें. इसके बाद, पाथ सेगमेंट जोड़ें. होस्टनेम में एक मान्य डोमेन होना चाहिए. इसमें सबडोमेन को भी शामिल किया जा सकता है. यूआरएल से मैच करने वाला पैटर्न बनाने के लिए, पाथ सेगमेंट के इस सिंटैक्स का इस्तेमाल करें.

  • सादा टेक्स्ट — एग्ज़ैक्ट स्ट्रिंग से मैच करता है
  • * — पहले सबडोमेन सेगमेंट या किसी पाथ सेगमेंट में मौजूद किसी स्ट्रिंग से मैच करता है
  • ** — पाथ के सफ़िक्स से मैच करता है

नीचे दी गई टेबल में, कस्टम यूआरएल पैटर्न से मैच होने वाले कुछ संभावित पैटर्न के बारे में बताया गया है.

मैच करने के लिए... इस तरह का कोई कस्टम यूआरएल पैटर्न बनाएं... इस यूआरएल पैटर्न से मैच करने वाले उदाहरण
सटीक यूआरएल example.com/foo/baz example.com/foo/baz
कोई भी सिंगल पाथ सेगमेंट (*) example.com/*/baz example.com/foo/baz
example.com/bar/baz
example.com/*/*/baz example.com/foo/bar/baz
example.com/bah/qux/baz
example.com/foo/* example.com/foo/baz
example.com/foo/bar

ध्यान दें: यह पैटर्न example.com/foo से मैच नहीं होगा.

पाथ का कोई भी सफ़िक्स (**) example.com/foo/** example.com/foo
example.com/foo/baz
example.com/foo/baz/more/segments
subdomain.example.com/foo.bar/** subdomain.example.com/foo.bar
subdomain.example.com/foo.bar/baz
subdomain.example.com/foo.bar/baz/more/segments
पहला सबडोमेन सेगमेंट (*) *.example.com/foo bar.example.com/foo
baz.example.com/foo

कस्टम यूआरएल पैटर्न और उनका डेटा देखना

Firebase, सभी यूआरएल पैटर्न (इनमें कस्टम यूआरएल पैटर्न भी शामिल हैं) और उनके कुल डेटा को ट्रेस टेबल के नेटवर्क अनुरोध सब-टैब में दिखाता है. यह सब-टैब, Firebase कंसोल के परफ़ॉर्मेंस डैशबोर्ड में सबसे नीचे होता है.

सिर्फ़ कस्टम यूआरएल पैटर्न देखने के लिए, ट्रेस टेबल के नेटवर्क अनुरोध सब-टैब में मौजूद ड्रॉपडाउन मेन्यू से कस्टम पैटर्न चुनें. ध्यान दें कि अगर किसी कस्‍टम यूआरएल पैटर्न में कोई कुल डेटा नहीं है, तो वह सिर्फ़ इस सूची में दिखता है.

जब किसी यूआरएल पैटर्न के तहत इकट्ठा किए गए डेटा के लिए, डेटा के रखरखाव की अवधि खत्म हो जाती है, तो Firebase उस डेटा को यूआरएल पैटर्न से मिटा देता है. अगर किसी कस्टम यूआरएल पैटर्न के तहत इकट्ठा किया गया सारा डेटा खत्म हो जाता है, तो Firebase, Firebase कंसोल से कस्टम यूआरएल पैटर्न को नहीं मिटाता है. इसके बजाय, Firebase, ट्रेस टेबल के नेटवर्क का अनुरोध सब-टैब की कस्टम पैटर्न सूची में, "खाली" कस्टम यूआरएल पैटर्न दिखाता रहता है.

कस्टम यूआरएल पैटर्न हटाना

आपके पास अपने प्रोजेक्ट से कस्टम यूआरएल पैटर्न हटाने का विकल्प होता है. ध्यान दें कि अपने-आप लागू होने वाले यूआरएल पैटर्न को नहीं हटाया जा सकता.

  1. परफ़ॉर्मेंस डैशबोर्ड से, नीचे की ओर स्क्रोल करके ट्रेस टेबल पर जाएं. इसके बाद, नेटवर्क अनुरोध सबटैब चुनें.

  2. नेटवर्क के अनुरोध सब-टैब में मौजूद ड्रॉपडाउन मेन्यू से, कस्टम पैटर्न चुनें.

  3. कस्टम यूआरएल पैटर्न की उस लाइन पर कर्सर घुमाएं जिसे आपको हटाना है.

  4. लाइन के सबसे दाईं ओर मौजूद, पर क्लिक करें. इसके बाद, कस्टम पैटर्न हटाएं को चुनें. फिर, डायलॉग बॉक्स में जाकर, हटाने की पुष्टि करें.

कस्टम यूआरएल पैटर्न को हटाते समय, इन बातों का ध्यान रखें:

  • आने वाले समय में किए जाने वाले किसी भी अनुरोध को, अगले सबसे सटीक मैच होने वाले कस्टम यूआरएल पैटर्न पर मैप किया जाता है. अगर Firebase को कस्टम यूआरएल का कोई पैटर्न नहीं मिलता है, तो वह यूआरएल पैटर्न को अपने-आप मैच करने की सुविधा का इस्तेमाल करता है.

  • कस्टम यूआरएल पैटर्न को हटाने से, पिछले अनुरोधों से मिले मैच और कुल डेटा पर कोई असर नहीं पड़ता.

    हटाए गए कस्टम यूआरएल पैटर्न और उसके एग्रीगेट किए गए डेटा को अब भी ऐक्सेस किया जा सकता है. इसके लिए, नेटवर्क के अनुरोध सब-टैब में जाएं और नेटवर्क के सभी अनुरोध चुनें. हालांकि, ऐसा डेटा के रखरखाव की तय अवधि खत्म होने तक ही किया जा सकता है. हटाए गए कस्टम यूआरएल पैटर्न के तहत इकट्ठा किया गया सारा डेटा खत्म होने पर, Firebase उस कस्टम यूआरएल पैटर्न को मिटा देता है.

  • नेटवर्क के अनुरोध सब-टैब (कस्टम पैटर्न चुने जाने पर) में, हटाए गए किसी भी कस्टम यूआरएल पैटर्न की सूची नहीं दिखती.

अगले चरण

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

सक्सेस रेट का हिसाब लगाने के तरीके को पसंद के मुताबिक बनाना

Firebase, नेटवर्क के हर अनुरोध के लिए कई मेट्रिक को मॉनिटर करता है. इनमें से एक मेट्रिक, अनुरोध का सक्सेस रेट है. सक्सेस रेट, कुल रिस्पॉन्स की तुलना में सफल रिस्पॉन्स का प्रतिशत होता है. इस मेट्रिक की मदद से, नेटवर्क और सर्वर से जुड़ी गड़बड़ियों को मेज़र किया जा सकता है.

खास तौर पर, Firebase उन नेटवर्क अनुरोधों को सफल रिस्पॉन्स के तौर पर अपने-आप गिनता है जिनका रिस्पॉन्स कोड 100 से 399 के बीच होता है.

सक्सेस रेट के कैलकुलेशन को अपनी पसंद के मुताबिक बनाया जा सकता है. इसके लिए, गड़बड़ी के कुछ कोड को "सफल रिस्पॉन्स" के तौर पर गिना जा सकता है. इसके अलावा, उन रिस्पॉन्स कोड को भी गिना जा सकता है जिन्हें Firebase अपने-आप सफल रिस्पॉन्स के तौर पर गिनता है.

उदाहरण के लिए, अगर आपके ऐप्लिकेशन में सर्च एंडपॉइंट एपीआई है, तो 404 रिस्पॉन्स को "सफल" के तौर पर गिना जा सकता है. ऐसा इसलिए, क्योंकि सर्च एंडपॉइंट के लिए 404 रिस्पॉन्स मिलने की उम्मीद होती है. मान लें कि इस सर्च एंडपॉइंट के लिए हर घंटे 100 सैंपल हैं. इनमें से 60 सैंपल, 200-रिस्पॉन्स हैं और 40 सैंपल, 404-रिस्पॉन्स हैं. सक्सेस रेट को कॉन्फ़िगर करने से पहले, यह 60% होगा. सक्सेस रेट की गिनती को कॉन्फ़िगर करने के बाद, 404 रिस्पॉन्स को सफल माना जाएगा. इसके बाद, सक्सेस रेट 100% हो जाएगा.

सक्सेस रेट कैलकुलेट करने की सुविधा को कॉन्फ़िगर करना

किसी नेटवर्क यूआरएल पैटर्न के लिए, सक्सेस रेट का हिसाब लगाने की सुविधा को कॉन्फ़िगर करने के लिए, आपके पास firebaseperformance.config.update की अनुमति होनी चाहिए. इन भूमिकाओं वाले उपयोगकर्ताओं को यह ज़रूरी अनुमति डिफ़ॉल्ट रूप से मिलती है: Firebase परफ़ॉर्मेंस एडमिन, Firebase क्वालिटी एडमिन, Firebase एडमिन, और प्रोजेक्ट का मालिक या एडिटर.

  1. Firebase कंसोल में Performance Monitoring डैशबोर्ड टैब पर जाएं. इसके बाद, वह ऐप्लिकेशन चुनें जिसके लिए आपको सक्सेस रेट का हिसाब लगाने की सुविधा कॉन्फ़िगर करनी है.
  2. स्क्रीन पर सबसे नीचे मौजूद, ट्रेस टेबल तक स्क्रोल करें और नेटवर्क के अनुरोध टैब को चुनें.
  3. वह यूआरएल पैटर्न ढूंढें जिसके लिए आपको सक्सेस रेट की गिनती को कॉन्फ़िगर करना है.
  4. लाइन के सबसे दाईं ओर, ओवरफ़्लो मेन्यू () खोलें और सक्सेस रेट कॉन्फ़िगर करें को चुनें.
  5. स्क्रीन पर दिए गए निर्देशों का पालन करके, वे रिस्पॉन्स कोड चुनें जिन्हें आपको सफल रिस्पॉन्स कोड के तौर पर गिनना है.