बिलिंग की बेहतर सूचनाएं और लॉजिक सेट अप करें

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

  • ज़्यादा बेहतर और समय पर सूचनाएं पाने के लिए, Cloud Monitoring का इस्तेमाल करना

  • खर्च में होने वाले बदलावों के हिसाब से कस्टम व्यवहार बनाने के लिए, बिलिंग Pub/Sub सूचना के साथ-साथ उससे जुड़ी Cloud फ़ंक्शन का इस्तेमाल करें

इन दोनों तकनीकों का इस्तेमाल करने के लिए, आपको ज़्यादा मेहनत करनी होगी. हालांकि, इनसे आपको यह तय करने का विकल्प मिलता है कि आपको किस तरह की सूचनाएं मिलें और उनका जवाब कैसे दिया जाए.

इस पेज पर, इन सभी तरीकों के बारे में खास जानकारी दी गई है.

Cloud Monitoring की मदद से, ज़्यादा बेहतर सूचनाएं बनाना

बजट से जुड़े अलर्ट के ईमेल से आपको यह पता चलता है कि आपकी कुल बिलिंग, तय किए गए थ्रेशोल्ड तक पहुंच गई है. हालांकि, आपको यह भी जानना पड़ सकता है कि क्या अलग-अलग सेवाओं की लागत में अचानक बढ़ोतरी हो रही है. ऐसा तब होता है, जब इन सेवाओं की लागत आपके बजट पर काफ़ी असर डालने से पहले ही बढ़ जाती है. इस तरह के ज़्यादा बेहतर इस्तेमाल के उदाहरणों के लिए, हमारा सुझाव है कि आप Cloud Monitoring के बारे में जानें. यह आपके Firebase प्रोजेक्ट के लिए उपलब्ध Google Cloud टूल है.

Cloud Monitoring कई तरह की सूचनाओं के लिए काम की है:

  • अगर आपका प्रोजेक्ट जिस संसाधन पर निर्भर है वह उपलब्ध नहीं है. ऐसा Firebase और Google Cloud सेवाओं के साथ-साथ AWS जैसी बाहरी सेवाओं के लिए भी हो सकता है

  • अगर Cloud Functions जैसी सेवाओं को जवाब देने में उम्मीद से ज़्यादा समय लग रहा है

  • अगर आपका Cloud Storage बकेट, Realtime Database इंस्टेंस या Cloud Firestore इंस्टेंस बहुत ज़्यादा अनुरोध अस्वीकार कर रहा है. इससे पता चलता है कि आपका Firebase Security Rules गलत हो सकता है.

  • अगर आपके कुछ Firebase प्रॉडक्ट इस्तेमाल किए गए संसाधनों की संख्या, तय थ्रेशोल्ड से ज़्यादा हो गई है

Cloud Monitoring की मदद से बनाई गई सूचनाएं, आम तौर पर बजट की सूचना देने वाले ईमेल से ज़्यादा तेज़ी से भेजी जाती हैं. बजट की सूचना देने वाले ईमेल, आम तौर पर दिन में एक बार भेजे जाते हैं. सूचनाएं, एसएमएस मैसेज, Slack चैनल के मैसेज, PagerDuty की सूचनाएं, वेबहुक वगैरह के तौर पर मिल सकती हैं. इन विकल्पों की मदद से, आपको ज़्यादा और कार्रवाई करने लायक सूचनाएं भेजने की सुविधा मिलती है.

Cloud Monitoring का इस्तेमाल करना

Cloud Monitoring का इस्तेमाल शुरू करने के लिए, हमारा सुझाव है कि आप मेट्रिक एक्सप्लोरर से शुरुआत करें. इसकी मदद से, अपने Firebase/Google Cloud प्रोजेक्ट में कस्टम मेट्रिक के ग्राफ़ बनाए जा सकते हैं. साथ ही, उनके इस्तेमाल को विज़ुअलाइज़ किया जा सकता है.

खास तौर पर, Cloud Firestore, Realtime Database या Cloud Functions इंस्टेंस जैसे संसाधनों को देखा जा सकता है. इन प्रॉडक्ट के इस्तेमाल से जुड़ी जानकारी देखी जा सकती है. जैसे, दस्तावेज़ पढ़ने की संख्या, भेजे गए बाइट या फ़ंक्शन कॉल करने की संख्या. इससे आपकी बिलिंग पर असर पड़ेगा.

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

  • अगर 30 मिनट की समयावधि में दस्तावेज़ों को पढ़ने की संख्या, किसी खास वैल्यू से ज़्यादा है

  • अगर किसी तय समयसीमा में, किसी संसाधन (जैसे कि फ़ंक्शन इनवोकेशन) का इस्तेमाल बहुत तेज़ी से बढ़ रहा हो

