परफ़ॉर्मेंस से जुड़ी समस्याओं के लिए अलर्ट सेट अप करना

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

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

चेतावनी कब ट्रिगर होती है?

जब आपके ऐप्लिकेशन की कोई मेट्रिक, Firebase कंसोल में तय किए गए थ्रेशोल्ड को पार कर जाती है, तो सूचना ट्रिगर हो जाती है. हालांकि, यह थ्रेशोल्ड सिर्फ़ तब लागू होता है, जब आपने किसी खास प्रतिशत के लिए ऐसा किया हो. सूचनाएं सिर्फ़ तब ट्रिगर होती हैं, जब आपका ऐप्लिकेशन रीयल-टाइम में काम करने वाले SDK टूल के वर्शन का इस्तेमाल करता है.

ऐप्लिकेशन शुरू होने में लगने वाला समय

ऐप्लिकेशन के शुरू होने के समय के लिए सूचना कॉन्फ़िगर करने पर, ये सभी शर्तें पूरी होने पर सूचना ट्रिगर होती है:

  • Firebase ने आपके ऐप्लिकेशन के नए वर्शन के लिए, पिछले एक घंटे में _app_start ट्रैस के कम से कम 100 सैंपल रिकॉर्ड किए हैं.
  • _app_start ट्रेस की अवधि, पिछले एक घंटे के दौरान और कॉन्फ़िगर किए गए प्रतिशत के लिए, ऐप्लिकेशन के तय किए गए थ्रेशोल्ड से ज़्यादा हो गई.
  • आपके ऐप्लिकेशन के नए वर्शन में, पहले इस थ्रेशोल्ड के लिए कोई चेतावनी नहीं मिली थी.

कस्टम कोड के ट्रैक

कस्टम कोड ट्रेस मेट्रिक के लिए सूचना कॉन्फ़िगर करने पर, सूचना तब ट्रिगर होती है, जब ये सभी शर्तें पूरी होती हैं:

  • Firebase ने आपके ऐप्लिकेशन के नए वर्शन के लिए, पिछले एक घंटे में कस्टम कोड ट्रेस के कम से कम 100 सैंपल रिकॉर्ड किए हैं.
  • ट्रेस की अवधि, पिछले एक घंटे के दौरान और कॉन्फ़िगर किए गए प्रतिशत के लिए, ऐप्लिकेशन के तय किए गए थ्रेशोल्ड से ज़्यादा हो गई.
  • (सिर्फ़ iOS और Android के लिए) आपके ऐप्लिकेशन के सबसे नए वर्शन में, पहले से तय किए गए थ्रेशोल्ड के लिए कोई सूचना नहीं मिली थी.
  • (सिर्फ़ वेब के लिए) पिछले तीन दिनों में, इसी थ्रेशोल्ड के लिए पहले कोई चेतावनी नहीं मिली थी.

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

नेटवर्क अनुरोध मेट्रिक के लिए सूचना कॉन्फ़िगर करने पर, सूचना तब ट्रिगर होती है, जब ये सभी शर्तें पूरी होती हैं:

  • Firebase ने पिछले एक घंटे में, आपके ऐप्लिकेशन के सभी वर्शन के यूआरएल पैटर्न से मैच करने वाले कम से कम 100 सैंपल रिकॉर्ड किए हैं.
  • मेट्रिक की एग्रीगेट की गई वैल्यू, पिछले एक घंटे में तय की गई सीमा से ज़्यादा हो गई है:
    • रिस्पॉन्स में लगने वाला समय: एग्रीगेट की गई वैल्यू, कॉन्फ़िगर किए गए प्रतिशत के लिए तय किए गए थ्रेशोल्ड से ज़्यादा है
    • सफलता दर: (सिर्फ़ iOS+/Android के लिए) सभी उपयोगकर्ताओं के लिए, एग्रीगेट की गई वैल्यू, सेट किए गए थ्रेशोल्ड से कम हो गई
  • पिछले तीन दिनों में, इसी थ्रेशोल्ड के लिए पहले कोई सूचना नहीं मिली थी.

