खास ऐप्लिकेशन कोड के लिए, अपने हिसाब से मॉनिटरिंग की सुविधा चालू करें


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

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

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

अपने कोड में, Performance Monitoring SDK टूल से मिले एपीआई का इस्तेमाल करके, कस्टम कोड ट्रेस की शुरुआत और आखिर को तय किया जाता है. कस्टम कोड ट्रेस बनाने के बाद, उन्हें कभी भी चालू किया जा सकता है. ये थ्रेड सुरक्षित हैं.

इन ट्रेस के लिए इकट्ठा की गई डिफ़ॉल्ट मेट्रिक "अवधि" है. इसलिए, इन्हें कभी-कभी "अवधि ट्रेस" भी कहा जाता है.

ट्रेस टेबल के कस्टम ट्रेस सबटैब में इन ट्रेस का डेटा देखा जा सकता है. यह सबटेबल परफ़ॉर्मेंस डैशबोर्ड में सबसे नीचे मौजूद होती है. कंसोल का इस्तेमाल करने के बारे में बाद में ज़्यादा जानें.

डिफ़ॉल्ट एट्रिब्यूट, कस्टम एट्रिब्यूट, और कस्टम मेट्रिक

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

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

कस्टम एट्रिब्यूट और कस्टम मेट्रिक, Firebase कंसोल में दिखती हैं. साथ ही, इनमें ट्रेस के लिए डिफ़ॉल्ट एट्रिब्यूट और डिफ़ॉल्ट मेट्रिक भी दिखती हैं.

कस्टम कोड ट्रेस जोड़ना

खास ऐप्लिकेशन कोड को मॉनिटर करने के लिए, कस्टम कोड ट्रेस जोड़ने के लिए Performance Monitoring ट्रेस एपीआई (Swift | Obj-C) का इस्तेमाल करें.

निम्न पर ध्यान दें:

  • किसी ऐप्लिकेशन में कई कस्टम कोड ट्रेस हो सकते हैं.
  • एक समय में एक से ज़्यादा कस्टम कोड ट्रेस चलाए जा सकते हैं.
  • कस्टम कोड ट्रेस के नामों को इन ज़रूरी शर्तों को पूरा करना होगा: शुरुआत या आखिर में कोई खाली जगह नहीं होनी चाहिए, शुरुआत में अंडरस्कोर (_) वर्ण नहीं होना चाहिए, और नाम की लंबाई 100 से ज़्यादा वर्ण नहीं होनी चाहिए.
  • कस्टम कोड ट्रेस में, कस्टम मेट्रिक और कस्टम एट्रिब्यूट जोड़े जा सकते हैं.

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

Swift

ध्यान दें: Firebase का यह प्रॉडक्ट, macOS, Mac Catalyst, और watchOS टारगेट पर उपलब्ध नहीं है.
// Add the Performance Monitoring module to your header
import FirebasePerformance

let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

// code that you want to trace

trace.stop()

Objective-C

ध्यान दें: Firebase का यह प्रॉडक्ट, macOS, Mac Cat कोर्स, WatchOS टारगेट पर उपलब्ध नहीं है.
// Add the Performance Monitoring module to your header
@import FirebasePerformance;

FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

// code that you want to trace

[trace stop];

कस्टम कोड ट्रेस में कस्टम मेट्रिक जोड़ना

कस्टम कोड ट्रेस में कस्टम मेट्रिक जोड़ने के लिए, Performance Monitoring ट्रेस एपीआई (Swift | Obj-C) का इस्तेमाल करें.

निम्न पर ध्यान दें:

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

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

Swift

ध्यान दें: Firebase का यह प्रॉडक्ट, macOS, Mac Catalyst, और watchOS टारगेट पर उपलब्ध नहीं है.
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

trace.incrementMetric(named:"EVENT_NAME", by: 1)
// code that you want to trace (and log custom metrics)

trace.stop()

Objective-C

ध्यान दें: Firebase का यह प्रॉडक्ट, macOS, Mac Catalyst, और watchOS टारगेट पर उपलब्ध नहीं है.
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

[trace incrementMetric:@"EVENT_NAME" byInt:1];
// code that you want to trace (and log custom metrics)

[trace stop];

कस्टम कोड ट्रेस के लिए कस्टम एट्रिब्यूट बनाना

कस्टम कोड ट्रेस में कस्टम एट्रिब्यूट जोड़ने के लिए, Performance Monitoring Trace API (Swift | Obj-C) का इस्तेमाल करें.

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