बिलिंग का अतिरिक्त लॉजिक बनाना

बजट अलर्ट की सुविधा, बजट के तय थ्रेशोल्ड तक पहुंचने पर अपने-आप ईमेल भेजती है. हालांकि, खर्च बढ़ने पर ज़्यादा बेहतर अलर्ट पाने या प्रोग्राम के हिसाब से प्रतिक्रियाएं पाने के लिए, Google Cloud Pub/Sub मैसेज के आधार पर, कस्टम लॉजिक सेट अप किया जा सकता है.

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

Pub/Sub एक मैसेज-पासिंग सेवा है. इसकी मदद से अन्य सेवाएं, मैसेज भेज सकती हैं. ये मैसेज आम तौर पर JSON डेटा के तौर पर होते हैं. इन्हें एसिंक्रोनस तरीके से भेजा जाता है. इसके लिए, Pub/Sub विषयों के तौर पर जाने जाने वाले चैनलों का इस्तेमाल किया जाता है. इन विषयों में मौजूद मैसेज सुनने और डेटा के हिसाब से कार्रवाई करने के लिए, Cloud Functions जैसी भरोसेमंद सेवाएं सेट अप की जा सकती हैं.

ध्यान दें कि Pub/Sub बिलिंग से जुड़ी सूचनाएं हर 20 मिनट में एक बार भेजी जाती हैं. भले ही, बिलिंग के इस्तेमाल में बदलाव हुआ हो या नहीं. ये सूचनाएं स्टेटलेस होती हैं. इसका मतलब है कि ये सूचनाएं, इस बारे में कोई जानकारी नहीं देती हैं कि इनसे पहले क्या हुआ था. अगर आपको समय के साथ खर्च में हुई असामान्य बढ़ोतरी को ट्रैक करना है या अपने खर्च की तुलना पिछले साइकल से करनी है, तो आपको उस पुराने डेटा को खुद मैनेज करना होगा. इसके लिए, Cloud Firestore या Realtime Database जैसे डेटाबेस का इस्तेमाल करें.

Cloud Functions के साथ Pub/Sub विषयों का इस्तेमाल करना

अपने बिलिंग डेटा के लिए Pub/Sub विषय सेट अप किया जा सकता है. इसके लिए, Google Cloud कंसोल में जाकर, अपने Firebase प्रोजेक्ट से जुड़े बजट पर जाएं. यह बिलिंग > बजट और सूचनाएं में जाकर किया जा सकता है. इसके बाद, इस बजट से Pub/Sub विषय कनेक्ट करें के लिए दिए गए चेकबॉक्स पर क्लिक करें. इससे एक Pub/Sub विषय बन जाएगा, जिसे बाद में सुना जा सकता है. इस प्रोसेस के बारे में ज़्यादा जानने के लिए, पूरा दस्तावेज़ पढ़ें.

Pub/Sub बिलिंग विषय बनाने के बाद, इस विषय को सुनने के लिए Cloud फ़ंक्शन लिखा जा सकता है. साथ ही, डेटा के हिसाब से कार्रवाई की जा सकती है. यह डेटा, JSON डेटा के तौर पर भेजा जाता है. इसमें काम की जानकारी शामिल होती है. जैसे, अब तक खर्च की गई रकम, बजट की रकम, और मौजूदा बिलिंग साइकल की शुरुआत की तारीख.

Google Cloud दस्तावेज़ में, Cloud Function का इस्तेमाल करके यह डेटा पाने के तरीके के बारे में पूरी जानकारी दी गई है. हालांकि, अगर फ़ंक्शन डिप्लॉय करने के लिए Cloud Functions for Firebase का इस्तेमाल किया जा रहा है, तो सामान्य प्रोसेस थोड़ी आसान होती है. इसके बारे में जानने के लिए, Firebase का दस्तावेज़ देखें. इस प्रोसेस के बारे में ज़्यादा जानने के लिए, यह वीडियो भी देखा जा सकता है.

यह डेटा मिलने के बाद, आपके पास इसका जवाब देने के कई तरीके होते हैं. यहां कुछ विकल्प दिए गए हैं: