वेब ऐप्लिकेशन को मॉनिटर करना और सुरक्षित रखना

अपने ऐप्लिकेशन पब्लिश करने के बाद, आपको उन्हें मॉनिटर और सुरक्षित करना चाहिए:

App Hosting ऑब्ज़र्वेबिलिटी की मदद से, अपनी साइट की परफ़ॉर्मेंस पर नज़र रखना

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

  • अपने ऐप्लिकेशन का नया वर्शन रिलीज़ करने के लिए, पब्लिश करें पर क्लिक करें.
  • अपने ऐप्लिकेशन का लिंक शेयर करें या अपने ऐप्लिकेशन पर जाएं में जाकर, सीधे अपना ऐप्लिकेशन खोलें.
  • पिछले सात दिनों में आपके ऐप्लिकेशन की परफ़ॉर्मेंस की खास जानकारी देखें. इसमें अनुरोधों की कुल संख्या और आपके नए रोलआउट की स्थिति शामिल है. Firebase console में ज़्यादा जानकारी पाने के लिए, जानकारी देखें पर क्लिक करें.
  • पिछले 24 घंटों में आपके ऐप्लिकेशन को मिले अनुरोधों की संख्या का ग्राफ़ देखें. इसे एचटीटीपी स्टेटस कोड के हिसाब से बांटा गया है.

ऐप्लिकेशन की खास जानकारी वाला पैनल बंद करने पर, उसे किसी भी समय फिर से खोला जा सकता है. इसके लिए, पब्लिश करें पर क्लिक करें.

रोलआउट और रिलीज़ मैनेज करें पर जाकर, App Hosting रोलआउट को मैनेज करने और मॉनिटर करने के बारे में ज़्यादा जानें.

Genkit डिप्लॉय की गई सुविधाओं की निगरानी करना

एआई फ़्लो कोड में टेलीमेट्री की सुविधा चालू करके, Genkit सुविधा के चरणों, इनपुट, और आउटपुट को मॉनिटर किया जा सकता है. Genkit की टेलीमेट्री सुविधा की मदद से, एआई फ़्लो की परफ़ॉर्मेंस और उनके इस्तेमाल पर नज़र रखी जा सकती है. इस डेटा से आपको इन कामों में मदद मिल सकती है: सुधार करने के लिए क्षेत्रों की पहचान करना, समस्याओं को हल करना, बेहतर परफ़ॉर्मेंस और लागत कम करने के लिए अपने प्रॉम्प्ट और फ़्लो को ऑप्टिमाइज़ करना, और समय के साथ अपने फ़्लो के इस्तेमाल को ट्रैक करना.

Genkit में मॉनिटरिंग सेट अप करने के लिए, Genkit के एआई फ़्लो में टेलीमेट्री जोड़ी जाती है. इसके बाद, Genkit कंसोल में नतीजे देखे जाते हैं.Firebase

इस पेज पर जाएं.

पहला चरण: Firebase Studio में, अपने Genkit फ़्लो कोड में टेलीमेट्री जोड़ना

अपने कोड में मॉनिटरिंग सेट अप करने के लिए:

  1. अगर आप पहले से Code व्यू में नहीं हैं, तो इसे खोलने के लिए कोड स्विच करें
आइकॉन कोड पर स्विच करें पर क्लिक करें.

  2. package.json पर जाकर, इंस्टॉल किए गए Genkit के वर्शन की पुष्टि करें.

  3. टर्मिनल खोलें (Ctrl-Shift-C या MacOS में Cmd-Shift-C).

  4. टर्मिनल में क्लिक करें और Firebase प्लगिन इंस्टॉल करें. इसके लिए, package.json फ़ाइल से मेल खाने वाले वर्शन का इस्तेमाल करें. उदाहरण के लिए, अगर आपके Genkit पैकेज 1.0.4 पर हैं, तो आपको प्लगिन इंस्टॉल करने के लिए यह कमांड चलानी चाहिए:package.json

    npm i --save @genkit-ai/firebase@1.0.4
  5. एक्सप्लोरर में जाकर, src > ai > flows को बड़ा करें. flows फ़ोल्डर में, एक या उससे ज़्यादा TypeScript फ़ाइलें दिखती हैं. इनमें आपके Genkit फ़्लो शामिल होते हैं.

  6. किसी फ़्लो को खोलने के लिए उस पर क्लिक करें.

  7. फ़ाइल के इंपोर्ट सेक्शन में सबसे नीचे, FirebaseTelemetry को इंपोर्ट और चालू करने के लिए, यह कोड जोड़ें:

    import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
    
    enableFirebaseTelemetry();
    

दूसरा चरण: अनुमतियां सेट अप करना

Firebase Studio ने आपका Firebase प्रोजेक्ट सेट अप करते समय, आपके लिए ज़रूरी एपीआई चालू किए थे. हालांकि, आपको App Hosting सेवा खाते को भी अनुमतियां देनी होंगी.

