वेब ऐप्लिकेशन की निगरानी करना और उन्हें सुरक्षित रखना

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

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

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

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

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

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

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

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

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

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

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

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

  2. package.json में Genkit का कौनसा वर्शन इंस्टॉल है, यह देखने के लिए जांच करें.Genkit

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

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

    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 console में, IAM पेज पर जाएं और अपना Firebase प्रोजेक्ट चुनें.

  2. App Hosting के सेवा खाते को ये भूमिकाएं दें:

    • मॉनिटरिंग मेट्रिक राइटर (roles/monitoring.metricWriter)
    • Cloud Trace एजेंट (roles/cloudtrace.agent)
    • लॉग राइटर (roles/logging.logWriter)
  3. अपने ऐप्लिकेशन को App Hosting पर फिर से पब्लिश करें.App Hosting

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

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

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

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

  1. पांच मिनट बाद, Firebase कंसोल में एआई सेवाएं > Genkit पर जाएं. यहां Genkit से मिले प्रॉम्प्ट और जवाब देखे जा सकते हैं.

  2. Genkit की ओर से कंपाइल की गई स्थिरता की ये मेट्रिक देखी जा सकती हैं: Genkit

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

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

      • इनपुट इमेज: प्रॉम्प्ट में मॉडल को भेजी गई इमेज की संख्या.
      • आउटपुट इमेज: जवाब में मॉडल से जनरेट की गई इमेज की संख्या.
  3. स्थिरता की मेट्रिक को बड़ा करके, ये विस्तृत ग्राफ़ देखे जा सकते हैं:

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

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 की सेवाओं को लागू करने वाले और कस्टम प्रोवाइडर को लागू करने वाले किसी भी ऐप्लिकेशन में App Check सेट अप किया जा सकता है.Firebase Studio ज़्यादा जानने के लिए, Firebase App Check लेख पढ़ें.

reCAPTCHA Enterprise, 10,000 आकलन तक मुफ़्त में उपलब्ध कराता है.

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

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

  2. Google Cloud console प्रोजेक्ट पिकर से, अपना 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. अगर आपने .env में Firebase का कॉन्फ़िगरेशन सेव नहीं किया है, तो इसे हासिल करें:

    • 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 जोड़ें. आप Gemini से अपने ऐप्लिकेशन में App Check को reCAPTCHA Enterprise के साथ जोड़ने के लिए कह सकते हैं. इसके लिए, "reCAPTCHA Enterprise" के बारे में बताना न भूलें. साथ ही, इसकी दो बार जांच करना न भूलें. इसके अलावा, Initialize App Check में दिए गए निर्देशों का पालन करें.

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

  6. यह देखने के लिए कि App Check को Firebase कंसोल में अनुरोध मिल रहे हैं या नहीं, बनाएं > App Check खोलें.

  7. जांच करने के लिए क्लिक करें Cloud Firestore. यह पुष्टि करने के बाद कि अनुरोध मिल रहे हैं, App Check लागू करने के लिए, लागू करें पर क्लिक करें.

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

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

अगले चरण