निम्न पर ध्यान दें:

  • कस्टम एट्रिब्यूट के नाम नीचे दी गई ज़रूरी शर्तों के मुताबिक होने चाहिए:

    • इसकी शुरुआत या आखिर में कोई खाली सफ़ेद जगह नहीं है. इसके आगे कोई अंडरस्कोर (_) वर्ण नहीं है
    • कोई स्पेस नहीं है
    • ज़्यादा से ज़्यादा 32 वर्ण इस्तेमाल किए जा सकते हैं
    • नाम के लिए A-Z, a-z, और _ वर्ण इस्तेमाल किए जा सकते हैं.
  • हर कस्टम कोड ट्रेस में ज़्यादा से ज़्यादा पांच कस्टम एट्रिब्यूट रिकॉर्ड किए जा सकते हैं.

  • कृपया पक्का करें कि कस्टम एट्रिब्यूट में ऐसी कोई जानकारी शामिल न हो जिससे Google को किसी व्यक्ति की पहचान की जानकारी मिल सके.

    इस दिशा-निर्देश के बारे में ज़्यादा जानें

Swift

ध्यान दें: Firebase का यह प्रॉडक्ट, macOS, Mac Catalyst, और watchOS टारगेट पर उपलब्ध नहीं है.
let trace = Performance.startTrace(name: "CUSTOM_TRACE_NAME")

trace.setValue("A", forAttribute: "experiment")

// Update scenario.
trace.setValue("B", forAttribute: "experiment")

// Reading scenario.
let experimentValue:String? = trace.valueForAttribute("experiment")

// Delete scenario.
trace.removeAttribute("experiment")

// Read attributes.
let attributes:[String, String] = trace.attributes;

Objective-C

ध्यान दें: Firebase का यह प्रॉडक्ट, macOS, Mac Catalyst, और watchOS टारगेट पर उपलब्ध नहीं है.
FIRTrace *trace = [FIRPerformance startTraceWithName:@"CUSTOM_TRACE_NAME"];

[trace setValue:@"A" forAttribute:@"experiment"];

// Update scenario.
[trace setValue:@"B" forAttribute:@"experiment"];

// Reading scenario.
NSString *experimentValue = [trace valueForAttribute:@"experiment"];

// Delete scenario.
[trace removeAttribute:@"experiment"];

// Read attributes.
NSDictionary <NSString *, NSString *> *attributes = [trace attributes];

परफ़ॉर्मेंस डेटा को ट्रैक करना, देखना, और फ़िल्टर करना

अपने डैशबोर्ड में खास मेट्रिक ट्रैक करना

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

मेट्रिक बोर्ड की एक इमेज <span class=Firebase परफ़ॉर्मेंस मॉनिटर करने वाला डैशबोर्ड" />

अपने मेट्रिक बोर्ड में कोई मेट्रिक जोड़ने के लिए, यह तरीका अपनाएं:

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

मेट्रिक बोर्ड, समय के साथ इकट्ठा की गई मेट्रिक का डेटा दिखाता है. यह डेटा, ग्राफ़िक के तौर पर और संख्या के प्रतिशत में, दोनों तरह से दिखता है.

डैशबोर्ड का इस्तेमाल करने के बारे में ज़्यादा जानें.

ट्रेस और उनका डेटा देखें

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

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

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

समस्या हल करने वाले पेज को इन तरीकों से ऐक्सेस किया जा सकता है:

  • मेट्रिक डैशबोर्ड पर, मेट्रिक की जानकारी देखें बटन पर क्लिक करें.
  • किसी भी मेट्रिक कार्ड पर, => जानकारी देखें को चुनें. समस्या हल करने वाले पेज पर, आपने जो मेट्रिक चुनी है उसके बारे में जानकारी दिखती है.
  • ट्रेस टेबल में, किसी ट्रेस के नाम या उससे जुड़ी लाइन में मौजूद किसी भी मेट्रिक वैल्यू पर क्लिक करें.
  • ईमेल सूचना में, अभी जांच करें पर क्लिक करें.

ट्रेस टेबल में किसी ट्रेस के नाम पर क्लिक करने के बाद, अपनी पसंद के हिसाब से मेट्रिक में ड्रिल-डाउन किया जा सकता है. एट्रिब्यूट के हिसाब से डेटा को फ़िल्टर करने के लिए, फ़िल्टर करें बटन पर क्लिक करें. उदाहरण के लिए:

<span class= की एक इमेजएट्रिब्यूट के हिसाब से, Firebase की परफ़ॉर्मेंस मॉनिटर करने से जुड़ा डेटा फ़िल्टर किया जा रहा है" />
  • किसी पिछली रिलीज़ या अपनी नई रिलीज़ का डेटा देखने के लिए, ऐप्लिकेशन के वर्शन के हिसाब से फ़िल्टर करें
  • डिवाइस के हिसाब से फ़िल्टर करके, यह जानें कि पुराने डिवाइस आपके ऐप्लिकेशन को कैसे हैंडल करते हैं
  • देश के हिसाब से फ़िल्टर करके, यह पक्का करें कि आपके डेटाबेस की जगह किसी खास इलाके पर असर न डाल रही हो

अपने ट्रेस का डेटा देखने के बारे में ज़्यादा जानें.

अगले चरण

  • उपयोगकर्ता के सेशन की ज़्यादा जानकारी वाली रिपोर्ट देखें. इनमें एक ही सेशन के दौरान इकट्ठा किए गए अन्य ट्रेस की टाइमलाइन में कोई खास ट्रेस देखी जा सकती है.