अनुमतियां सेट अप करने के लिए:

  1. Google Cloud IAM कंसोल खोलें. इसके बाद, अपना प्रोजेक्ट चुनें और App Hosting सेवा खाते को ये भूमिकाएं असाइन करें:

    • Monitoring Metric Writer (roles/monitoring.metricWriter)
    • Cloud Trace एजेंट (roles/cloudtrace.agent)
    • Logs Writer (roles/logging.logWriter)
  2. App Hosting पर अपने ऐप्लिकेशन को फिर से पब्लिश करें.

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

तीसरा चरण: Firebase कंसोल पर, जनरेटिव एआई की सुविधाओं को मॉनिटर करना

टेलीमेट्री कॉन्फ़िगर होने पर, Genkit आपके सभी फ़्लो के लिए अनुरोधों की संख्या, सफलता, और लेटेन्सी रिकॉर्ड करता है. साथ ही, हर फ़्लो के लिए, Genkit स्थिरता मेट्रिक इकट्ठा करता है, ज़्यादा जानकारी वाले ग्राफ़ दिखाता है, और कैप्चर किए गए ट्रेस लॉग करता है.

Genkit की मदद से लागू की गई एआई की सुविधाओं को मॉनिटर करने के लिए:

  1. पांच मिनट के बाद, Firebase कंसोल में जाकर Genkit खोलें. इसके बाद, Genkit के प्रॉम्प्ट और जवाबों की समीक्षा करें.

    Genkit इन स्टेबिलिटी मेट्रिक को कंपाइल करता है:

    • कुल अनुरोध: आपके फ़्लो को मिले अनुरोधों की कुल संख्या.
    • सक्सेस रेट: यह उन अनुरोधों का प्रतिशत है जिन्हें प्रोसेस किया गया.
    • 95वां पर्सेंटाइल इंतज़ार का समय: यह आपके फ़्लो का 95वां पर्सेंटाइल इंतज़ार का समय होता है. इसका मतलब है कि 95% अनुरोधों को प्रोसेस होने में लगने वाला समय.
    • टोकन का इस्तेमाल:

      • इनपुट टोकन: प्रॉम्प्ट में मॉडल को भेजे गए टोकन की संख्या.
      • आउटपुट टोकन: जवाब में मॉडल ने जितने टोकन जनरेट किए हैं उनकी संख्या.
    • इमेज का इस्तेमाल:

      • इनपुट इमेज: प्रॉम्प्ट में मॉडल को भेजी गई इमेज की संख्या.
      • आउटपुट इमेज: जवाब में मॉडल से जनरेट की गई इमेज की संख्या.

    स्टेबिलिटी मेट्रिक को बड़ा करने पर, ज़्यादा जानकारी वाले ग्राफ़ दिखते हैं:

    • समय के साथ अनुरोध की संख्या.
    • पिछले कुछ समय में सफलता की दर.
    • समय के साथ इनपुट और आउटपुट टोकन.
    • समय के साथ लेटेन्सी (95वां और 50वां पर्सेंटाइल).

Genkit पर जाकर, Genkit के बारे में ज़्यादा जानें.

Firebase App Check की मदद से अपने ऐप्लिकेशन को सुरक्षित करना

अगर आपने अपने ऐप्लिकेशन में Firebase या Google Cloud की सेवाओं को इंटिग्रेट किया है, तो Firebase App Check आपके ऐप्लिकेशन के बैकएंड को गलत इस्तेमाल से बचाने में मदद करता है. ऐसा इसलिए, क्योंकि यह अनधिकृत क्लाइंट को आपके Firebase संसाधनों को ऐक्सेस करने से रोकता है. यह Google की सेवाओं (Firebase और Google Cloud की सेवाओं के साथ-साथ) और आपके कस्टम बैकएंड, दोनों के साथ काम करता है, ताकि आपके संसाधनों को सुरक्षित रखा जा सके.

हमारा सुझाव है कि सार्वजनिक तौर पर पोस्ट किए जाने वाले हर ऐप्लिकेशन में App Check जोड़ें. इससे, बैकएंड संसाधनों का गलत इस्तेमाल होने से बचाया जा सकेगा.

इस सेक्शन में, App Prototyping agent की ओर से बनाए गए वेब ऐप्लिकेशन के लिए, reCAPTCHA Enterprise का इस्तेमाल करके App Check को Firebase Studio में सेट अप करने का तरीका बताया गया है. हालांकि, App Check को ऐसे किसी भी ऐप्लिकेशन में सेट अप किया जा सकता है जो Firebase सेवाओं का इस्तेमाल करता है और कस्टम प्रोवाइडर को लागू कर सकता है. ज़्यादा जानने के लिए, Firebase App Check पर जाएं.

ReCAPTCHA Enterprise, बिना किसी शुल्क के 10,000 आकलन करने की सुविधा देता है.

