Web uygulamalarını izleme ve koruma

Uygulamalarınızı yayınladıktan sonra izlemeniz ve güvenliğini sağlamanız gerekir:

App Hosting Gözlemlenebilirlik ile site performansınızı izleme

Firebase Studio içindeki Uygulamaya genel bakış panelinde, uygulamanızla ilgili temel metrikler ve bilgiler yer alır. Bu sayede, App Hosting'ün yerleşik gözlemlenebilirlik araçlarını kullanarak web uygulamanızın performansını izleyebilirsiniz. Siteniz kullanıma sunulduktan sonra Yayınla'yı tıklayarak genel bakışa erişebilirsiniz. Bu panelden şunları yapabilirsiniz:

  • Uygulamanızın yeni bir sürümünü yayınlamak için Yayınla'yı tıklayın.
  • Uygulamanızın bağlantısını paylaşın veya Uygulamanızı ziyaret edin'de doğrudan açın.
  • Uygulamanızın son 7 gündeki performansının özetini (toplam istek sayısı ve en son kullanıma sunma işleminizin durumu dahil) inceleyin. Firebase konsolunda daha fazla bilgiye erişmek için Ayrıntıları göster'i tıklayın.
  • Uygulamanızın son 24 saat içinde aldığı isteklerin sayısının HTTP durum koduna göre dökümünü içeren bir grafik görüntüleyin.

Uygulamaya genel bakış panelini kapatırsanız Yayınla'yı tıklayarak istediğiniz zaman yeniden açabilirsiniz.

App Hosting dağıtımlarını yönetme ve izleme hakkında daha fazla bilgi edinmek için Dağıtımları ve yayınları yönetme başlıklı makaleyi inceleyin.

Genkit Dağıtılan özelliklerinizin izlenmesi

Genkit özelliğinin adımlarını, girişlerini ve çıkışlarını izlemek için yapay zeka akışı kodunuzda telemetriyi etkinleştirebilirsiniz. Genkit'nın telemetri özelliği, yapay zeka akışlarınızın performansını ve kullanımını izlemenizi sağlar. Bu veriler, iyileştirme yapabileceğiniz alanları belirlemenize, sorunları gidermenize, istemlerinizi ve akışlarınızı daha iyi performans ve maliyet verimliliği için optimize etmenize ve akışlarınızın zaman içindeki kullanımını izlemenize yardımcı olabilir.

Genkit'da izlemeyi ayarlamak için Genkit yapay zeka akışlarına telemetri ekler ve sonuçları Firebase konsolunda görüntülersiniz.

1. adım: Firebase Studio'daki Genkit akış kodunuza telemetri ekleyin

Kodunuzda izlemeyi ayarlamak için:

  1. Henüz Code görünümünde değilseniz açmak için Kod değiştirme
