پایش و محافظت از برنامه‌های وب

پس‌از انتشار برنامه‌هایتان، باید آن‌ها را پایش و ایمن کنید:

پایش عملکرد سایت با مشاهده‌پذیری App Hosting

پانل نمای کلی برنامه در Firebase Studio سنجه‌ها و اطلاعات کلیدی درباره برنامه‌تان ارائه می‌دهد و به شما امکان می‌دهد عملکرد برنامه وب خود را بااستفاده از ابزارهای مشاهده‌پذیری داخلی App Hosting پایش کنید. پس‌از عرضه سایت، می‌توانید با کلیک کردن روی انتشار به نمای کلی دسترسی پیدا کنید. از این پانل می‌توانید:

  • برای انتشار نسخه جدیدی از برنامه‌تان، روی انتشار کلیک کنید.
  • پیوند برنامه‌تان را هم‌رسانی کنید یا برنامه‌تان را مستقیماً در بازدید از برنامه‌تان باز کنید.
  • خلاصه عملکرد برنامه‌تان را در ۷ روز گذشته مرور کنید، ازجمله تعداد کل درخواست‌ها و وضعیت آخرین عرضه. روی مشاهده جزئیات کلیک کنید تا به اطلاعات بیشتری در Firebase کنسول دسترسی پیدا کنید.
  • نمودار تعداد درخواست‌هایی را که برنامه‌تان در ۲۴ ساعت گذشته دریافت کرده است، به‌تفکیک رمز وضعیت HTTP، مشاهده کنید.
  • مشاهده وضعیت فعال‌سازی سرویس‌های Firebase مانند Firebase Authentication و Cloud Firestore.

اگر پانل «نمای کلی برنامه» را ببندید، می‌توانید هروقت خواستید با کلیک کردن روی انتشار آن را دوباره باز کنید.

درباره مدیریت و نظارت بر عرضه App Hosting در مدیریت عرضه و انتشار بیشتر بدانید.

پایش Genkit برای ویژگی‌های مستقرشده شما

با فعال کردن دورسنجی برای کد جریان هوش مصنوعی، می‌توانید مراحل، ورودی‌ها، و خروجی‌های ویژگی Genkit را پایش کنید. ویژگی دورسنجی برای Genkit به شما امکان می‌دهد عملکرد و استفاده از جریان‌های هوش مصنوعی خود را پایش کنید. این داده‌ها می‌توانند به شما کمک کنند بخش‌های نیازمند بهبود را شناسایی کنید، مشکلات را عیب‌یابی کنید، پیام‌واره‌ها و جریان‌هایتان را برای عملکرد بهتر و صرفه‌جویی در هزینه بهینه‌سازی کنید، و استفاده از جریان‌هایتان را درطول زمان پیگیری کنید.

برای راه‌اندازی پایش در Genkit، دورسنجی را به جریان‌های هوش مصنوعی Genkit اضافه می‌کنید و سپس نتایج را در کنسول Firebase مشاهده می‌کنید.

مرحله ۱: افزودن دورسنجی به کد جریان Genkit در Firebase Studio

برای راه‌اندازی پایش در کدتان:

  1. اگر در نمای Code نیستید، روی نماد
تغییر کد رفتن به کد کلیک کنید تا باز شود.

  2. برای تأیید نسخه نصب‌شده Genkit، package.json را بررسی کنید.

  3. پایانه را باز کنید (Ctrl-Shift-C، یا Cmd-Shift-C در MacOS).

  4. داخل پایانه کلیک کنید و افزونه Firebase را بااستفاده از نسخه‌ای که با فایل package.json شما مطابقت دارد نصب کنید. برای مثال، اگر بسته‌های Genkit در package.json شما در نسخه ۱.۰.۴ هستند، باید فرمان زیر را برای نصب افزایه اجرا کنید:

    npm i --save @genkit-ai/firebase@1.0.4
  5. از کاوشگر، src > ai > flows را ازهم باز کنید. یک یا چند فایل TypeScript که حاوی جریان‌های Genkit شما هستند در پوشه flows ظاهر می‌شوند.

  6. روی یکی از جریان‌ها کلیک کنید تا باز شود.

  7. در پایین بخش واردات فایل، موارد زیر را برای وارد کردن و فعال کردن FirebaseTelemetry اضافه کنید:

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

مرحله ۲: تنظیم اجازه‌ها

Firebase Studio هنگام راه‌اندازی پروژه Firebase شما، میاناهای برنامه‌سازی کاربردی موردنیاز را برایتان فعال کرد، اما باید اجازه‌های لازم را نیز به حساب سرویس App Hosting بدهید.

برای تنظیم اجازه‌ها:

  1. در کنسول Google Cloud، به صفحه IAM بروید و پروژه Firebase خود را انتخاب کنید.

  2. نقش‌های زیر را به حساب سرویس App Hosting اعطا کنید:

    • Monitoring Metric Writer (roles/monitoring.metricWriter)
    • Cloud Trace Agent (roles/cloudtrace.agent)
    • نویسنده گزارش‌ها (roles/logging.logWriter)
  3. برنامه‌تان را دوباره در App Hosting منتشر کنید.

  4. وقتی انتشار کامل شد، برنامه‌تان را بار کنید و استفاده از آن را شروع کنید. پس‌از پنج دقیقه، برنامه‌تان باید شروع به ثبت داده‌های دورسنجی کند.

مرحله ۳: پایش کردن ویژگی‌های هوش مصنوعی زایا در کنسول Firebase