पहला चरण: अपने ऐप्लिकेशन के लिए reCAPTCHA Enterprise सेट अप करना

  1. Google Cloud कंसोल में, reCAPTCHA Enterprise सेक्शन खोलें.

  2. Google Cloud कंसोल के प्रोजेक्ट पिकर से, अपने Firebase प्रोजेक्ट का नाम चुनें.

  3. अगर आपको reCAPTCHA Enterprise API चालू करने के लिए कहा जाता है, तो ऐसा करें.

  4. शुरू करें पर क्लिक करें और अपनी reCAPTCHA साइट कुंजी के लिए दिखने वाला नाम जोड़ें.

  5. डिफ़ॉल्ट वेब ऐप्लिकेशन टाइप कुंजी को स्वीकार करें.

  6. कोई डोमेन जोड़ें पर क्लिक करें और कोई डोमेन जोड़ें. आपको अपने App Hosting डोमेन (उदाहरण के लिए, studio--PROJECT_ID.REGION.hosted.app) और अपने ऐप्लिकेशन के साथ इस्तेमाल किए जाने वाले या इस्तेमाल करने का प्लान बना रहे सभी कस्टम डोमेन जोड़ने होंगे.

  7. अगला चरण पर क्लिक करें.

  8. क्या आपको चुनौतियों का इस्तेमाल करना है? को बिना चुने हुए छोड़ दें.

  9. कुंजी बनाएं पर क्लिक करें.

  10. अपना कुंजी आईडी कॉपी करके सेव करें. इसके बाद, कॉन्फ़िगर करें App Check पर जाएं.

दूसरा चरण: App Check को कॉन्फ़िगर करना

  1. Firebase कंसोल खोलें और नेविगेशन मेन्यू में जाकर, बनाएं > App Check पर क्लिक करें.

  2. शुरू करें पर क्लिक करें. इसके बाद, अपने ऐप्लिकेशन के बगल में मौजूद रजिस्टर करें पर क्लिक करें.

  3. ReCAPTCHA को बड़ा करने के लिए क्लिक करें. इसके बाद, reCAPTCHA Enterprise के लिए जनरेट किया गया कुंजी आईडी चिपकाएं.

  4. सेव करें पर क्लिक करें.

तीसरा चरण: अपने कोड में App Check जोड़ें

  1. Firebase Studio पर वापस जाएं और Code व्यू में, जनरेट की गई साइट कुंजी को अपनी .env फ़ाइल में जोड़ें:

    NEXT_PUBLIC_RECAPTCHA_SITE_KEY=RECAPTCHA_SITE_KEY
    
  2. अगर आपने Firebase कॉन्फ़िगरेशन को .env में सेव नहीं किया है, तो इसे पाएं:

    • Firebase कंसोल में जाकर, प्रोजेक्ट की सेटिंग खोलें. इसके बाद, अपने ऐप्लिकेशन से जुड़े सेक्शन में जाकर इसे ढूंढें.

    • Code व्यू में मौजूद टर्मिनल से:

      1. Firebase में लॉग इन करें: firebase auth login
      2. अपना प्रोजेक्ट चुनें: firebase use FIREBASE_PROJECT_ID
      3. Firebase कॉन्फ़िगरेशन पाएं: firebase apps:sdkconfig
  3. अपनी .env फ़ाइल में कॉन्फ़िगरेशन जोड़ें, ताकि वह इस तरह दिखे:

    NEXT_PUBLIC_FIREBASE_API_KEY=FIREBASE_API_KEY
    NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=FIREBASE_AUTH_DOMAIN
    NEXT_PUBLIC_FIREBASE_PROJECT_ID=FIREBASE_PROJECT_ID
    NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=FIREBASE_STORAGE_BUCKET
    NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=FIREBASE_MESSAGING_SENDER_ID
    NEXT_PUBLIC_FIREBASE_APP_ID=FIREBASE_APP_ID
    NEXT_PUBLIC_RECAPTCHA_SITE_KEY=RECAPTCHA_SITE_KEY
    
  4. अपने ऐप्लिकेशन कोड में App Check जोड़ें. अपने ऐप्लिकेशन में reCAPTCHA Enterprise Gemini को जोड़ने के लिए, Gemini से कहें. "reCAPTCHA Enterprise" के बारे में बताना न भूलें और इसकी दो बार जांच ज़रूर कर लें! इसके अलावा, App Check को शुरू करने के लिए दिए गए निर्देशों का पालन करें.App Check

  5. अपनी साइट को App Hosting पर फिर से पब्लिश करें. कुछ डेटा जनरेट करने के लिए, Firebase की सुविधाओं को आज़माएं.

  6. पुष्टि करें कि App Check को Firebase कंसोल में अनुरोध मिल रहे हैं. इसके लिए, बनाएं > App Check खोलें.

  7. Firebase सेवाओं की जांच करने के लिए क्लिक करें. अनुरोधों के आने की पुष्टि करने के बाद, App Check लागू करने के लिए, लागू करें पर क्लिक करें.

  8. Firebase Authentication के लिए, पुष्टि करने और नीति उल्लंघन ठीक करने की प्रोसेस को दोहराएं.

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

अगले चरण