Crashlytics से जुड़ी समस्या हल करने और अक्सर पूछे जाने वाले सवाल
संग्रह की मदद से व्यवस्थित रहें
अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.
यह पेज, Crashlytics के इस्तेमाल के बारे में अक्सर पूछे जाने वाले
सवालों के जवाब और समस्या को हल करने में मदद करता है. अगर आपको यह नहीं मिल रहा है या आपको और मदद चाहिए, तो Firebase सहायता टीम से संपर्क करें.
सामान्य समस्याएं हल करना/अक्सर पूछे जाने वाले सवाल
समस्याएं टेबल में कुछ समस्याओं के लिए अलग-अलग फ़ॉर्मैट
(और कभी-कभी "वैरिएंट") देखना
आपको Firebase कंसोल में समस्याएं टेबल में
सूची में शामिल समस्याओं के लिए दो अलग-अलग फ़ॉर्मैट दिख सकते हैं. कुछ समस्याओं में आपको "वैरिएंट" नाम की सुविधा भी दिख सकती है. इसकी वजह यह है!
साल 2023 की शुरुआत में, हमने इवेंट का ग्रुप बनाने के लिए, विश्लेषण करने वाला एक बेहतर इंजन लॉन्च किया था. साथ ही, हमने अपडेट किए गए डिज़ाइन और नई समस्याओं (जैसे कि वैरिएंट) के लिए कुछ बेहतर सुविधाएं भी लॉन्च की थीं. ज़्यादा जानकारी के लिए, हमारी हाल ही की
ब्लॉग पोस्ट देखें. हालांकि, हाइलाइट के लिए नीचे दी गई जानकारी पढ़ें.
Crashlytics आपके ऐप्लिकेशन के सभी इवेंट (जैसे कि क्रैश, ऐप्लिकेशन बंद होने की समस्या, और ANRs) का विश्लेषण करता है और समस्याओं नाम के इवेंट का ग्रुप बनाता है. किसी समस्या के सभी इवेंट में एक ही वजह से गड़बड़ी होती है.
इवेंट को इन समस्याओं के हिसाब से ग्रुप में बांटने के लिए, बेहतर विश्लेषण इंजन अब इवेंट के कई पहलुओं को देखता है. इनमें स्टैक ट्रेस में मौजूद फ़्रेम, अपवाद मैसेज, गड़बड़ी कोड, और दूसरे प्लैटफ़ॉर्म या गड़बड़ी के प्रकारों की विशेषताएं शामिल हैं.
हालांकि, इवेंट के इस ग्रुप में काम न करने वाले स्टैक ट्रेस अलग हो सकते हैं. किसी अन्य स्टैक ट्रेस का मतलब अलग हो सकता है.
किसी समस्या के अंदर इस संभावित अंतर को दिखाने के लिए, अब हम समस्याओं के बीच वैरिएंट बनाते हैं. हर वैरिएंट, किसी समस्या वाले इवेंट का सब-ग्रुप होता है. इसमें एक जैसे फ़ेलियर पॉइंट और एक जैसे स्टैक ट्रेस होते हैं. वैरिएंट की मदद से, किसी समस्या में मौजूद सबसे सामान्य स्टैक ट्रेस को डीबग किया जा सकता है. साथ ही, यह पता लगाया जा सकता है कि क्या गड़बड़ी की वजह अलग-अलग हैं.
इन सुधारों के बाद आपको ये सुविधाएं मिलेंगी:
समस्या वाली लाइन में दिखाया गया मेटाडेटा में बदलाव किया गया है अब अपने ऐप्लिकेशन में समस्याओं को आसानी से समझा जा सकता है और उन्हें प्राथमिकता के हिसाब से व्यवस्थित किया जा सकता है.
डुप्लीकेट समस्याएं कम होना लाइन नंबर में बदलाव करने से नई समस्या नहीं आती है.
अलग-अलग असल वजहों से होने वाली जटिल समस्याओं को आसानी से डीबग करना किसी समस्या में मौजूद सबसे सामान्य स्टैक ट्रेस को डीबग करने के लिए, वैरिएंट का इस्तेमाल करें.
ज़्यादा काम की चेतावनियां और सिग्नल एक नई समस्या असल में एक नई गड़बड़ी को दिखाती है.
ज़्यादा असरदार तरीके से खोजने की सुविधा हर एक समस्या में, खोजने लायक ज़्यादा मेटाडेटा होता है, जैसे कि अपवाद का टाइप और पैकेज का नाम.
यहां बताया गया है कि इन सुधारों को कैसे लागू किया जा रहा है:
आपके ऐप्लिकेशन से नए इवेंट मिलने पर, हम जांच करेंगे कि क्या वे मौजूदा समस्या से मेल खाते हैं या नहीं.
अगर कोई मैच नहीं होता है, तो हम इवेंट में इवेंट को ग्रुप करने वाला हमारा बेहतर एल्गोरिदम अपने-आप लागू कर देंगे.
साथ ही, मेटाडेटा के नए डिज़ाइन में नई समस्या आ जाएगी.
अपने इवेंट के ग्रुप में करने के लिए यह पहला बड़ा अपडेट है. अगर आपका कोई सुझाव, शिकायत या राय है या आपको कोई समस्या आती है, तो कृपया
शिकायत दर्ज करके
हमें बताएं.
क्रैश-फ़्री मेट्रिक और/या रफ़्तार की सूचनाएं नहीं दिख रही हैं
अगर आपको ऐसी मेट्रिक (जैसे कि क्रैश का पता लगाने वाले उपयोगकर्ता और सेशन) और/या वेलोसिटी अलर्ट नहीं दिख रहे हैं
जिन पर क्रैश का असर नहीं हुआ है, तो पक्का करें कि
ब्रेडक्रंब लॉग नहीं दिख रहे हैं
अगर आपको
ब्रेडक्रंब लॉग नहीं दिख रहे हैं,
तो हमारा सुझाव है कि आप Google Analytics के लिए अपने ऐप्लिकेशन के कॉन्फ़िगरेशन की जांच करें.
पक्का करें कि आपने इन ज़रूरी शर्तों को पूरा किया हो:
आपने
. इस SDK टूल को Crashlytics SDK टूल में के साथ जोड़ा जाना चाहिए.
ऐप्लिकेशन में इस्तेमाल किए जाने वाले सभी प्रॉडक्ट के लिए.
किसी समस्या पर नोट कौन देख सकता है, लिख सकता है, और मिटा सकता है?
नोट की मदद से, प्रोजेक्ट के सदस्य सवाल, स्टेटस अपडेट वगैरह से जुड़ी खास समस्याओं पर टिप्पणी कर सकते हैं.
जब प्रोजेक्ट का कोई सदस्य कोई नोट पोस्ट करता है, तो उस पर उसके Google खाते के ईमेल का लेबल दिखता है. यह ईमेल पता नोट के साथ उन सभी प्रोजेक्ट सदस्यों को दिखता है जिनके पास नोट देखने का ऐक्सेस होता है.
नोट को देखने, लिखने, और मिटाने के लिए ज़रूरी ऐक्सेस के बारे में यहां बताया गया है:
प्रोजेक्ट के ऐसे सदस्य जिन्हें इनमें से कोई भी भूमिका असाइन की गई है वे मौजूदा नोट देख और मिटा सकते हैं. साथ ही, किसी समस्या पर नए नोट लिख सकते हैं.
किसी समस्या पर नोट कौन देख सकता है, लिख सकता है, और मिटा सकता है?
नोट की मदद से, प्रोजेक्ट के सदस्य सवाल, स्टेटस अपडेट वगैरह से जुड़ी खास समस्याओं पर टिप्पणी कर सकते हैं.
जब प्रोजेक्ट का कोई सदस्य कोई नोट पोस्ट करता है, तो उस पर उसके Google खाते के ईमेल का लेबल दिखता है. यह ईमेल पता नोट के साथ उन सभी प्रोजेक्ट सदस्यों को दिखता है जिनके पास नोट देखने का ऐक्सेस होता है.
नोट को देखने, लिखने, और मिटाने के लिए ज़रूरी ऐक्सेस के बारे में यहां बताया गया है:
प्रोजेक्ट के ऐसे सदस्य जिन्हें इनमें से कोई भी भूमिका असाइन की गई है वे मौजूदा नोट देख और मिटा सकते हैं. साथ ही, किसी समस्या पर नए नोट लिख सकते हैं.
ऐप्लिकेशन,
Google Mobile Ads SDK का भी इस्तेमाल करता है, लेकिन क्रैश नहीं होता
अगर आपके प्रोजेक्ट में Google Mobile Ads SDK के साथ Crashlytics का इस्तेमाल किया जाता है,
तो हो सकता है कि अपवाद हैंडलर को रजिस्टर करते समय क्रैश रिपोर्टर रुकावट डाल रहे हों. समस्या को ठीक करने के लिए, disableSDKCrashReporting पर कॉल करके Mobile Ads SDK में
क्रैश रिपोर्टिंग को बंद करें.
मेरा BigQuery डेटासेट कहां मौजूद है?
Crashlytics को BigQuery से लिंक करने के बाद, आपके बनाए गए नए डेटासेट, अमेरिका में अपने-आप सेव हो जाते हैं. इस बात से कोई फ़र्क़ नहीं पड़ता कि आपका Firebase प्रोजेक्ट कहां मौजूद है.
प्लैटफ़ॉर्म के बारे में सहायता
वापस ली गई समस्याएं
समस्या क्या है?
जब आपने किसी समस्या को पहले ही बंद कर दिया था, तब भी उस समस्या का रिग्रेशन होता है. हालांकि,
Crashlytics को एक नई रिपोर्ट मिलती है कि यह समस्या फिर से आ गई है.
Crashlytics से, वापस आने वाली इन समस्याओं को अपने-आप फिर से खोला जाता है, ताकि आप इन्हें अपने ऐप्लिकेशन के हिसाब से ठीक कर सकें.
यहां एक उदाहरण दिया गया है, जिसमें बताया गया है कि Crashlytics किसी समस्या को रिग्रेशन की कैटगरी में कैसे बांटता है:
Crashlytics को पहली बार क्रैश “A” की क्रैश रिपोर्ट मिली है. Crashlytics से, उस क्रैश से जुड़ी समस्या (समस्या "A") को खोलने में मदद मिलती है.
इस गड़बड़ी को जल्दी ठीक करें, समस्या "A" को बंद करें, और फिर अपने ऐप्लिकेशन का नया वर्शन रिलीज़ करें.
जब आपने समस्या हल कर ली होती है, तब Crashlytics को समस्या "A" के बारे में दूसरी रिपोर्ट मिलती है.
अगर रिपोर्ट, ऐप्लिकेशन के किसी ऐसे वर्शन से है जिसके बारे में Crashlytics को पता है कि आपने समस्या को बंद किया था. इसका मतलब है कि वर्शन ने किसी भी क्रैश के लिए क्रैश रिपोर्ट भेजी थी, तो Crashlytics को यह नहीं दिखेगा कि समस्या को वापस लिया गया है. समस्या बंद ही रहेगी.
अगर रिपोर्ट ऐप्लिकेशन के किसी ऐसे वर्शन से है जिसे Crashlytics से बंद नहीं किया गया है (इसका मतलब है कि वर्शन ने किसी भी क्रैश के लिए, कभी कोई कोई क्रैश रिपोर्ट नहीं भेजी है), तो Crashlytics यह मानता है कि समस्या ठीक की जा चुकी है और वह इसे फिर से खोलेगा.
जब कोई समस्या वापस आती है, तो हम एक रिग्रेशन सिग्नल की चेतावनी भेजते हैं और उसमें एक रिग्रेशन सिग्नल जोड़ते हैं. इससे आपको पता चलता है कि Crashlytics ने समस्या को फिर से ठीक कर दिया है. अगर आपको हमारे रिग्रेशन एल्गोरिदम की वजह से समस्या को फिर से नहीं दिखाना है, तो समस्या को बंद करने के बजाय उसे "म्यूट" करें.
मुझे ऐप्लिकेशन के पुराने वर्शन के लिए, वापस
आने वाली समस्याएं क्यों दिख रही हैं?
अगर कोई रिपोर्ट ऐप्लिकेशन के किसी पुराने वर्शन की है, जिसने समस्या को बंद करते समय
कभी भी कोई क्रैश रिपोर्ट नहीं भेजी थी, तो Crashlytics समस्या को वापस समस्या के तौर पर
रखता है और समस्या को फिर से खोलेगा.
यह स्थिति नीचे दी गई स्थिति में हो सकती है: आपने गड़बड़ी ठीक कर दी है और अपने ऐप्लिकेशन का
एक नया वर्शन रिलीज़ किया है, लेकिन आपके पास अब भी ऐसे उपयोगकर्ता हैं जो
गड़बड़ी को ठीक किए बिना पुराने वर्शन का इस्तेमाल कर रहे हैं. अगर, संयोग से, उन पुराने वर्शन में से किसी ने समस्या को बंद करते समय
कोई भी क्रैश रिपोर्ट कभी नहीं भेजी थी और उन उपयोगकर्ताओं को
गड़बड़ी का सामना करना पड़ता है, तो वे क्रैश रिपोर्ट एक वापस आकर ट्रिगर होने वाली समस्या को ट्रिगर करेंगी.
अगर आपको हमारे रिग्रेशन एल्गोरिदम की वजह से समस्या को फिर से नहीं खोलना है, तो समस्या को बंद करने के बजाय, "म्यूट करें".