وقتی دورسنجی پیکربندی می‌شود، Genkit تعداد درخواست‌ها، موفقیت، و تأخیر را برای همه جریان‌های شما ثبت می‌کند، و برای هر جریان خاص، Genkit سنجه‌های پایداری را جمع‌آوری می‌کند، نمودارهای دقیق را نشان می‌دهد، و ردگیری‌های ضبط‌شده را ثبت می‌کند.

برای پایش ویژگی‌های هوش مصنوعی پیاده‌سازی‌شده با Genkit:

  1. پس‌از پنج دقیقه، در کنسول Firebase، به سرویس‌های هوش مصنوعی > Genkit بروید تا پیام‌واره‌ها و پاسخ‌های Genkit را مرور کنید.

  2. می‌توانید سنجه‌های پایداری زیر را که توسط Genkit گردآوری شده است بازبینی کنید:

    • کل درخواست‌ها: تعداد کل درخواست‌های دریافتی توسط جریان شما.
    • نرخ موفقیت: درصد درخواست‌هایی که باموفقیت پردازش شده‌اند.
    • تأخیر صدک نودوپنجم: تأخیر صدک نودوپنجم جریان شما، که مدت زمان لازم برای پردازش ۹۵٪ درخواست‌ها است.
    • مصرف داده‌واحد:

      • داده‌واحدهای ورودی: تعداد داده‌واحدهای ارسال‌شده به مدل در پیام‌واره.
      • داده‌واحدهای برونداد: تعداد داده‌واحدهای تولیدشده توسط مدل در پاسخ.
    • استفاده از تصویر:

      • تصاویر ورودی: تعداد تصاویری که در پیام‌واره به مدل ارسال شده است.
      • تصاویر برونداد: تعداد تصاویر تولیدشده توسط مدل در پاسخ.
  3. می‌توانید سنجه‌های پایداری را ازهم باز کنید تا نمودارهای تفصیلی زیر را مشاهده کنید:

    • حجم درخواست درطول زمان.
    • نرخ موفقیت درطول زمان.
    • داده‌واحدهای ورودی و خروجی درطول زمان.
    • تأخیر (صدک ۹۵ و ۵۰) درطول زمان.

در اسناد Genkit درباره آن بیشتر بدانید.

با Firebase App Check از برنامه‌تان محافظت کنید

اگر سرویس‌های Firebase یا Google Cloud را در برنامه‌تان ادغام کرده‌اید، Firebase App Check با جلوگیری از دسترسی کارخواه‌های غیرمجاز به منابع Firebase شما، به محافظت از برنامه‌های پسین شما دربرابر سوءاستفاده کمک می‌کند. این سرویس با سرویس‌های Google (ازجمله Firebase و سرویس‌های Google Cloud) و پشت‌افزارهای سفارشی شما کار می‌کند تا منابعتان را ایمن نگه دارد.

توصیه می‌کنیم App Check را به هر برنامه‌ای که به‌طور عمومی پست می‌کنید اضافه کنید تا از منابع پسین شما دربرابر سوءاستفاده محافظت شود.

این بخش شما را در راه‌اندازی App Check در Firebase Studio بااستفاده از reCAPTCHA Enterprise برای برنامه وب ایجادشده توسط App Prototyping agent راهنمایی می‌کند، اما می‌توانید App Check را در هر برنامه‌ای که سرویس‌های Firebase را پیاده‌سازی می‌کند و می‌تواند ارائه‌دهندگان سفارشی را پیاده‌سازی کند راه‌اندازی کنید. در Firebase App Check اطلاعات بیشتری دریافت کنید.

ReCAPTCHA Enterprise تا ۱۰٬۰۰۰ ارزیابی را بدون هزینه ارائه می‌دهد.

مرحله ۱: راه‌اندازی reCAPTCHA Enterprise برای برنامه

  1. بخش reCAPTCHA Enterprise کنسول Google Cloud را باز کنید.

  2. نام پروژه Firebase خود را از انتخابگر پروژه کنسول Google Cloud انتخاب کنید.

  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 را باز کنید و از منو پیمایش روی ساخت > بررسی برنامه کلیک کنید.

  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 را به کد برنامه‌تان اضافه کنید. می‌توانید از Gemini بخواهید App Check را با reCAPTCHA Enterprise به برنامه‌تان اضافه کند (حتماً «reCAPTCHA Enterprise» را مشخص کنید و حتماً آن را دوباره بررسی کنید!)، یا مراحل مقداردهی اولیه App Check را دنبال کنید.

  5. سایتتان را در App Hosting دوباره منتشر کنید. ویژگی‌های اصالت‌سنجی و پایگاه داده‌تان را آزمایش کنید تا داده تولید شود.

  6. با باز کردن ساخت > بررسی برنامه، تأیید کنید که App Check درخواست‌ها را در کنسول Firebase دریافت می‌کند.

  7. برای بازرسی Cloud Firestore کلیک کنید. پس‌از تأیید اینکه درخواست‌ها می‌رسند، روی اجرا کردن کلیک کنید تا App Check اجرا شود.

  8. تکرار درستی‌سنجی و اجرا برای Firebase Authentication.

اگر پس‌از ثبت برنامه برای App Check، می‌خواهید برنامه‌تان را در محیطی اجرا کنید که App Check معمولاً آن را معتبر طبقه‌بندی نمی‌کند، مثلاً به‌صورت محلی درطول توسعه، یا از محیط ادغام مداوم (CI)، می‌توانید ساخت اشکال‌زدایی از برنامه‌تان ایجاد کنید که به‌جای ارائه‌دهنده گواهی واقعی از ارائه‌دهنده اشکال‌زدایی App Check استفاده می‌کند. در استفاده از App Check با ارائه‌دهنده اشکال‌زدایی در برنامه‌های وب بیشتر بدانید.

مراحل بعدی