इस पेज पर, Cloud Firestore के लिए Cloud Monitoring मेट्रिक इस्तेमाल करने का तरीका बताया गया है, ताकि अपने डेटाबेस को मॉनिटर किया जा सके.
Cloud Firestore के लिए Cloud Monitoring मेट्रिक
यहां दिए गए सेक्शन में, Cloud Firestore के लिए उपलब्ध मेट्रिक के बारे में खास जानकारी दी गई है.
मॉनिटर किए गए संसाधन
Cloud Monitoring में मॉनिटर की गई कोई संसाधन, लॉजिकल या फ़िज़िकल इकाई को दिखाता है. जैसे, वर्चुअल मशीन, डेटाबेस या ऐप्लिकेशन. जिन संसाधनों की निगरानी की जाती है उनमें मेट्रिक का एक यूनीक सेट होता है. इसे एक्सप्लोर किया जा सकता है, डैशबोर्ड के ज़रिए रिपोर्ट किया जा सकता है या सूचनाएं बनाने के लिए इस्तेमाल किया जा सकता है. हर संसाधन में, संसाधन के लेबल का एक सेट भी होता है. ये कुंजी-वैल्यू के ऐसे जोड़े होते हैं जिनमें संसाधन के बारे में अतिरिक्त जानकारी होती है. संसाधन के लेबल, संसाधन से जुड़ी सभी मेट्रिक के लिए उपलब्ध होते हैं.
Cloud Monitoring API का इस्तेमाल करके, Cloud Firestore की परफ़ॉर्मेंस पर नज़र रखी जाती है. इसके लिए, इस संसाधन का इस्तेमाल किया जाता है:
| संसाधन | ब्यौरा |
firestore.googleapis.com/Database | मॉनिटर किया गया रिसॉर्स टाइप, जो project, location, और database_id के लिए ब्रेकडाउन उपलब्ध कराता है. |
मेट्रिक
Cloud Firestore के लिए मेट्रिक की पूरी सूची देखने के लिए, Cloud Firestore मेट्रिक देखें. यहां दिए गए सेक्शन में, उपलब्ध कुछ मेट्रिक के बारे में बताया गया है.
सेवा के रनटाइम की मेट्रिक
serviceruntime मेट्रिक से, किसी प्रोजेक्ट के ट्रैफ़िक के बारे में खास जानकारी मिलती है. ये मेट्रिक, ज़्यादातर Google Cloud एपीआई के लिए उपलब्ध हैं. consumed_api मॉनिटर किए गए संसाधन के टाइप में ये सामान्य मेट्रिक शामिल होती हैं. इन मेट्रिक का हर 30 मिनट में सैंपल लिया जाता है. इससे डेटा को स्मूद किया जाता है.
serviceruntime मेट्रिक के लिए, method एक ज़रूरी संसाधन लेबल है. यह लेबल, कॉल की गई आरपीसी (रिमोट प्रोसीजर कॉल) के तरीके को दिखाता है. यह ज़रूरी नहीं है कि आपने जिस एसडीके फ़ंक्शन को कॉल किया है उसका नाम, आरपीसी फ़ंक्शन के नाम से मेल खाए. इसकी वजह यह है कि एसडीके, हाई-लेवल एपीआई ऐब्स्ट्रैक्शन उपलब्ध कराता है. हालांकि, यह समझने के लिए कि आपका ऐप्लिकेशन Cloud Firestore के साथ कैसे इंटरैक्ट करता है, आरपीसी तरीके के नाम के आधार पर मेट्रिक को समझना ज़रूरी है.
अगर आपको यह जानने की ज़रूरत है कि किसी एसडीके टूल के तरीके के लिए, आरपीसी का कौनसा तरीका इस्तेमाल किया जाता है, तो एपीआई से जुड़े दस्तावेज़ देखें.
api/request_latencies
api/request_latencies मेट्रिक, पूरे किए गए सभी अनुरोधों के लिए इंतज़ार के समय का डिस्ट्रिब्यूशन दिखाती है.
Cloud Firestore, Cloud Firestore सेवा कॉम्पोनेंट से मेट्रिक रिकॉर्ड करता है. लेटेंसी मेट्रिक में, Cloud Firestore को अनुरोध मिलने से लेकर Cloud Firestore के जवाब भेजने तक का समय शामिल होता है. इसमें स्टोरेज लेयर के साथ इंटरैक्शन भी शामिल होते हैं. इस वजह से, क्लाइंट और Cloud Firestore सेवा के बीच राउंड-ट्रिप में लगने वाला समय (आरटीटी) इन मेट्रिक में शामिल नहीं किया जाता.
दस्तावेज़ के ऑपरेशन की मेट्रिक
Cloud Firestore से, पढ़ने, लिखने, और मिटाने की संख्या मिलती है. write metric, 'CREATE' और 'UPDATE' ऑपरेशन के बीच का अंतर बताती है. ये मेट्रिक, CRUD ऑपरेशनों के साथ अलाइन की जाती हैं.
नीचे दी गई मेट्रिक का इस्तेमाल करके, यह समझा जा सकता है कि आपके डेटाबेस में ज़्यादातर डेटा पढ़ा जाता है या लिखा जाता है. साथ ही, नए दस्तावेज़ों की तुलना में मिटाए गए दस्तावेज़ों की संख्या का पता लगाया जा सकता है.
document/delete_ops_count: दस्तावेज़ मिटाने के अनुरोधों के पूरा होने की संख्या.document/read_ops_count: क्वेरी या लुकअप से, दस्तावेज़ की जानकारी को कितनी बार पढ़ा गया.document/write_ops_count: दस्तावेज़ों को लिखने की प्रोसेस कितनी बार पूरी हुई.
बिलिंग की मेट्रिक
बिलिंग के इस्तेमाल को समझने के लिए, इन मेट्रिक का इस्तेमाल करें. इन मेट्रिक में, एडमिन के कामों (इंडेक्सिंग, इंपोर्ट, एक्सपोर्ट, और एक साथ कई आइटम मिटाना) से जुड़ी बिलिंग शामिल नहीं होती.
api/billable_read_units: बिल किए जाने वाले रीड यूनिट की संख्या. इस्तेमाल के डेटा को सेवा के नाम और एपीआई के तरीके के हिसाब से बांटा जा सकता है.api/billable_realtime_read_units: रीयल-टाइम अपडेट से, बिल किए जा सकने वाले रीयल-टाइम अपडेट की यूनिट की संख्या. यह सिर्फ़ नेटिव मोड में Cloud Firestore पर लागू होता है.api/billable_write_units: बिल किए जा सकने वाले राइट यूनिट की संख्या. इस्तेमाल के डेटा को सेवा के नाम और एपीआई के तरीके के हिसाब से बांटा जा सकता है.document/billable_managed_delete_write_units: मैनेज की गई डिलीट सेवाओं, जैसे कि टीटीएल से बिल की जाने वाली राइट यूनिट की संख्या.
इंडेक्स मेट्रिक
इंडेक्स फ़ैनआउट को समझने के लिए, इंडेक्स लिखने की दरों की तुलना document/write_ops_count मेट्रिक से की जा सकती है.
index/write_count: इंडेक्स में लिखे गए डेटा की संख्या.
टीटीएल मेट्रिक
Cloud Firestore मेट्रिक के लिए टीटीएल मेट्रिक का इस्तेमाल, लागू की गई टीटीएल नीति के असर को मॉनिटर करने के लिए किया जाता है.
document/ttl_deletion_count: टीटीएल सेवाओं से मिटाए गए दस्तावेज़ों की कुल संख्या.document/ttl_expiration_to_deletion_delays: टीटीएल की समयसीमा खत्म होने के बाद, किसी दस्तावेज़ को मिटाने में लगा समय.
पहले से तय किए गए डैशबोर्ड देखना और कस्टम डैशबोर्ड बनाना
Cloud Firestore में, पहले से तय किए गए ऐसे डैशबोर्ड इस्तेमाल किए जा सकते हैं जिनमें Cloud Monitoring मेट्रिक का इस्तेमाल किया जाता है. कस्टम डैशबोर्ड भी बनाए जा सकते हैं.
डेटाबेस के इस्तेमाल से जुड़ी मेट्रिक देखना
Google Cloud Console में इस्तेमाल से जुड़े डैशबोर्ड खोलें. इससे आपको समय के साथ-साथ दस्तावेज़ों को पढ़ने, लिखने, और मिटाने की जानकारी मिलेगी.
ऐक्सेस कंट्रोल
इस्तेमाल से जुड़े डैशबोर्ड के लिए, monitoring.timeSeries.list पहचान और ऐक्सेस मैनेजमेंट (आईएएम) की अनुमति ज़रूरी है.
प्रोजेक्ट के मालिक, एडिटर, और दर्शक की भूमिका वाले लोगों को यह अनुमति मिलती है. यह अनुमति, Cloud Monitoring भूमिका या कस्टम भूमिका के ज़रिए भी दी जा सकती है.
डेटाबेस के इस्तेमाल का डैशबोर्ड
Cloud Firestore डेटाबेस के इस्तेमाल से जुड़ी मेट्रिक देखने के लिए, यह तरीका अपनाएं.
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस की सूची से, वह डेटाबेस चुनें जिसकी आपको ज़रूरत है.
नेविगेशन मेन्यू में, इस्तेमाल पर क्लिक करें.
इस्तेमाल की जानकारी देने वाला डैशबोर्ड और बिलिंग रिपोर्ट
कंसोल में मौजूद Cloud Firestore इस्तेमाल से जुड़े डैशबोर्ड, इस्तेमाल का अनुमान देते हैं. इनकी मदद से, आपको इस्तेमाल में हुई अचानक बढ़ोतरी का पता चल सकता है. हालांकि, डैशबोर्ड में बिल की गई कार्रवाइयों की सटीक जानकारी नहीं दिखती है. बिल किया गया इस्तेमाल ज़्यादा हो सकता है. बिलिंग पर नज़र रखने के लिए, बिलिंग मेट्रिक देखें.
बिलिंग रिपोर्ट में मौजूद जानकारी को, इस्तेमाल के डैशबोर्ड में मौजूद जानकारी से ज़्यादा सटीक माना जाता है.
इंपोर्ट और एक्सपोर्ट की कार्रवाइयों की वजह से, इस्तेमाल से जुड़े डैशबोर्ड और बिल किए गए इस्तेमाल में अंतर दिखता है. इन कार्रवाइयों से किए गए रीड और राइट ऑपरेशन, इस्तेमाल से जुड़े डैशबोर्ड में नहीं दिखते.
डेटाबेस की परफ़ॉर्मेंस मेट्रिक देखना
Google Cloud Console के Cloud Firestore सेक्शन में मौजूद मॉनिटरिंग पेज पर, पहले से तय किए गए मॉनिटरिंग डैशबोर्ड शामिल होते हैं. जैसे, अनुरोध में लगने वाला समय (P50 और P99), जवाब के कोड, और क्वेरी के आंकड़े (P50). ज़्यादा से ज़्यादा एक कस्टम डैशबोर्ड भी बनाया जा सकता है. किसी डेटाबेस के लिए, मॉनिटरिंग पेज को ऐक्सेस करने के लिए, यह तरीका अपनाएं:
Google Cloud Console में, Cloud Firestore डेटाबेस पेज खोलें.
सूची में से कोई डेटाबेस चुनें.
डैशबोर्ड खोलने के लिए, नेविगेशन मेन्यू में निगरानी पर क्लिक करें.
कस्टम Cloud Monitoring डैशबोर्ड बनाना
Cloud Monitoring में, कस्टम डैशबोर्ड की मदद से, अपने काम की जानकारी को व्यवस्थित तरीके से दिखाया जा सकता है. उदाहरण के लिए, प्रोडक्शन एनवायरमेंट में अपने प्रोजेक्ट के लिए, परफ़ॉर्मेंस मेट्रिक और सूचना देने की नीतियां दिखाने वाला डैशबोर्ड बनाया जा सकता है.
कस्टम डैशबोर्ड सेट अप करने के बारे में ज़्यादा जानने के लिए, कस्टम डैशबोर्ड मैनेज करना और डैशबोर्ड विजेट जोड़ना लेख पढ़ें.
सूचना पाने की नीति बनाना
Cloud Monitoring में, सूचनाएं बनाई जा सकती हैं. इनसे आपको किसी मेट्रिक की स्थिति में बदलाव होने पर सूचना मिलती है. इन सूचनाओं का इस्तेमाल करके, संभावित समस्याओं के बारे में सूचना पाई जा सकती है. इससे, समस्याओं का असर आपके उपयोगकर्ताओं पर पड़ने से पहले ही उन्हें ठीक किया जा सकता है.
सूचनाएं बनाने के बारे में ज़्यादा जानने के लिए, मेट्रिक-थ्रेशोल्ड से जुड़ी सूचनाएं पाने की नीतियां बनाना लेख पढ़ें.
यहां एक उदाहरण दिया गया है, जिसमें हमने इंतज़ार के समय से जुड़ी सूचना पाने की नीति बनाई है. सूचना देने वाली नीति, पांच मिनट की रोलिंग विंडो में p99 लेटेंसी की जांच करती है. अगर p99 लेटेन्सी पांच मिनट तक 250 मि॰से॰ से ज़्यादा रहती है, तो सूचना ट्रिगर हो जाती है.
कंसोल
Google Cloud Console में, Monitoring पेज पर जाएं. इसके बाद, notifications सूचनाएं को चुनें.
नीति बनाएं को चुनें.
इस्तेमाल किया गया एपीआई रिसॉर्स से, अनुरोध में लगने वाला समय मेट्रिक चुनें.
नेटिव मोड वाले डेटाबेस में Firestore के लिए,
firestore.googleapis.comके लिए सेवा फ़िल्टर जोड़ें.ट्रिगर कॉन्फ़िगर करने के लिए, आगे बढ़ें पर क्लिक करें.
शर्त के टाइप के तौर पर थ्रेशोल्ड चुनें.
सीमा की शर्त को 250 मि॰से॰ की सीमा वाली वैल्यू पर सेट किया गया है. जब p99 लेटेंसी की वैल्यू, रोलिंग विंडो (पांच मिनट) की पूरी अवधि के लिए एक जैसी रहती है, तब सूचना ट्रिगर होती है.
सीमा की वैल्यू को 250 पर सेट करें.
सूचनाएं कॉन्फ़िगर करने के लिए, आगे बढ़ें पर क्लिक करें.
सूचना से जुड़ी नीति का नाम सेट करें और आगे बढ़ें पर क्लिक करें.
सूचना से जुड़े कॉन्फ़िगरेशन देखें और नीति बनाएं पर क्लिक करें.
एमक्यूएल
मॉनिटरिंग क्वेरी लैंग्वेज (एमक्यूएल) क्वेरी का इस्तेमाल करके, लेटेन्सी से जुड़ी सूचना देने वाली नीति को लागू किया जा सकता है. एमक्यूएल का इस्तेमाल करने के ज़्यादा उदाहरणों के लिए, एमक्यूएल क्वेरी के उदाहरण देखें.
fetch consumed_api
| metric 'serviceruntime.googleapis.com/api/request_latencies'
| filter (resource.service == 'firestore.googleapis.com')
| group_by 5m,
[value_request_latencies_percentile:
percentile(value.request_latencies, 99)]
| every 5m
| condition val() > 0.25 's'