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

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

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

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

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

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

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

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

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

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

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

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

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

  2. package.json की जांच करके यह पुष्टि करें कि 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. किसी एक फ़्लो पर क्लिक करके उसे खोलें.

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

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

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

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

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

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

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

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

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

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

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

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

    Genkit compiles the following स्थिरता से जुड़ी ये मेट्रिक:

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

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

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

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

  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. अगर आपने .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 का इस्तेमाल करना लेख पढ़ें.

अगले चरण