इस पेज पर, Performance Monitoring का इस्तेमाल शुरू करने से जुड़ी समस्याएं हल करने के लिए सलाह दी गई है या Performance Monitoring की सुविधाओं और टूल का इस्तेमाल करके.
समस्या हल करने के लिए पहली जांच
ये दो जांच सभी के लिए सबसे सही सामान्य तरीके हैं करने से पहले उन्हें ठीक करना होगा.
1. परफ़ॉर्मेंस इवेंट के लिए लॉग मैसेज देखना
अपने लॉग मैसेज देखें और पक्का करें कि Performance Monitoring SDK टूल कैप्चर कर रहा हो परफ़ॉर्मेंस इवेंट.
परफ़ॉर्मेंस इवेंट के लॉग मैसेज देखने का तरीका
<meta-data>
जोड़कर, बिल्ड के समय Performance Monitoring के लिए डीबग लॉग करने की सुविधा चालू करें ऐप्लिकेशन कीAndroidManifest.xml
फ़ाइल में जोड़ा जा सकता है, जैसे:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
गड़बड़ी के किसी भी मैसेज के लिए अपने लॉग मैसेज देखें.
Performance Monitoring अपने लॉग मैसेज को
FirebasePerformance
से टैग करता है. Logcat का इस्तेमाल करके फ़िल्टर करते समय, ख़ास तौर पर 'अवधि ट्रेस' और 'एचटीटीपी/एस नेटवर्क' को देखा जा सकता है निम्न आदेश चलाकर लॉगिंग का अनुरोध करें:adb logcat -s FirebasePerformance
इस तरह के लॉग देखें जो दिखाते हैं कि Performance Monitoring परफ़ॉर्मेंस इवेंट लॉग करने के लिए:
Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
Logging network request trace: URL
Firebase कंसोल में अपना डेटा देखने के लिए, यूआरएल पर क्लिक करें. इसमें कुछ समय लग सकता है डैशबोर्ड में डेटा अपडेट होने के लिए खास पल.
अगर आपका ऐप्लिकेशन, परफ़ॉर्मेंस से जुड़े इवेंट लॉग नहीं कर रहा है, तो समस्या का हल देखें सलाह देखें.
2. Firebase स्टेटस डैशबोर्ड देखना
सेटअप के निर्देश देखें मामले के लिए, Firebase स्टेटस डैशबोर्ड Firebase या Performance Monitoring के लिए एक सेवा उपलब्ध नहीं है.
Performance Monitoring का इस्तेमाल शुरू करना
अगर Performance Monitoring का इस्तेमाल शुरू किया जा रहा है, तो (iOS+ | Android | वेब), नीचे दी गई समस्या का हल है यहां दी गई सलाह से, उन समस्याओं को हल करने में मदद मिल सकती है जिनमें Firebase को SDK टूल का पता लगाना या ऐप्लिकेशन को दिखाना शामिल है Firebase कंसोल में अपना पहला परफ़ॉर्मेंस डेटा देख सकते हैं.
SDK टूल को ऐप्लिकेशन में जोड़ा गया, लेकिन कंसोल अब भी SDK टूल जोड़ने के लिए कहा जा रहा है
Firebase यह पता लगा सकता है कि आपने ऐप्लिकेशन में Performance Monitoring SDK टूल जोड़ा है या नहीं जब उसे आपके ऐप्लिकेशन से इवेंट की जानकारी (जैसे कि ऐप्लिकेशन इंटरैक्शन) मिलती है. आम तौर पर, ऐप्लिकेशन शुरू करने के 10 मिनट के अंदर, परफ़ॉर्मेंस डैशबोर्ड Firebase कंसोल में, "SDK टूल मिला है" दिखता है दिखाई देगा. फिर, 30 के अंदर मिनट, डैशबोर्ड शुरुआती प्रोसेस किया गया डेटा दिखाता है.
अगर आपने अपने ऐप्लिकेशन में SDK टूल का नया वर्शन जोड़ने के 10 मिनट बाद भी कोई बदलाव नहीं देखा है, तो अपने लॉग मैसेज देखें. इससे यह पक्का किया जा सकता है कि Performance Monitoring इवेंट को लॉग कर रहा है या नहीं. समस्या हल करने के लिए, नीचे बताए गए सही तरीके आज़माएं SDK टूल की पहचान करने पर मिलने वाले मैसेज में होने वाली देरी से जुड़ी समस्या हल करें.
ऐप्लिकेशन, इवेंट लॉग कर रहा है: समस्या हल करना तरीका
पक्का करें कि Performance Monitoring Android SDK 19.1.0 या इसके बाद का वर्शन (या Firebase BoM 26.3.0 या इसके बाद के वर्शन), रिलीज़ नोट देखें.
अगर अब भी स्थानीय तौर पर डेवलप किया जा रहा है, तो डेटा के लिए ज़्यादा इवेंट जनरेट करके देखें संग्रह:
- अपने ऐप्लिकेशन को कई बार बैकग्राउंड और फ़ोरग्राउंड के बीच स्विच करके, स्क्रीन पर नेविगेट करके, और/या नेटवर्क अनुरोध ट्रिगर करके इवेंट जनरेट करें.
पक्का करें कि आपका Firebase कॉन्फ़िगरेशन फ़ाइल (
google-services.json
) है आपके ऐप्लिकेशन में सही ढंग से जोड़ा गया है और आपने फ़ाइल में बदलाव नहीं किया है. खास तौर पर, इनकी जांच करें:कॉन्फ़िगरेशन फ़ाइल के नाम को अतिरिक्त वर्णों के साथ नहीं जोड़ा गया है, जैसे कि
(2)
.कॉन्फ़िगरेशन फ़ाइल, आपके ऐप्लिकेशन के मॉड्यूल (ऐप्लिकेशन-लेवल) डायरेक्ट्री में होती है.
कॉन्फ़िगरेशन फ़ाइल में मौजूद Firebase का Android ऐप्लिकेशन आईडी (
mobilesdk_app_id
) आपके ऐप्लिकेशन के लिए सही है. आपके ऐप्लिकेशन में अपना Firebase ऐप्लिकेशन आईडी ढूंढें आपके settings प्रोजेक्ट का कार्ड सेटिंग.
अगर आपको अपने ऐप्लिकेशन में कॉन्फ़िगरेशन फ़ाइल में कोई गड़बड़ी दिखती है, तो यह तरीका आज़माएं:
आपके ऐप्लिकेशन में मौजूद कॉन्फ़िगरेशन फ़ाइल को मिटाएं.
इन निर्देशों का पालन करके नई कॉन्फ़िगरेशन फ़ाइल डाउनलोड करें और उसे अपने Android ऐप्लिकेशन में जोड़ें.
अगर SDK टूल, इवेंट लॉग कर रहा है और सब कुछ सही तरीके से सेट अप किया गया है, लेकिन आपको अब भी SDK टूल की पहचान वाला मैसेज या प्रोसेस किया गया डेटा नहीं दिख रहा है (10 मिनट बाद), Firebase सहायता से संपर्क करें.
ऐप्लिकेशन, इवेंट लॉग नहीं कर रहा है: समस्या हल करने का तरीका
Performance Monitoring Gradle प्लग इन के सेटअप की जांच इस तरह करें:
पक्का करें कि आपने प्लग इन को सही तरीके से जोड़ा हो. खास तौर पर, इनकी जांच करें:
- आपने प्लगिन जोड़ दिया है
(
) इंच आपके मॉड्यूल (ऐप्लिकेशन-लेवल)apply plugin: 'com.google.firebase.firebase-perf' build.gradle
फ़ाइल में. - आपने प्लगिन के लिए क्लासपाथ डिपेंडेंसी शामिल की है
प्रोजेक्ट-लेवल कीclasspath 'com.google.firebase:perf-plugin:1.4.2' build.gradle
फ़ाइल में.
- आपने प्लगिन जोड़ दिया है
(
पक्का करें कि इनमें से किसी एक फ़्लैग की मदद से, प्लग इन बंद न किया गया हो:
- अपने मॉड्यूल (ऐप्लिकेशन-लेवल)
build.gradle
फ़ाइल मेंinstrumentationEnabled
- आपके इसमें
firebasePerformanceInstrumentationEnabled
gradle.properties
फ़ाइल
- अपने मॉड्यूल (ऐप्लिकेशन-लेवल)
देखें कि आपकी
AndroidManifest.xml
फ़ाइल में, इनमें से किसी एक फ़्लैग की मदद से Performance Monitoring SDK टूल बंद न किया गया हो :firebase_performance_collection_enabled
firebase_performance_collection_deactivated
पक्का करें कि Performance Monitoring को बंद नहीं किया गया हो रनटाइम के दौरान किया जा सकता है.
अगर आपको अपने ऐप्लिकेशन में बंद किया गया कोई ऐप्लिकेशन नहीं मिलता है, तो Firebase सहायता टीम से संपर्क करें.
कंसोल का कहना है कि SDK टूल का पता चला, लेकिन कोई डेटा नहीं दिखाया गया
Performance Monitoring, परफ़ॉर्मेंस इवेंट डेटा को प्रोसेस करने के बाद ही, परफ़ॉर्मेंस डैशबोर्ड.
अगर "SDK टूल का पता चला" को 24 घंटे से ज़्यादा समय हो गया है" एक मैसेज दिखा, और आपको अब भी डेटा नहीं दिख रहा है, तो Firebase स्टेटस डैशबोर्ड: अगर कुछ समय के लिए उपलब्ध नहीं है. अगर कोई रुकावट नहीं है, तो Firebase की सहायता टीम से संपर्क करें.
सामान्य समस्याएं हल करना
अगर आपने SDK टूल जोड़ लिया है और अपने ऐप्लिकेशन में Performance Monitoring का इस्तेमाल कर रहे हैं, तो समस्या हल करने के लिए ये तरीके अपनाएं. इससे आपको सामान्य समस्याओं में मदद मिल सकती है. Performance Monitoring की सुविधाएं और टूल.
ऐप्लिकेशन लॉग नहीं कर रहा है परफ़ॉर्मेंस इवेंट
अगर आपको परफ़ॉर्मेंस इवेंट के लिए लॉग मैसेज नहीं दिख रहे हैं, तो समस्या हल करने के लिए यह तरीका आज़माएं:
Performance Monitoring Gradle प्लग इन के सेटअप की जांच इस तरह करें:
पक्का करें कि जोड़ा सही प्लगिन करें. खास तौर पर, इनकी जांच करें:
- आपने प्लगिन जोड़ दिया है
(
) इंच आपके मॉड्यूल (ऐप्लिकेशन-लेवल)apply plugin: 'com.google.firebase.firebase-perf' build.gradle
फ़ाइल में. - आपने प्रोजेक्ट-लेवल
build.gradle
फ़ाइल में, प्लग इन (
) के लिए क्लासपाथ डिपेंडेंसी शामिल की है.classpath 'com.google.firebase:perf-plugin:1.4.2'
- आपने प्लगिन जोड़ दिया है
(
पक्का करें कि प्लग-इन इनमें से किसी एक के ज़रिए, अपने-आप बंद नहीं हो फ़्लैग:
- अपने मॉड्यूल (ऐप्लिकेशन-लेवल)
build.gradle
फ़ाइल मेंinstrumentationEnabled
- आपके इसमें
firebasePerformanceInstrumentationEnabled
gradle.properties
फ़ाइल
- अपने मॉड्यूल (ऐप्लिकेशन-लेवल)
देखें कि Performance Monitoring SDK टूल नहीं है बंद है अपनी
AndroidManifest.xml
फ़ाइल में इनमें से किसी एक फ़्लैग के ज़रिए:firebase_performance_collection_enabled
firebase_performance_collection_deactivated
पक्का करें कि Performance Monitoring को बंद नहीं किया गया हो रनटाइम के दौरान किया जा सकता है.
अगर आपको अपने ऐप्लिकेशन में बंद की गई कोई सुविधा नहीं मिलती है, तो Firebase की सहायता टीम से संपर्क करें.
परफ़ॉर्मेंस डैशबोर्ड यह है स्क्रीन ट्रेस डेटा मौजूद नहीं है
अगर आपको स्क्रीन रेंडरिंग ट्रेस का डेटा नहीं मिल रहा है, तो नीचे दिया गया तरीका आज़माएं समस्या हल करने का तरीका:
पक्का करें कि आपके डिवाइस में Android SDK का नया वर्शन इस्तेमाल किया जा रहा हो (21.0.1 वर्शन). स्क्रीन रेंडरिंग ट्रेस सिर्फ़ इनके साथ उपलब्ध हैं v15.2.0 या इसके बाद के वर्शन.
पक्का करें कि आपने किसी स्क्रीन के लिए, हार्डवेयर से तेज़ी लाएं सुविधा को मैन्युअल तरीके से बंद न किया हो.
पक्का करें कि DexGuard या Jack का इस्तेमाल नहीं किया जा रहा है. Performance Monitoring है इन टूलचेन के साथ काम नहीं करता.
DexGuard, ऐप्लिकेशन को अपने-आप शुरू करने, ऐप्लिकेशन-इन-फ़ोरग्राउंड, और ऐप्लिकेशन में बैकग्राउंड में चल रहे ट्रेस का इस्तेमाल भी किया जा सकता है. हालांकि, अगर आपका ऐप्लिकेशन DexGuard का इस्तेमाल करता है, तो किसी भी कस्टम कोड के ट्रेस का काम सामान्य तरीके से चलना चाहिए.
Jack अब काम नहीं करता है और का इस्तेमाल आपके ऐप्लिकेशन में नहीं किया जाना चाहिए.
परफ़ॉर्मेंस डैशबोर्ड में कस्टम ट्रेस डेटा मौजूद नहीं है
क्या आपको अपने-आप इकट्ठा होने वाले ट्रेस का परफ़ॉर्मेंस डेटा दिख रहा है, लेकिन ऐसा नहीं दिख रहा है कस्टम कोड ट्रेस? समस्या हल करने के लिए, यह तरीका आज़माएं:
अगर आपने Trace API, ट्रेस के सेटअप की जांच करें, खास तौर पर ये:
- कस्टम कोड ट्रेस और कस्टम मेट्रिक के नाम इन शर्तों के मुताबिक होने चाहिए
आवश्यकताएँ: कोई आगे या पीछे की खाली सफ़ेद जगह नहीं, कोई आगे वाला अंडरस्कोर नहीं
(
_
) वर्ण और ज़्यादा से ज़्यादा 32 वर्ण हो सकते हैं. - सभी ट्रेस शुरू और बंद होने चाहिए. ऐसा कोई भी ट्रेस जो शुरू नहीं हुआ है और न ही रोकने या शुरू करने से पहले बंद करने का डेटा लॉग नहीं किया जाएगा.
- कस्टम कोड ट्रेस और कस्टम मेट्रिक के नाम इन शर्तों के मुताबिक होने चाहिए
आवश्यकताएँ: कोई आगे या पीछे की खाली सफ़ेद जगह नहीं, कोई आगे वाला अंडरस्कोर नहीं
(
अगर आपने
@AddTrace
के ज़रिए कस्टम कोड ट्रेस तैयार की हैं नोटेशन, Performance Monitoring Gradle प्लग इन के सेटअप की जांच करें:पक्का करें कि जोड़ा सही प्लगिन करें. खास तौर पर, इनकी जांच करें:
- आपने प्लगिन जोड़ दिया है
(
) इंच आपके मॉड्यूल (ऐप्लिकेशन-लेवल)apply plugin: 'com.google.firebase.firebase-perf' build.gradle
फ़ाइल में. - आपने प्रोजेक्ट-लेवल
build.gradle
फ़ाइल में, प्लग इन (
) के लिए क्लासपाथ डिपेंडेंसी शामिल की है.classpath 'com.google.firebase:perf-plugin:1.4.2'
- आपने प्लगिन जोड़ दिया है
(
पक्का करें कि इनमें से किसी एक फ़्लैग की मदद से, प्लग इन बंद न किया गया हो:
- आपके मॉड्यूल में
instrumentationEnabled
(ऐप्लिकेशन-लेवल)build.gradle
फ़ाइल - आपके इसमें
firebasePerformanceInstrumentationEnabled
gradle.properties
फ़ाइल
- आपके मॉड्यूल में
अपने लॉग मैसेज की जांच करके पक्का करें कि Performance Monitoring, अनुमानित कस्टम कोड ट्रेस लॉग कर रहा है.
अगर Performance Monitoring, इवेंट लॉग कर रहा है, लेकिन 24 घंटे के बाद कोई डेटा नहीं दिखता, तो Firebase सहायता टीम से संपर्क करें.
परफ़ॉर्मेंस डैशबोर्ड में, नेटवर्क अनुरोध का डेटा मौजूद नहीं है
अगर आपको नेटवर्क अनुरोध का डेटा नहीं मिल रहा है, तो समस्या हल करने के लिए ये तरीके आज़माएं:
Android ऐप्लिकेशन के लिए, Performance Monitoring Gradle प्लग इन, इंस्ट्रुमेंटेशन को चालू करता है सेवा की अपने आप निगरानी करने की सुविधा देता है एचटीटीपी/S नेटवर्क के अनुरोध. इन बातों का ध्यान रखें:
पक्का करें कि जोड़ा सही प्लगिन करें. खास तौर पर, इनकी जांच करें:
- आपने प्लगिन जोड़ दिया है
(
) इंच आपके मॉड्यूल (ऐप्लिकेशन-लेवल)apply plugin: 'com.google.firebase.firebase-perf' build.gradle
फ़ाइल में. - आपने प्रोजेक्ट-लेवल
build.gradle
फ़ाइल में, प्लग इन (
) के लिए क्लासपाथ डिपेंडेंसी शामिल की है.classpath 'com.google.firebase:perf-plugin:1.4.2'
- आपने प्लगिन जोड़ दिया है
(
पक्का करें कि प्लग-इन इनमें से किसी एक के ज़रिए, अपने-आप बंद नहीं हो फ़्लैग:
- आपके मॉड्यूल में
instrumentationEnabled
(ऐप्लिकेशन-लेवल)build.gradle
फ़ाइल - आपके इसमें
firebasePerformanceInstrumentationEnabled
gradle.properties
फ़ाइल
- आपके मॉड्यूल में
देखें कि नेटवर्क लाइब्रेरी काम नहीं कर रही है या नहीं. Performance Monitoring अपने-आप नेटवर्क के उन अनुरोधों के लिए मेट्रिक इकट्ठा करता है जो नीचे दी गई नेटवर्किंग का इस्तेमाल करते हैं लाइब्रेरी: OkHttp 3.x.x, Java का URLConnection, और Apache HttpClient.
ध्यान दें कि नेटवर्क के लिए कस्टम मॉनिटरिंग की सुविधा जोड़ी जा सकती है अनुरोध हैं.
इन बातों का ध्यान रखें:
आपके कोड और नेटवर्किंग लाइब्रेरी के व्यवहार के आधार पर, जिनका इस्तेमाल आपका कोड, Performance Monitoring सिर्फ़ ऐसे नेटवर्क अनुरोधों पर रिपोर्ट कर सकता है जो पूरा हुआ. इसका मतलब है कि अगर एचटीटीपी/एस कनेक्शन खुले छोड़ दिए गए हैं, तो हो सकता है कि रिपोर्ट की जा सकती है.
Performance Monitoring, DexGuard और Jack के साथ काम नहीं करता है.
- DexGuard, एचटीटीपी/S नेटवर्क अनुरोधों की निगरानी करने की सुविधा बंद कर देता है.
- Jack अब काम नहीं करता है और का इस्तेमाल आपके ऐप्लिकेशन में नहीं किया जाना चाहिए.
Performance Monitoring अमान्य वाले नेटवर्क अनुरोधों की रिपोर्ट नहीं करता
Content-Type
हेडर. हालांकि,Content-Type
हेडर अब भी स्वीकार किए जाएंगे.
नेटवर्क अनुरोध का डेटा उम्मीद के मुताबिक इकट्ठा नहीं हो रहा है
Performance Monitoring, नेटवर्क अनुरोध को कैसे इकट्ठा करता है, इस बारे में ज़्यादा जानें डेटा को एक्सपोर्ट किया जा सकता है.
कस्टम यूआरएल पैटर्न भी आज़माए जा सकते हैं!
अक्सर पूछे जाने वाले सवाल
प्रोजेक्ट के होम पेज पर मौजूद परफ़ॉर्मेंस कार्ड में, 'सबसे ज़्यादा समस्याएं' कार्ड का क्या हुआ?
हमने मुख्य समस्याओं को हाल ही की चेतावनियां से बदल दिया है. यह हाल ही में चेतावनियों की शुरुआत की गई है, जो आपको अपने आप तब सूचना देती है, जब आपने जो थ्रेशोल्ड सेट किए हैं वे पार हो गए हैं. समस्याओं की सुविधा अब बंद कर दी गई है और इसकी जगह सूचनाएं दी जाएंगी.
परफ़ॉर्मेंस कार्ड में सबसे ऊपर मौजूद ऐप्लिकेशन सिलेक्टर, हाल ही की सूचनाएं में सूचनाएं डालता है. चुने गए ऐप्लिकेशन के लिए, सिर्फ़ तीन सबसे हाल की सूचनाएं दिखती हैं.
सूचनाओं के बारे में ज़्यादा जानने के लिए, परफ़ॉर्मेंस से जुड़ी समस्याओं के लिए सूचनाएं सेट अप करना लेख पढ़ें.
कंसोल में समस्याओं के लिए, थ्रेशोल्ड सेट करने की सुविधा का क्या हुआ?
Performance Monitoring से ज़्यादा मेट्रिक के लिए सूचनाएं मिलती हैं तय की गई थ्रेशोल्ड. कॉन्फ़िगर किए जा सकने वाले इन थ्रेशोल्ड से जुड़ी भ्रम की स्थिति से बचने के लिए, हमने परफ़ॉर्मेंस मेट्रिक के लिए थ्रेशोल्ड कॉन्फ़िगर करने की सुविधा को समस्याएं हैं.
Firebase कंसोल में, जानकारी और मेट्रिक की जानकारी का क्या हुआ?
हमने जानकारी और मेट्रिक पेजों को, फिर से डिज़ाइन किए गए नए और सेंट्रलाइज़्ड पेज से बदल दिया है यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, समस्याओं को हल करने के तरीके को बेहतर बनाया जा सकता है. यह नया समस्या हल करने वाला यूज़र इंटरफ़ेस (यूआई), वही मुख्य फ़ंक्शन ऑफ़र करता है जो ब्यौरा और मेट्रिक ऑफ़र की गईं. समस्या हल करने के बारे में ज़्यादा जानने के लिए, यह देखें किसी खास ट्रेस के लिए ज़्यादा डेटा देखें.
सैंपल की संख्या मेरी उम्मीद के मुताबिक क्यों नहीं है?
Performance Monitoring, आपके ऐप्लिकेशन के उपयोगकर्ता के डिवाइसों से परफ़ॉर्मेंस डेटा इकट्ठा करता है. अगर आपके ऐप्लिकेशन के कई उपयोगकर्ता हैं या ऐप्लिकेशन पर ज़्यादा परफ़ॉर्मेंस गतिविधि होती है, तो Performance Monitoring, डेटा इकट्ठा करने की प्रोसेस को डिवाइसों के सबसेट तक सीमित कर सकता है. ऐसा, प्रोसेस किए गए इवेंट की संख्या को कम करने के लिए किया जाता है. ये सीमाएं इतनी ज़्यादा हैं कि कम इवेंट होने के बावजूद, मेट्रिक की वैल्यू उपयोगकर्ता अनुभव को बेहतर बना सकें.
इकट्ठा किए जाने वाले डेटा की मात्रा मैनेज करने के लिए, Performance Monitoring इनका इस्तेमाल करता है सैंपलिंग के विकल्प:
उपयोगकर्ता के डिवाइस पर अनुरोधों की संख्या सीमित करना: किसी डिवाइस को अचानक बर्स्ट मिलने से रोकने के लिए ट्रेस करते हैं, तो हम डिवाइस पर हर 10 मिनट में 300 इवेंट तक. यह तरीका डिवाइस को लूप में चलने वाले इंस्ट्रुमेंट जो बहुत सारा परफ़ॉर्मेंस डेटा भेज सकते हैं और यह किसी एक डिवाइस को परफ़ॉर्मेंस के मेज़रमेंट पर असर डालने से रोकता है.
डाइनैमिक सैंपलिंग: Performance Monitoring, करीब 10 करोड़ की रेंज इकट्ठा करता है हर ऐप्लिकेशन के लिए, कोड ट्रेस के इवेंट और नेटवर्क रिक्वेस्ट ट्रेस के लिए 10 करोड़ सभी ऐप उपयोगकर्ताओं पर लागू होते हैं. Firebase Remote Config का इस्तेमाल करके, डिवाइसों पर डाइनैमिक सैंपलिंग रेट फ़ेच किया जाता है. इससे यह तय किया जाता है कि किसी डिवाइस को ट्रैक कैप्चर करके भेजना चाहिए या नहीं. जिस डिवाइस को सैंपलिंग के लिए नहीं चुना गया है वह कोई भी इवेंट भेजें. डाइनैमिक सैंपलिंग रेट, ऐप्लिकेशन के हिसाब से होता है. यह रेट, ऐप्लिकेशन के हिसाब से अडजस्ट होता है यह पक्का करें कि इकट्ठा किए गए डेटा का कुल वॉल्यूम, तय सीमा से कम रहे.
उपयोगकर्ता के सेशन, उपयोगकर्ता के डिवाइस से ज़्यादा जानकारी वाला डेटा भेजते हैं. इसके लिए यह ज़रूरी होता है कि डेटा को कैप्चर करने और भेजने के लिए ज़्यादा संसाधन उपलब्ध हैं. उपयोगकर्ताओं पर होने वाले असर को कम करने के लिए सेशन, Performance Monitoring भी सेशन की संख्या पर पाबंदी लगा सकता है.
सर्वर साइड रेट को सीमित करना: यह पक्का करने के लिए कि ऐप्लिकेशन, सैंपलिंग से ज़्यादा न हों सीमा, Performance Monitoring कुछ इवेंट को छोड़ने के लिए, सर्वर-साइड सैंपलिंग का इस्तेमाल कर सकता है डिवाइसों से मिले. हालांकि, विज्ञापनों को सीमित तौर पर दिखाने से, हमारी मेट्रिक के असर को कम करता है, इसलिए पैटर्न में मामूली बदलाव हो सकते हैं. इनमें ये बदलाव शामिल हैं फ़ॉलो किया जा रहा है:
- ट्रेस की संख्या, उस संख्या से अलग हो सकती है जितनी बार कोड चलाया गया.
- कोड में नज़दीक से जुड़े ट्रेस की संख्या अलग-अलग हो सकती है सैंपल.
कंसोल में समस्याएं टैब का क्या हुआ?
हमने 'समस्याएं' टैब की जगह अलर्ट की सुविधा शुरू कर दी है. अगर आपने थ्रेशोल्ड पार कर लिया है, तो आपको अपने-आप सूचना मिल जाएगी. आपने नहीं स्टेटस का पता लगाने के लिए, Firebase कंसोल को मैन्युअल तरीके से देखना होगा सीमा तय की गई है. सूचनाओं के बारे में जानने के लिए, परफ़ॉर्मेंस से जुड़ी समस्याओं के लिए सूचनाएं सेट अप करना लेख पढ़ें.
कंसोल में डिवाइस पर और नेटवर्क टैब का क्या हुआ? मैं उन पेजों पर मौजूद ट्रेस कैसे देखूं?
हमने Firebase कंसोल के Performance Monitoring सेक्शन को फिर से डिज़ाइन किया है, ताकि डैशबोर्ड टैब में आपकी मुख्य मेट्रिक और सभी ट्रेस एक ही जगह पर दिखें. जैसे हमने डिवाइस पर और नेटवर्क के पेजों को हटा दिया है.
डैशबोर्ड टैब के नीचे मौजूद ट्रेस टेबल में भी वही जानकारी मौजूद है डिवाइस पर और नेटवर्क टैब में दिखने वाली जानकारी, लेकिन कुछ सुविधाओं में जोड़ी गई सुविधाएं, जिनमें प्रतिशत के हिसाब से ट्रेस को क्रम से लगाने की सुविधा शामिल है देखें. किसी खास विषय से जुड़ी सभी मेट्रिक और डेटा देखने के लिए ट्रेस करें, ट्रेस टेबल में ट्रेस के नाम पर क्लिक करें.
ट्रेस टेबल के इन सबटैब में अपने ट्रेस देखें:
- नेटवर्क अनुरोध के ट्रेस (पहले से मौजूद अलग-अलग तरह के और अपनी पसंद के मुताबिक, दोनों) — नेटवर्क अनुरोध सबटैब
- कस्टम कोड ट्रेस — कस्टम ट्रेस सबटैब
- ऐप्लिकेशन को शुरू करना, ऐप्लिकेशन-इन-फ़ोरग्राउंड, और बैकग्राउंड में मौजूद ट्रेस की सुविधा — कस्टम ट्रेस सबटैब
- स्क्रीन रेंडरिंग के ट्रेस — स्क्रीन रेंडरिंग सबटैब
- पेज लोड के ट्रेस — पेज लोड सबटैब
ट्रेस टेबल और मेट्रिक और डेटा देखने के बारे में जानकारी के लिए, यहां जाएं कंसोल की खास जानकारी देने वाला पेज (iOS+ | Android | वेब).
धीमे और रुके हुए फ़्रेम की संख्या मेरी उम्मीद के मुताबिक क्यों नहीं है?
धीमे रेंडर होने वाले फ़्रेम और रुके हुए फ़्रेम का हिसाब लगाने के लिए, एक डिवाइस का इस्तेमाल किया जाता है रीफ़्रेश दर 60 हर्ट्ज़ होगी. अगर डिवाइस की रीफ़्रेश दर 60 हर्ट्ज़ से कम है, तो हर फ़्रेम रेंडर होने में ज़्यादा समय लगेगा, क्योंकि कम फ़्रेम प्रति सेकंड में रेंडर होते हैं. रेंडरिंग में ज़्यादा समय लगने की वजह से, रेंडर होने में ज़्यादा समय या रुके हुए फ़्रेम की रिपोर्ट की जा सकती है क्योंकि ज़्यादा फ़्रेम रेंडर होने में ज़्यादा समय लेंगे या फ़्रीज़ हो जाएंगे. हालांकि, अगर किसी डिवाइस को रीफ़्रेश दर 60 हर्ट्ज़ से ज़्यादा है, इसलिए हर फ़्रेम के रेंडर होने में ज़्यादा समय लगेगा. इससे, धीमे या फ़्रीज़ हुए फ़्रेम की कम रिपोर्ट मिल सकती है. यह मौजूदा Performance Monitoring SDK टूल में बताई गई सीमा.
मुझे फ़्रैगमेंट ट्रेस क्यों नहीं दिख रहे हैं?
ऐप्लिकेशन गतिविधि के अलावा फ़्रैगमेंट की परफ़ॉर्मेंस देखने के लिए, पक्का करें कि आपका ऐप्लिकेशन Performance Monitoring Android SDK के 20.1.0 या इसके बाद के वर्शन का इस्तेमाल कर रहा है. सीखने में ज़्यादा जानकारी के लिए, अपने ऐप्लिकेशन में परफ़ॉर्मेंस मॉनिटर करने की सुविधा जोड़ना को देखें.
मुझे कैसे पता चलेगा कि कौनसे ट्रेस फ़्रैगमेंट और गतिविधियों से जुड़े हैं?
हर फ़्रेगमेंट और गतिविधि के ट्रेस, आपके ऐप्लिकेशन में तय किए गए क्लास के नाम पर आधारित होते हैं. हर स्क्रीन ट्रेस में st प्रीफ़िक्स होता है क्लास का नाम डालें. Firebase कंसोल पर, प्रीफ़िक्स यह है हटाया गया. ज़्यादा जानने के लिए, स्क्रीन रेंडरिंग की परफ़ॉर्मेंस से जुड़े डेटा (Apple और Android ऐप्लिकेशन) के बारे में जानें लेख पढ़ें.
मुझे अन्य ट्रेस की तुलना में कम फ़्रैगमेंट ट्रेस क्यों दिख रहे हैं?
Performance Monitoring, किसी डिवाइस से इकट्ठा किए गए सभी इवेंट के लिए, इवेंट सैंपलिंग की सुविधा इस्तेमाल करता है. इस तरीके से, हमें उपयोगकर्ता के डिवाइसों से कम से कम उतने इवेंट इकट्ठा करने में मदद मिलती है जितने परफ़ॉर्मेंस मेट्रिक उपलब्ध कराने के लिए ज़रूरी होते हैं.
मेरी साइट के रेंडरिंग परफ़ॉर्मेंस में कोई समस्या होने पर मुझे कैसे सूचना दी जाएगी का इस्तेमाल करें?
Performance Monitoring की मदद से, उन मेट्रिक के लिए सूचनाएं सेट अप की जा सकती हैं जो आपके लिए अहम हैं. जनरेट किए गए दिखाई देता है, तो आप चेतावनियों को सेट अप कर सकते हैं, ताकि आपको रेंडर होने में ज़्यादा समय लेने वाले और रुके हुए फ़्रेम का प्रतिशत, आपके सेट किए गए थ्रेशोल्ड से ज़्यादा हो जाता है.
Performance Monitoring Gradle प्लग इन चालू करने के बाद, मेरे ऐप्लिकेशन को बिल्ड होने में ज़्यादा समय लग रहा है. ऑफ़र कैसे दें क्या मैं इसमें सुधार कर सकता हूँ?
Android के लिए Performance Monitoring, कुछ बेहतर सुविधाएं देने के लिए बाइटकोड इंस्ट्रूमेंटेशन का इस्तेमाल करता है. जैसे, एचटीटीपी/एचटीटीपीएस नेटवर्क रिक्वेस्ट को मॉनिटर करना. कंपाइल करने की प्रोसेस के तहत, आपके ऐप्लिकेशन की सभी क्लास (इनमें डिपेंडेंसी भी शामिल हैं) को दोहराना ज़रूरी होता है. ऐसा इसलिए किया जाता है, ताकि आपके ऐप्लिकेशन के नेटवर्क अनुरोध की परफ़ॉर्मेंस को मेज़र करने के लिए ज़रूरी कोड को इंस्ट्रूमेंट किया जा सके.
बिल्ड में लगने वाले समय को बढ़ाने में मदद करने वाले कुछ मुख्य लोगों के बारे में यहां बताया गया है:
- क्लास या फ़ाइलों की संख्या
- हर क्लास का साइज़ (कोड की लाइनें)
- आपका मशीन कॉन्फ़िगरेशन
- शुरुआती बिल्ड बनाम बाद के बिल्ड (बाद के बिल्ड आम तौर पर होते हैं) शुरुआती बिल्ड से ज़्यादा तेज़)
अपने बिल्ड टाइम को ऑप्टिमाइज़ करने के लिए, अपने कोड को मॉड्यूलर बनाएं.
Performance Monitoring प्लग इन के v1.3.3 से, हमने इंक्रीमेंटल बिल्ड प्रोसेसिंग और लाइब्रेरी इनपुट को कैश मेमोरी में सेव करने की सुविधा में काफ़ी सुधार किए हैं. बिल्ड में लगने वाले समय में किए गए सबसे नए सुधार पाने के लिए, इसका सबसे नया वर्शन प्लग-इन (वर्शन 1.4.2).
ध्यान दें कि आप Performance Monitoring प्लगिन अगर आपको बिल्ड में लगने वाले ज़्यादा समय से बचना है, तो आपके डीबग को स्थानीय तौर पर बनाया जा सकता है. हालांकि, प्रोडक्शन बिल्ड के लिए इस तरीके का सुझाव नहीं दिया जाता, क्योंकि इससे आपके ऐप्लिकेशन में नेटवर्क अनुरोधों की परफ़ॉर्मेंस के आकलन का आकलन नहीं किया गया है.
अगर मुझे Performance Monitoring Gradle प्लग इन के साथ काम न करने वाली लाइब्रेरी की वजह से बिल्ड में गड़बड़ियां मिलती हैं, तो मुझे क्या करना चाहिए?
Android के लिए Performance Monitoring, बाइटकोड इंस्ट्रुमेंटेशन का इस्तेमाल करता है, ताकि सबसे अलग सुविधाएं एचटीटीपी/एस नेटवर्क के अनुरोधों को मॉनिटर करना. कंपाइलेशन के तौर पर, इस प्रक्रिया में सभी क्लास को बार-बार दोहराना पड़ता है आपके ऐप्लिकेशन (डिपेंडेंसी के साथ) का इस्तेमाल करना ज़रूरी है, अपने ऐप्लिकेशन के नेटवर्क अनुरोध की परफ़ॉर्मेंस का आकलन कर सकते हैं.
अगर Performance Monitoring प्लगिन के साथ इंटिग्रेट करने के बाद, आपको बिल्ड से जुड़ी गड़बड़ियां मिलती हैं, जैसे कि JSR/RET are not supported with
computeFrames option
या इससे मिलती-जुलती गड़बड़ियां,
इसकी वजह यह हो सकती है कि आपके पास एक ऐसी लाइब्रेरी पर भी निर्भरता है जो आपके साथ काम नहीं करती
Performance Monitoring Gradle प्लग इन के साथ.
इससे बचने के लिए, मेल न खाने वाली क्लास/लाइब्रेरी को इंस्ट्रुमेंट किए जाने से रोका जा सकता है. इसके लिए, यह तरीका अपनाएं:
- Performance Monitoring Gradle प्लग इन (कम से कम v1.4.0) के सबसे नए वर्शन में अपडेट करें.
- अपने 'Android Gradle प्लग इन' को v7.2.0 या इसके बाद के वर्शन में अपडेट करें.
- अपने मॉड्यूल (ऐप्लिकेशन-लेवल) की
build.gradle
फ़ाइल में यह फ़्लैग जोड़ें, ताकि इस्तेमाल नहीं की जा सकने वाली क्लास/लाइब्रेरी को इंस्टॉल होने से रोका जा सके: 'Android Gradle प्लग इन' केandroid { // ... androidComponents { onVariants(selector().all(), { instrumentation.excludes.add("example.incompatible.library") }) } }
Instrumentation
एपीआई कीexclude
प्रॉपर्टी के बारे में ज़्यादा जानने के लिए, इंस्ट्रुमेंटेशन देखें.
कृपया GitHub समस्या दर्ज करें जब आपको काम न करने वाली लाइब्रेरी की वजह से होने वाली गड़बड़ियों का सामना करना पड़ता है, ताकि वे को Performance Monitoring प्लगिन में इस्तेमाल करने से बाहर रखा जाना चाहिए.
मेरे Performance Monitoring के डेटा को एक्सपोर्ट करने में उम्मीद से ज़्यादा समय लग रहा है BigQuery. क्या यह रीयल-टाइम नहीं है?
अगर आपने Firebase Performance Monitoring के लिए BigQuery इंटिग्रेशन चालू किया है, तो आपके डेटा को दिन खत्म होने के 12 से 24 घंटों के बाद (पैसिफ़िक समय पर) BigQuery में एक्सपोर्ट किया जाएगा समय).
उदाहरण के लिए, 19 अप्रैल का डेटा, 20 अप्रैल को दोपहर 12:00 बजे से लेकर आधी रात के बीच BigQuery में उपलब्ध होगा. सभी तारीखें और समय, पैसिफ़िक टाइम के हिसाब से हैं.
करीब-करीब रीयल-टाइम में डेटा प्रोसेस करना और दिखाना
"रीयल-टाइम के करीब" परफ़ॉर्मेंस डेटा का क्या मतलब है?
Firebase Performance Monitoring, इकट्ठा किया गया परफ़ॉर्मेंस डेटा, जैसे ही मिलता है उसे प्रोसेस कर देता है. इससे Firebase कंसोल में, करीब-करीब रीयल-टाइम डेटा दिखता है. प्रोसेस किया गया डेटा इकट्ठा होने के कुछ ही मिनट बाद कंसोल में दिखने लगता है, इसलिए शब्द "रीयल-टाइम के आस-पास".
करीब-करीब रीयल-टाइम डेटा प्रोसेसिंग का फ़ायदा पाने के लिए, पक्का करें कि आपका ऐप्लिकेशन रीयल-टाइम में काम करने वाला SDK टूल वर्शन है.
मैं अपने ऐप्लिकेशन के लिए करीब-करीब रीयल-टाइम में परफ़ॉर्मेंस का डेटा कैसे पाऊं?
करीब-करीब रीयल-टाइम डेटा प्रोसेसिंग का फ़ायदा पाने के लिए, आपको सिर्फ़ यह पक्का करना होगा कि कि आपका ऐप्लिकेशन, SDK टूल के Performance Monitoring वर्शन का इस्तेमाल करता है जो रीयल-टाइम के साथ काम करता है डेटा प्रोसेसिंग के बारे में ज़्यादा जानें.
यहां रीयल-टाइम में काम करने वाले SDK टूल के वर्शन दिए गए हैं:
- iOS — v7.3.0 या इसके बाद का वर्शन
- tvOS — v8.9.0 या इसके बाद के वर्शन
- Android — v19.0.10 या इसके बाद के वर्शन (या Firebase Android BoM v26.1.0 या इसके बाद के वर्शन)
- Web — v7.14.0 या इसके बाद का वर्शन
ध्यान दें कि हमारा सुझाव है कि आप SDK टूल के सबसे नए वर्शन का इस्तेमाल करें. हालांकि, ऊपर दिए गए किसी भी वर्शन का इस्तेमाल करने पर, Performance Monitoring आपके डेटा को रीयल टाइम में प्रोसेस कर पाएगा.
Performance Monitoring SDK टूल के किन वर्शन को रीयल-टाइम में काम करने वाला माना जाता है?
रीयल-टाइम डेटा प्रोसेसिंग के साथ काम करने वाले SDK टूल के वर्शन:
- iOS — v7.3.0 या इसके बाद का वर्शन
- tvOS — v8.9.0 या इसके बाद के वर्शन
- Android — v19.0.10 या इसके बाद के वर्शन (या Firebase Android BoM v26.1.0 या इसके बाद के वर्शन)
- Web — v7.14.0 या इसके बाद का वर्शन
ध्यान दें, हम हमेशा SDK के नए वर्शन का इस्तेमाल करने का सुझाव देते हैं, लेकिन किसी भी समय ऊपर दिया गया वर्शन, Performance Monitoring को करीब-करीब रीयल टाइम में आपके डेटा को प्रोसेस करने में मदद करेगा समय.
अगर मैं अपने ऐप्लिकेशन को रीयल-टाइम में काम करने वाले एसडीके वर्शन का इस्तेमाल करने के लिए अपडेट न करूं, तो क्या होगा?
अगर आपका ऐप्लिकेशन रीयल-टाइम में काम करने वाले एसडीके वर्शन का इस्तेमाल नहीं करता, तब भी आपको Firebase कंसोल में आपके ऐप्लिकेशन की परफ़ॉर्मेंस का सारा डेटा. हालांकि, डिसप्ले इसके बाद, परफ़ॉर्मेंस डेटा दिखने में संग्रह.
मैंने रीयल-टाइम के साथ काम करने वाले SDK टूल के वर्शन पर अपडेट किया है. हालांकि, मेरे कुछ उपयोगकर्ता मेरे ऐप्लिकेशन के पुराने वर्शन पर अभी भी काम करता है. क्या मुझे उनकी परफ़ॉर्मेंस लगातार दिखती रहेगी Firebase कंसोल में डेटा मौजूद है या नहीं?
हां! ऐप्लिकेशन इंस्टेंस भले ही SDK टूल के किसी भी वर्शन का इस्तेमाल करे, आपको हर बार परफ़ॉर्मेंस डेटा इकट्ठा किया जा सकता है.
हालांकि, अगर हाल ही का डेटा देखा जा रहा हो (करीब 36 घंटे से कम पुराना), तो दिखाया गया डेटा, रीयल-टाइम का इस्तेमाल करके ऐप्लिकेशन इंस्टेंस के उपयोगकर्ताओं का है साथ काम करने वाले SDK टूल का वर्शन. हालांकि, नए डेटा में आपके ऐप्लिकेशन के सभी वर्शन का परफ़ॉर्मेंस डेटा शामिल होता है.
Firebase सहायता टीम से संपर्क करना
अगर आपको Firebase की सहायता टीम से संपर्क करें. अपना Firebase ऐप्लिकेशन आईडी हमेशा शामिल करें. यहां अपना Firebase ऐप्लिकेशन आईडी देखें: आपका आपके ऐप्लिकेशन कार्ड settings प्रोजेक्ट सेटिंग को चुनें.