simgesi Koda Geç'i tıklayın.

  2. Yüklü Genkit sürümünü doğrulamak için package.json simgesini kontrol edin.

  3. Terminali açın (Ctrl-Shift-C veya MacOS'te Cmd-Shift-C).

  4. Terminalin içini tıklayın ve package.json dosyanızla eşleşen sürümü kullanarak Firebase eklentisini yükleyin. Örneğin, Genkit paketleriniz package.json içinde 1.0.4 sürümündeyse eklentiyi yüklemek için aşağıdaki komutu çalıştırmanız gerekir:

    npm i --save @genkit-ai/firebase@1.0.4
  5. Gezgin'de src > ai > flows simgesini genişletin. Genkit akışlarınızı içeren bir veya daha fazla TypeScript dosyası, flows klasöründe görünür.

  6. Açmak istediğiniz akışı tıklayın.

  7. Dosyanın içe aktarma bölümünün en altına, FirebaseTelemetry içe aktarmak ve etkinleştirmek için aşağıdakileri ekleyin:

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

2. adım: İzinleri ayarlayın

Firebase projenizi oluştururken Firebase Studio, sizin için gerekli API'leri etkinleştirmiştir ancak App Hosting hizmet hesabına da izin vermeniz gerekir.

İzinleri ayarlamak için:

  1. Google Cloud IAM konsolunu açın, projenizi seçin ve ardından App Hosting hizmet hesabına aşağıdaki rolleri verin:

    • Monitoring Metric Writer (roles/monitoring.metricWriter)
    • Cloud Trace Aracısı (roles/cloudtrace.agent)
    • Günlük Yazıcı (roles/logging.logWriter)
  2. Uygulamanızı App Hosting'de yeniden yayınlayın.

  3. Yayınlama işlemi tamamlandığında uygulamanızı yükleyip kullanmaya başlayın. Beş dakika sonra uygulamanız telemetri verilerini kaydetmeye başlamalıdır.

3. adım: Firebase konsolunda üretken yapay zeka özelliklerinizi izleyin

Telemetri yapılandırıldığında Genkit, tüm akışlarınız için istek sayısını, başarıyı ve gecikmeyi kaydeder. Ayrıca, her bir akış için kararlılık metriklerini toplar, ayrıntılı grafikler gösterir ve yakalanan izleri günlüğe kaydeder.Genkit

Genkit ile uygulanan yapay zeka özelliklerinizi izlemek için:

  1. Beş dakika sonra Firebase konsolunda Genkit'yı açıp Genkit'nın istemlerini ve yanıtlarını inceleyin.

    Genkit aşağıdaki kararlılık metriklerini derler:

    • Toplam istek sayısı: Akışınız tarafından alınan toplam istek sayısı.
    • Başarı oranı: Başarıyla işlenen isteklerin yüzdesi.
    • 95. yüzdelik dilimdeki gecikme: Akışınızın 95. yüzdelik dilimdeki gecikmesi. Bu, isteklerin% 95'inin işlenmesi için gereken süredir.
    • Jeton kullanımı:

      • Giriş jetonları: İstemde modele gönderilen jeton sayısı.
      • Çıkış jetonları: Yanıtta model tarafından oluşturulan jetonların sayısı.
    • Görüntü kullanımı:

      • Giriş resimleri: İstemde modele gönderilen resimlerin sayısı.
      • Çıkış resimleri: Yanıtta model tarafından oluşturulan resimlerin sayısı.

    Kararlılık metriklerini genişletirseniz ayrıntılı grafikler kullanılabilir:

    • Zaman içindeki istek hacmi.
    • Zaman içindeki başarı oranı.
    • Zaman içindeki giriş ve çıkış jetonları.
    • Zaman içindeki gecikme (95. ve 50. yüzdelik dilim).

Genkit hakkında daha fazla bilgiyi Genkit adresinde bulabilirsiniz.

Firebase App Check ile uygulamanızı koruma

Firebase veya Google Cloud hizmetlerini uygulamanıza entegre ettiyseniz, Firebase App Check yetkisiz istemcilerin Firebase kaynaklarınıza erişmesini engelleyerek uygulama arka uçlarınızı kötüye kullanıma karşı korur. Kaynaklarınızın güvenliğini sağlamak için hem Google hizmetleriyle (Firebase ve Google Cloud hizmetleri dahil) hem de kendi özel arka uçlarınızla birlikte çalışır.

Arka uç kaynaklarınızı kötüye kullanıma karşı korumak için herkese açık olarak yayınladığınız tüm uygulamalara App Check eklemenizi öneririz.

Bu bölümde, App Prototyping agent tarafından oluşturulan bir web uygulaması için reCAPTCHA Enterprise kullanarak App Check kurulumu hakkında bilgi verilmektedir. Ancak Firebase hizmetlerini uygulayan ve özel sağlayıcıları uygulayabilen tüm uygulamalarda App Check kurulumu yapabilirsiniz.Firebase Studio Daha fazla bilgiyi Firebase App Check adresinde bulabilirsiniz.

ReCAPTCHA Enterprise,10.000'e kadar değerlendirmeyi ücretsiz olarak sunar.

1. adım: Uygulamanız için reCAPTCHA Enterprise'ı ayarlayın

  1. Google Cloud konsolunun reCAPTCHA Enterprise bölümünü açın.

  2. Google Cloud konsolundaki proje seçiciden Firebase projenizin adını seçin.

  3. reCAPTCHA Enterprise API'yi etkinleştirmeniz istenirse etkinleştirin.

  4. Başlayın'ı tıklayın ve reCAPTCHA site anahtarınız için bir görünen ad ekleyin.

  5. Varsayılan Web Uygulama türü anahtarını kabul edin.

  6. Alan adı ekle'yi tıklayın ve bir alan adı ekleyin. App Hosting alanınızı (örneğin, App Hosting) ve uygulamanızla kullandığınız veya kullanmayı planladığınız tüm özel alanları eklemeniz gerekir.studio--PROJECT_ID.REGION.hosted.app

  7. Next step'i (Sonraki adım) tıklayın.

  8. Giriş sorgulamalarını kullanacak mısınız? seçeneğini işaretlemeyin.

  9. Anahtar oluştur'u tıklayın.

  10. Anahtar kimliğinizi kopyalayıp kaydedin ve YapılandırmaApp Check bölümüne gidin.

2. adım: App Check yapılandırın

  1. Firebase konsolunu açın ve gezinme menüsünden Oluştur > App Check'i tıklayın.

  2. Başlayın'ı, ardından uygulamanızın yanındaki Kaydol'u tıklayın.

  3. ReCAPTCHA'yı genişletmek için tıklayın ve reCAPTCHA Enterprise için oluşturduğunuz anahtar kimliğini yapıştırın.

  4. Kaydet'i tıklayın.

3. adım: Kodunuza App Check ekleyin

  1. Firebase Studio'a dönün ve Code görünümünde, oluşturduğunuz site anahtarını .env dosyanıza ekleyin:

    NEXT_PUBLIC_RECAPTCHA_SITE_KEY=RECAPTCHA_SITE_KEY
    
  2. Firebase yapılandırmanız henüz .env konumuna kaydedilmediyse yapılandırmayı edinin:

    • Firebase Konsol'da Proje ayarları'nı açın ve uygulamanıza karşılık gelen bölümden bulun.

    • Code görünümündeki terminalden:

      1. Firebase'e giriş yapın: firebase auth login
      2. Projenizi seçin: firebase use FIREBASE_PROJECT_ID
      3. Firebase yapılandırmasını alın: firebase apps:sdkconfig
  3. Yapılandırmayı .env dosyanıza aşağıdaki gibi görünecek şekilde ekleyin:

    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 kodunu uygulama kodunuza ekleyin. Gemini'dan reCAPTCHA Enterprise'ı uygulamanıza eklemesini isteyebilir (App Check'ı belirtmeyi ve iki kez kontrol etmeyi unutmayın) veya BaşlatmaApp Check bölümündeki adımları uygulayabilirsiniz.

  5. Sitenizi App Hosting adresinde yeniden yayınlayın. Bazı veriler oluşturmak için Firebase özelliklerinizi test etmeyi deneyin.

  6. Derleme > App Check'i açarak App Check konsolunda istek alıp almadığını doğrulayın.Firebase

  7. Firebase hizmetlerini incelemek için tıklayın. İsteklerin geldiğini doğruladıktan sonra App Check'ı zorunlu kılmak için Uygula'yı tıklayın.

  8. Firebase Authentication için doğrulama ve zorunlu kılma işlemlerini tekrarlayın.

Uygulamanızı App Check için kaydettikten sonra, uygulamanızı normalde App Check tarafından geçerli olarak sınıflandırılmayacak bir ortamda (ör. geliştirme sırasında yerel olarak veya sürekli entegrasyon (CI) ortamında) çalıştırmak istiyorsanız uygulamanızın gerçek bir onay sağlayıcı yerine App Check hata ayıklama sağlayıcısını kullanan bir hata ayıklama sürümünü oluşturabilirsiniz. Web uygulamalarında hata ayıklama sağlayıcısıyla App Check kullanma başlıklı makaleden daha fazla bilgi edinin.

Sonraki adımlar