Performance Monitoring, ट्रेस इकट्ठा करता है, ताकि आप अपने ऐप्लिकेशन की परफ़ॉर्मेंस को मॉनिटर कर सकें. ट्रेस, आपके ऐप्लिकेशन में दो समय के बीच कैप्चर किए गए परफ़ॉर्मेंस डेटा की रिपोर्ट होती है.
अपने ऐप्लिकेशन में मौजूद किसी खास कोड से जुड़े परफ़ॉर्मेंस डेटा को मॉनिटर करने के लिए, खुद के ट्रेस बनाए जा सकते हैं. कस्टम कोड ट्रेस की मदद से, यह मेज़र किया जा सकता है कि आपके ऐप्लिकेशन को किसी खास टास्क या टास्क के सेट को पूरा करने में कितना समय लगता है. उदाहरण के लिए, इमेज के सेट को लोड करने या अपने डेटाबेस से क्वेरी करने में कितना समय लगता है.
कस्टम कोड ट्रेस के लिए डिफ़ॉल्ट मेट्रिक, इसकी "अवधि" होती है. यह ट्रेस के शुरू और खत्म होने के बीच का समय होता है. हालांकि, इसमें कस्टम मेट्रिक भी जोड़ी जा सकती हैं.
अपने कोड में, Performance Monitoring एसडीके से मिले एपीआई का इस्तेमाल करके, कस्टम कोड ट्रेस की शुरुआत और खत्म होने की जानकारी दी जाती है.
Android ऐप्लिकेशन के लिए, @AddTrace एनोटेशन का इस्तेमाल करके, खास तरीकों को भी मॉनिटर किया जा सकता है.
कस्टम कोड ट्रेस को बनाने के बाद, कभी भी शुरू किया जा सकता है. साथ ही, ये थ्रेड सेफ़ होते हैं.
इन ट्रेस के लिए इकट्ठा की गई डिफ़ॉल्ट मेट्रिक "अवधि" होती है. इसलिए, इन्हें कभी-कभी "अवधि ट्रेस" भी कहा जाता है.
इन ट्रेस का डेटा, ट्रेस टेबल के कस्टम ट्रेस सब-टैब में देखा जा सकता है. यह टेबल, परफ़ॉर्मेंस डैशबोर्ड में सबसे नीचे होती है. इस पेज पर, कंसोल का इस्तेमाल करने के बारे में ज़्यादा जानें.
डिफ़ॉल्ट एट्रिब्यूट, कस्टम एट्रिब्यूट, और कस्टम मेट्रिक
कस्टम कोड ट्रेस के लिए, Performance Monitoring डिफ़ॉल्ट एट्रिब्यूट को अपने-आप लॉग करता है. इनमें ऐप्लिकेशन का वर्शन, देश, डिवाइस वगैरह जैसे सामान्य मेटाडेटा शामिल हैं. इससे Firebase कंसोल में ट्रेस के लिए डेटा को फ़िल्टर किया जा सकता है. कस्टम एट्रिब्यूट (जैसे, गेम लेवल या उपयोगकर्ता प्रॉपर्टी) को भी जोड़ा और मॉनिटर किया जा सकता है.कस्टम कोड ट्रेस को कॉन्फ़िगर करके, परफ़ॉर्मेंस से जुड़े इवेंट के लिए कस्टम मेट्रिक रिकॉर्ड की जा सकती हैं. ये इवेंट, ट्रेस के दायरे में होते हैं. उदाहरण के लिए, कैश मेमोरी में हिट और मिस की संख्या या यूज़र इंटरफ़ेस (यूआई) के कुछ समय तक काम न करने की संख्या के लिए, कस्टम मेट्रिक बनाई जा सकती है.
कस्टम एट्रिब्यूट और कस्टम मेट्रिक, Firebase कंसोल में ट्रेस के लिए डिफ़ॉल्ट एट्रिब्यूट और डिफ़ॉल्ट मेट्रिक के साथ दिखती हैं.
कस्टम कोड ट्रेस जोड़ना
Performance Monitoring Trace API का इस्तेमाल करके, कस्टम कोड ट्रेस जोड़ें. इससे ऐप्लिकेशन के खास कोड को मॉनिटर किया जा सकता है.
निम्न पर ध्यान दें:
- किसी ऐप्लिकेशन में कई कस्टम कोड ट्रेस हो सकते हैं.
- एक ही समय पर, कस्टम कोड ट्रेस की एक से ज़्यादा प्रोसेस चल सकती हैं.
- कस्टम कोड ट्रेस के नामों के लिए, ये ज़रूरी शर्तें पूरी होनी चाहिए: नाम की शुरुआत या आखिर में कोई खाली जगह नहीं होनी चाहिए, नाम की शुरुआत में अंडरस्कोर (
_) वर्ण नहीं होना चाहिए, और नाम में ज़्यादा से ज़्यादा 100 वर्ण होने चाहिए. - कस्टम कोड ट्रेस में, कस्टम मेट्रिक और कस्टम एट्रिब्यूट जोड़े जा सकते हैं.
कस्टम कोड ट्रेस को शुरू और बंद करने के लिए, उस कोड को रैप करें जिसे आपको ट्रेस करना है. इसके लिए, यहां दिए गए कोड की तरह ही कोड की लाइनों का इस्तेमाल करें. इस उदाहरण में, कस्टम ट्रेस के नाम के तौर पर test_trace का इस्तेमाल किया गया है:
Kotlin
// Import these Performance Monitoring classes at the top of your `.kt` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; val myTrace = Firebase.performance.newTrace("test_trace") myTrace.start() // code that you want to trace myTrace.stop()
Java
// Import these Performance Monitoring classes at the top of your `.java` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace"); myTrace.start(); // code that you want to trace myTrace.stop();
(ज़रूरी नहीं) @AddTrace का इस्तेमाल करके, खास तरीकों को मॉनिटर करना
Android ऐप्लिकेशन, @AddTrace
एनोटेशन
का भी इस्तेमाल करते हैं. इससे, कस्टम कोड ट्रेस को इंस्ट्रुमेंट किया जा सकता है. इस सुविधा का इस्तेमाल करने पर, ट्रेस की प्रोसेस तय किए गए तरीके की शुरुआत से शुरू होती है और तरीका पूरा होने पर बंद हो जाती है. इसमें, तरीके से शुरू की गई कोई भी प्रोसेस शामिल होती है.
उदाहरण के लिए, onCreateTrace नाम का कस्टम कोड ट्रेस बनाया जा सकता है. यह onCreate() तरीके को कॉल करने पर चलता है.
Kotlin
// Import these Performance Monitoring classes at the top of your `.kt` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.AddTrace; // Add the `@AddTrace` annotation above the method you want to trace // the `enabled` argument is optional and defaults to true @AddTrace(name = "onCreateTrace", enabled = true) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) }
Java
// Import these Performance Monitoring classes at the top of your `.java` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.AddTrace; // Add the `@AddTrace` annotation above the method you want to trace @Override @AddTrace(name = "onCreateTrace", enabled = true /* optional */) protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); }
कस्टम कोड ट्रेस में कस्टम मेट्रिक जोड़ना
कस्टम कोड ट्रेस में कस्टम मेट्रिक जोड़ने के लिए, Performance Monitoring Trace API का इस्तेमाल करें.
निम्न पर ध्यान दें:
- कस्टम मेट्रिक के नाम के लिए, ये ज़रूरी शर्तें पूरी होनी चाहिए:
नाम की शुरुआत या आखिर में कोई व्हाइटस्पेस नहीं होना चाहिए, नाम की शुरुआत में अंडरस्कोर (
_) वर्ण नहीं होना चाहिए, और नाम में ज़्यादा से ज़्यादा 100 वर्ण होने चाहिए. - हर कस्टम कोड ट्रेस में, ज़्यादा से ज़्यादा 32 मेट्रिक रिकॉर्ड की जा सकती हैं. इनमें डिफ़ॉल्ट अवधि मेट्रिक भी शामिल है.
कोई कस्टम मेट्रिक जोड़ने के लिए, हर बार इवेंट होने पर, यहां दिए गए कोड की तरह ही कोड की एक लाइन जोड़ें. उदाहरण के लिए, यह कस्टम मेट्रिक आपके ऐप्लिकेशन में होने वाले परफ़ॉर्मेंस से जुड़े इवेंट की गिनती करती है. जैसे, कैश हिट और मिस. इसके लिए, इवेंट के नाम के उदाहरण के तौर पर item_cache_hit और item_cache_miss का इस्तेमाल किया जाता है. साथ ही, 1 की बढ़ोतरी की जाती है.
Kotlin
val myTrace = Firebase.performance.newTrace("test_trace") myTrace.start() // code that you want to trace (and log custom metrics) val item = cache.fetch("item") if (item != null) { myTrace.incrementMetric("item_cache_hit", 1) } else { myTrace.incrementMetric("item_cache_miss", 1) } myTrace.stop()
Java
Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace"); myTrace.start(); // code that you want to trace (and log custom metrics) Item item = cache.fetch("item"); if (item != null) { myTrace.incrementMetric("item_cache_hit", 1); } else { myTrace.incrementMetric("item_cache_miss", 1); } myTrace.stop();
कस्टम कोड ट्रेस के लिए कस्टम एट्रिब्यूट बनाना
कस्टम कोड ट्रेस में कस्टम एट्रिब्यूट जोड़ने के लिए, Performance Monitoring Trace API का इस्तेमाल करें.कस्टम एट्रिब्यूट इस्तेमाल करने के लिए, अपने ऐप्लिकेशन में ऐसा कोड जोड़ें जो एट्रिब्यूट को तय करता हो और उसे कस्टम कोड ट्रेस से जोड़ता हो. ट्रेस शुरू होने और ट्रेस बंद होने के बीच, किसी भी समय कस्टम एट्रिब्यूट को सेट किया जा सकता है.
निम्न पर ध्यान दें:
कस्टम एट्रिब्यूट के नाम इन ज़रूरी शर्तों के मुताबिक होने चाहिए:
- शुरू या आखिर में कोई खाली सफ़ेद जगह नहीं होनी चाहिए. साथ ही, शुरुआत में अंडरस्कोर (
_) वर्ण नहीं होना चाहिए - कोई स्पेस नहीं
- ज़्यादा से ज़्यादा 32 वर्ण इस्तेमाल किए जा सकते हैं
- नाम में
A-Z,a-z, और_वर्णों का इस्तेमाल किया जा सकता है.
- शुरू या आखिर में कोई खाली सफ़ेद जगह नहीं होनी चाहिए. साथ ही, शुरुआत में अंडरस्कोर (
हर कस्टम कोड ट्रेस में, ज़्यादा से ज़्यादा पांच कस्टम एट्रिब्यूट रिकॉर्ड किए जा सकते हैं.
कृपया पक्का करें कि कस्टम एट्रिब्यूट में ऐसी कोई जानकारी शामिल न हो जिससे Google को किसी व्यक्ति की व्यक्तिगत पहचान ज़ाहिर हो.
इस दिशा-निर्देश के बारे में ज़्यादा जानें
Kotlin
Firebase.performance.newTrace("test_trace").trace { // Update scenario. putAttribute("experiment", "A") // Reading scenario. val experimentValue = getAttribute("experiment") // Delete scenario. removeAttribute("experiment") // Read attributes. val traceAttributes = this.attributes }
Java
Trace trace = FirebasePerformance.getInstance().newTrace("test_trace"); // Update scenario. trace.putAttribute("experiment", "A"); // Reading scenario. String experimentValue = trace.getAttribute("experiment"); // Delete scenario. trace.removeAttribute("experiment"); // Read attributes. Map<String, String> traceAttributes = trace.getAttributes();
परफ़ॉर्मेंस डेटा को ट्रैक करना, देखना, और फ़िल्टर करना
अपने डैशबोर्ड में खास मेट्रिक ट्रैक करना
आपकी मुख्य मेट्रिक का रुझान कैसा है, यह जानने के लिए उन्हें परफ़ॉर्मेंस डैशबोर्ड में सबसे ऊपर मौजूद मेट्रिक बोर्ड में जोड़ें. हफ़्ते-दर-हफ़्ते होने वाले बदलावों को देखकर, रिग्रेशन की तुरंत पहचान की जा सकती है. इसके अलावा, यह भी पुष्टि की जा सकती है कि आपके कोड में हाल ही में किए गए बदलावों से परफ़ॉर्मेंस बेहतर हो रही है या नहीं.
Firebase प्रदर्शन मॉनिटर करना डैशबोर्ड" />
अपने मेट्रिक बोर्ड में कोई मेट्रिक जोड़ने के लिए, यह तरीका अपनाएं:
- Firebase कंसोल में, परफ़ॉर्मेंस डैशबोर्ड पर जाएं.
- किसी खाली मेट्रिक कार्ड पर क्लिक करें. इसके बाद, अपने बोर्ड में जोड़ने के लिए कोई मौजूदा मेट्रिक चुनें.
- किसी मेट्रिक कार्ड पर ज़्यादा विकल्प देखने के लिए, पर क्लिक करें. उदाहरण के लिए, किसी मेट्रिक को बदलने या हटाने के लिए.
मेट्रिक्स बोर्ड, समय के साथ इकट्ठा किए गए मेट्रिक डेटा को दिखाता है. यह डेटा, ग्राफ़िकल फ़ॉर्म और संख्या के प्रतिशत में हुए बदलाव, दोनों के तौर पर दिखता है.
डैशबोर्ड का इस्तेमाल करने के बारे में ज़्यादा जानें.
ट्रेस और उनका डेटा देखना
अपने ट्रेस देखने के लिए, Firebase कंसोल में परफ़ॉर्मेंस डैशबोर्ड पर जाएं. इसके बाद, नीचे की ओर स्क्रोल करके ट्रेस टेबल पर जाएं और सही सब-टैब पर क्लिक करें. टेबल में हर ट्रेस के लिए कुछ टॉप मेट्रिक दिखती हैं. साथ ही, किसी खास मेट्रिक के लिए, प्रतिशत में हुए बदलाव के हिसाब से सूची को क्रम से लगाया जा सकता है.
Performance Monitoring, Firebase कंसोल में समस्या हल करने वाला पेज उपलब्ध कराता है. इसमें मेट्रिक में हुए बदलावों को हाइलाइट किया जाता है. इससे आपके ऐप्लिकेशन और उपयोगकर्ताओं पर परफ़ॉर्मेंस की समस्याओं के असर को कम करने और उन्हें तुरंत ठीक करने में मदद मिलती है. परफ़ॉर्मेंस से जुड़ी संभावित समस्याओं के बारे में जानने के लिए, समस्या हल करने वाले पेज का इस्तेमाल किया जा सकता है. उदाहरण के लिए, इन स्थितियों में:
- डैशबोर्ड पर काम की मेट्रिक चुनने पर, आपको एक बड़ा डेल्टा दिखता है.
- ट्रेस टेबल में, सबसे बड़े डेल्टा को सबसे ऊपर दिखाने के लिए क्रम से लगाया जाता है. साथ ही, आपको प्रतिशत में काफ़ी बदलाव दिखता है.
- आपको परफ़ॉर्मेंस की समस्या के बारे में ईमेल से सूचना मिलती है.
समस्या हल करने वाले पेज को इन तरीकों से ऐक्सेस किया जा सकता है:
- मेट्रिक डैशबोर्ड पर, मेट्रिक की जानकारी देखें बटन पर क्लिक करें.
- किसी भी मेट्रिक कार्ड पर,
=> जानकारी देखें को चुनें. समस्या हल करने वाले पेज पर, आपकी चुनी गई मेट्रिक के बारे में जानकारी दिखती है. - ट्रेस टेबल में, किसी ट्रेस के नाम या उससे जुड़ी लाइन में मौजूद किसी मेट्रिक वैल्यू पर क्लिक करें.
- ईमेल से मिली सूचना में, अभी जांच करें पर क्लिक करें.
ट्रेस टेबल में किसी ट्रेस के नाम पर क्लिक करके, अपनी पसंद की मेट्रिक के बारे में ज़्यादा जानकारी पाई जा सकती है. एट्रिब्यूट के हिसाब से डेटा को फ़िल्टर करने के लिए,
Firebase परफ़ॉर्मेंस मॉनिटरिंग के डेटा को एट्रिब्यूट के हिसाब से फ़िल्टर किया जा रहा है" />
- किसी पिछली रिलीज़ या अपनी नई रिलीज़ का डेटा देखने के लिए, ऐप्लिकेशन के वर्शन के हिसाब से फ़िल्टर करें
- डिवाइस के हिसाब से फ़िल्टर करके जानें कि पुराने डिवाइसों पर आपका ऐप्लिकेशन कैसा परफ़ॉर्म करता है
- देश के हिसाब से फ़िल्टर करें, ताकि यह पक्का किया जा सके कि आपके डेटाबेस की जगह से किसी खास इलाके पर असर न पड़ रहा हो
ट्रेस के लिए डेटा देखने के बारे में ज़्यादा जानें.
अगले चरण
परफ़ॉर्मेंस डेटा की जांच करने के लिए, एट्रिब्यूट इस्तेमाल करने के बारे में ज़्यादा जानें.
Firebase कंसोल में, परफ़ॉर्मेंस की समस्याओं को ट्रैक करने के तरीके के बारे में ज़्यादा जानें.
कोड में होने वाले ऐसे बदलावों के लिए सूचनाएं सेट अप करें जिनसे आपके ऐप्लिकेशन की परफ़ॉर्मेंस खराब हो रही है. उदाहरण के लिए, अगर किसी कस्टम कोड ट्रेस की अवधि आपके सेट किए गए थ्रेशोल्ड से ज़्यादा हो जाती है, तो अपनी टीम के लिए ईमेल से सूचना पाने की सुविधा कॉन्फ़िगर की जा सकती है.
- उपयोगकर्ता सेशन की ज़्यादा जानकारी वाली रिपोर्ट देखें. इनमें, आपको किसी खास ट्रेस को उसी सेशन के दौरान इकट्ठा किए गए अन्य ट्रेस की टाइमलाइन के हिसाब से देखने का विकल्प मिलता है.