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

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

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

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

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

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

Cloud Monitoring की मदद से, ज़्यादा बेहतर अलर्ट बनाना

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

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 Function इंस्टेंस जैसे संसाधन देखे जा सकते हैं. इन प्रॉडक्ट के इस्तेमाल की जानकारी देखी जा सकती है. जैसे, दस्तावेज़ों को पढ़ने की संख्या, भेजे गए बाइट या फ़ंक्शन कॉल. इससे आपकी बिलिंग पर असर पड़ेगा.

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

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

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

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

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

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

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

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

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

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

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

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

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