स्क्रीन रेंडरिंग

स्क्रीन रेंडरिंग मेट्रिक के लिए चेतावनी कॉन्फ़िगर करने पर, चेतावनी तब ट्रिगर होती है, जब ये सभी शर्तें पूरी होती हैं:

  • Firebase ने पिछले एक घंटे में, आपके ऐप्लिकेशन के नए वर्शन के लिए, स्क्रीन रेंडरिंग के कम से कम 100 सैंपल रिकॉर्ड किए हैं.
  • मेट्रिक की एग्रीगेट की गई वैल्यू, पिछले एक घंटे के दौरान तय किए गए थ्रेशोल्ड को पार कर गई:
    • फ़्रीज़ किए गए फ़्रेम: एग्रीगेट की गई वैल्यू, सेट किए गए थ्रेशोल्ड से ज़्यादा हो गई
    • रेंडर होने में ज़्यादा समय लेने वाले फ़्रेम: एग्रीगेट की गई वैल्यू, सेट किए गए थ्रेशोल्ड से ज़्यादा है
  • आपके ऐप्लिकेशन के नए वर्शन में, पहले इस थ्रेशोल्ड के लिए कोई चेतावनी नहीं मिली थी.

पेज लोड

पेज लोड मेट्रिक के लिए सूचना कॉन्फ़िगर करने पर, सूचना तब ट्रिगर होती है, जब ये सभी शर्तें पूरी होती हैं:

  • Firebase ने पिछले एक घंटे में, आपके ऐप्लिकेशन के लिए पेज लोड होने के कम से कम 100 सैंपल रिकॉर्ड किए हैं.
  • मेट्रिक की एग्रीगेट की गई वैल्यू, पिछले एक घंटे और कॉन्फ़िगर की गई पर्सेंटाइल के लिए तय किए गए थ्रेशोल्ड को पार कर गई:
    • फ़र्स्ट इनपुट डिले: एग्रीगेट की गई वैल्यू, सेट किए गए थ्रेशोल्ड और कॉन्फ़िगर किए गए प्रतिशत से ज़्यादा हो गई
    • कॉन्टेंट वाला पहला पेंट: एग्रीगेट की गई वैल्यू, सेट किए गए थ्रेशोल्ड और कॉन्फ़िगर किए गए प्रतिशत से ज़्यादा हो गई
    • पहला पेंट: एग्रीगेट की गई वैल्यू, सेट किए गए थ्रेशोल्ड और कॉन्फ़िगर किए गए प्रतिशत से ज़्यादा हो गई
  • पिछले तीन दिनों में, इसी थ्रेशोल्ड के लिए पहले कोई सूचना नहीं मिली थी.

खास तरह के ट्रेस और मेट्रिक के लिए, सूचनाएं कॉन्फ़िगर करने, डिफ़ॉल्ट पर्सेंटाइल, और सबसे सही तरीकों के बारे में ज़्यादा जानें.

Performance Monitoring चेतावनियों के लिए, परफ़ॉर्मेंस की अन्य मेट्रिक या Slack, Jira, और PagerDuty के साथ पहले से इंटिग्रेट किए गए Firebase के लिए चेतावनियां उपलब्ध नहीं हैं.

सूचनाएं पाना

डिफ़ॉल्ट सूचनाएं पाना

डिफ़ॉल्ट रूप से, Firebase Performance Monitoring सूचनाएं ईमेल से भेज सकता है.

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

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

अपने खाते के लिए सूचनाएं चालू या बंद करना

अपने खाते के लिए, Performance Monitoring सूचनाएं पाने की सुविधा को चालू/बंद किया जा सकता है. इससे, प्रोजेक्ट के अन्य सदस्यों पर कोई असर नहीं पड़ेगा. ध्यान दें कि सूचनाएं पाने के लिए, अब भी आपके पास ज़रूरी अनुमतियां होनी चाहिए.

Performance Monitoring सूचनाएं पाने की सुविधा को चालू या बंद करने के लिए, यह तरीका अपनाएं:

  1. Firebase कंसोल में, सबसे ऊपर दाएं कोने में, Firebase के लिए सूचनाएं पर जाएं.
  2. इसके बाद, सेटिंग पर जाएं और Performance Monitoring सूचनाओं के लिए, खाते की प्राथमिकता सेट करें.

तीसरे पक्ष की सेवाओं के लिए, सूचना देने की बेहतर सुविधा सेट अप करना

Cloud Functions for Firebase का इस्तेमाल करके, अपनी टीम के पसंदीदा सूचना चैनल पर भी Performance Monitoring सूचनाएं भेजी जा सकती हैं. उदाहरण के लिए, ऐसा फ़ंक्शन लिखा जा सकता है जो ऐप्लिकेशन के खुलने में लगने वाले समय के लिए सूचना वाले इवेंट को कैप्चर करता है. साथ ही, सूचना की जानकारी को Discord, Slack या Jira जैसी तीसरे पक्ष की सेवा पर पोस्ट करता है.

Cloud Functions for Firebase का इस्तेमाल करके, सूचना देने की बेहतर सुविधाएं सेट अप करने के लिए, यह तरीका अपनाएं:

  1. Firebase के लिए Cloud Functions सेट अप करना. इसमें ये काम शामिल हैं:

    1. Node.js या Python के लिए डेवलपमेंट एनवायरमेंट सेट अप करें.
    2. Firebase सीएलआई इंस्टॉल करें और उसमें साइन इन करें.
    3. Firebase सीएलआई का इस्तेमाल करके, Cloud Functions for Firebase को शुरू करें.
  2. Performance Monitoring से सूचना वाले इवेंट को कैप्चर करने और इवेंट के पेलोड को मैनेज करने वाला फ़ंक्शन लिखें और डिप्लॉय करें. उदाहरण के लिए, Discord पर सूचना की जानकारी को मैसेज में पोस्ट करना.

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

अमान्य सूचनाएं अपने-आप हटना

Performance Monitoring, सूचनाओं की पुष्टि करता है, ताकि यह पक्का किया जा सके कि डेटा मान्य है और सूचनाओं का इस्तेमाल किया जा रहा है. सूचनाओं को मान्य तब माना जाता है, जब इनमें से कोई एक बात सही हो:

  • सूचना, उस रिसॉर्स आईडी के लिए बनाई गई है जिसके लिए Performance Monitoring को पिछले 90 दिनों में डेटा मिला है.
  • सूचना, हाल ही में कस्टम यूआरएल पैटर्न के लिए बनाई गई थी. कस्टम यूआरएल पैटर्न बनाने और सूचना सेट अप करने के बाद, आपके पास उस पैटर्न के लिए डेटा भेजने के लिए 90 दिन होते हैं. अगर 90 दिनों की समयावधि के अंदर कोई डेटा नहीं भेजा जाता है, तो Performance Monitoring उस अलर्ट को हटा देता है. कस्टम यूआरएल पैटर्न के बारे में ज़्यादा जानने के लिए, कस्टमर यूआरएल पैटर्न के तहत डेटा इकट्ठा करना लेख पढ़ें.

अगर इनमें से कोई भी शर्त पूरी नहीं होती है, तो Performance Monitoring चेतावनी हटा देता है.

सूचना कॉन्फ़िगर करना

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

अगर आपने अब तक ऐसा नहीं किया है, तो अपने ऐप्लिकेशन में Performance Monitoring का नया SDK टूल जोड़ें. ज़्यादा जानकारी के लिए, वेब, Android, Apple, और Flutter प्लैटफ़ॉर्म के लिए, शुरू करने से जुड़ी गाइड देखें.

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

ट्रेस टेबल में सूचना कॉन्फ़िगर करना

  1. Firebase कंसोल में, Performance Monitoring डैशबोर्ड टैब पर जाएं. इसके बाद, वह ऐप्लिकेशन चुनें जिसके लिए आपको सूचना कॉन्फ़िगर करनी है.

  2. नीचे की ओर स्क्रोल करके, स्क्रीन पर सबसे नीचे मौजूद ट्रेस टेबल पर जाएं.

  3. उस ट्रैक टाइप का टैब चुनें जिसके लिए आपको सूचना सेट करनी है. इसके बाद, लागू होने वाली लाइन ढूंढें.

  4. लाइन की सबसे दाईं ओर, ओवरफ़्लो मेन्यू () खोलें और सूचना सेटिंग चुनें.

  5. ऐप्लिकेशन के लिए सूचना थ्रेशोल्ड और प्रतिशत (अगर लागू हो) सेट करने या सूचना चालू/बंद करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें. Android और iOS के लिए, डिफ़ॉल्ट पर्सेंटाइल 90वां और वेब के लिए 75वां होता है. डिफ़ॉल्ट प्रतिशत के बारे में ज़्यादा जानने के लिए, अपने डैशबोर्ड में मुख्य मेट्रिक ट्रैक करें लेख पढ़ें.

डैशबोर्ड रिपोर्ट कार्ड में सूचना कॉन्फ़िगर करना

  1. Firebase कंसोल में, Performance Monitoring डैशबोर्ड टैब पर जाएं. इसके बाद, वह ऐप्लिकेशन चुनें जिसके लिए आपको सूचना कॉन्फ़िगर करनी है.

  2. रिपोर्ट कार्ड टैब में, वह मेट्रिक कार्ड ढूंढें जिसके लिए आपको सूचना कॉन्फ़िगर करनी है.

  3. अपनी पसंद के मेट्रिक कार्ड में, ओवरफ़्लो मेन्यू () खोलें और सूचना सेटिंग चुनें.

  4. ऐप्लिकेशन के लिए सूचना थ्रेशोल्ड और प्रतिशत (अगर लागू हो) सेट करने या सूचना चालू/बंद करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें. Android और iOS के लिए, डिफ़ॉल्ट पर्सेंटाइल 90वां और वेब के लिए 75वां होता है. डिफ़ॉल्ट प्रतिशत के बारे में ज़्यादा जानने के लिए, अपने डैशबोर्ड में मुख्य मेट्रिक ट्रैक करें लेख पढ़ें.

परफ़ॉर्मेंस से जुड़ी सूचना सेट करने के सबसे सही तरीके

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

Firebase, मिलते-जुलते नेटवर्क अनुरोधों का डेटा, यूआरएल पैटर्न के तहत इकट्ठा करता है. ये पैटर्न इनमें से कोई एक हो सकते हैं:

अपने कस्टम यूआरएल पैटर्न के लिए सूचनाएं सेट अप करना

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

अपने-आप जनरेट होने वाले यूआरएल पैटर्न के लिए सूचनाएं पाने की सुविधा सेट अप करना

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

वेब पेज लोड हो रहा है

वेब मेट्रिक को मेज़र करने के लिए सुझाए गए थ्रेशोल्ड के बारे में जानने के लिए, वेबसाइट की परफ़ॉर्मेंस की अहम जानकारी से जुड़ा दस्तावेज़ देखें.

स्क्रीन रेंडरिंग

ऐप्लिकेशन का बेहतर अनुभव देने के लिए, उपयोगकर्ता के सेशन में धीमे और फ़्रीज़ हुए फ़्रेम नहीं होने चाहिए. Performance Monitoring का सुझाव है कि आप 1% से ज़्यादा फ़्रीज़ हुए फ़्रेम के लिए चेतावनियां सेट अप करें. साथ ही, 5% से ज़्यादा धीमे फ़्रेम के लिए भी चेतावनियां सेट अप करें. आपको पता चलेगा कि परफ़ॉर्मेंस की चेतावनी के कॉन्फ़िगरेशन के दौरान, ये वैल्यू डिफ़ॉल्ट सेटिंग के तौर पर मौजूद होती हैं. बहुत धीमे या फ़्रीज़ हुए फ़्रेम और ऐप्लिकेशन की परफ़ॉर्मेंस से जुड़े सबसे सही तरीकों के बारे में ज़्यादा जानने के लिए, Google Play से जुड़े दिशा-निर्देश देखें.