Firebase telemetri eklentisi için bir Google Cloud veya Firebase proje kimliği ve uygulama kimlik bilgileri gerekir.
Google Cloud projeniz ve hesabınız yoksa Firebase Console'da veya Google Cloud Console'da proje ve hesap oluşturabilirsiniz. Tüm Firebase proje kimlikleri Google Cloud proje kimlikleridir.
API'leri etkinleştir
Eklentiyi eklemeden önce projenizde aşağıdaki API'lerin etkinleştirildiğinden emin olun:
Bu API'ler, projenizin API kontrol panelinde listelenmelidir. API'leri etkinleştirme ve devre dışı bırakma hakkında daha fazla bilgi edinmek için tıklayın.
Kullanıcı Kimlik Doğrulaması
Yerel geliştirme ortamınızdaki telemetriyi Firebase Genkit Monitoring'e aktarmak için Google Cloud ile kimliğinizi doğrulamanız gerekir.
Kendi kimliğinizle kimlik doğrulamanın en kolay yolu gcloud CLI'yi kullanmaktır. Bu komut, kimlik bilgilerinizi uygulama varsayılan kimlik bilgileri (ADC) aracılığıyla çerçeveye otomatik olarak sunar.
gcloud CLI yüklü değilse önce yükleme talimatlarını uygulayın.
gcloud
KSA'yı kullanarak kimlik doğrulama:gcloud auth application-default login
Proje kimliğinizi ayarlama
gcloud config set project PROJECT_ID
Google Cloud'a dağıtma
Kodunuzu bir Google Cloud veya Firebase ortamına (Cloud Functions, Cloud Run, App Hosting vb.) dağıtıyorsanız proje kimliği ve kimlik bilgileri Uygulama Varsayılan Kimlik Bilgileri ile otomatik olarak bulunur.
IAM Konsolu'nu kullanarak kodunuzu çalıştıran hizmet hesabına ("bağlı hizmet hesabı") aşağıdaki rolleri uygulamanız gerekir:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
Hangi hizmet hesabının doğru olduğundan emin değil misiniz? Hizmet hesabınızı bulma veya oluşturma bölümüne bakın.
Google Cloud dışında dağıtma (ADC ile)
Mümkünse kimlik bilgilerini eklentiye sunmak için Uygulama Varsayılan Kimlik Bilgileri'ni kullanın.
Bu genellikle bir hizmet hesabı anahtarı oluşturmayı ve bu kimlik bilgilerini üretim ortamınıza dağıtmayı içerir.
Hizmet hesabı anahtarı oluşturma talimatlarını uygulayın.
Hizmet hesabının aşağıdaki rollere sahip olduğundan emin olun:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
Kimlik bilgisi dosyasını üretime dağıtın (kaynak koda kaydetmeyin)
GOOGLE_APPLICATION_CREDENTIALS
ortam değişkenini, kimlik bilgisi dosyasının yolu olarak ayarlayın.GOOGLE_APPLICATION_CREDENTIALS = "path/to/your/key/file"
Hangi hizmet hesabının doğru olduğundan emin değil misiniz? Hizmet hesabınızı bulma veya oluşturma bölümüne bakın.
Google Cloud dışında dağıtma (ADC olmadan)
Bazı sunucusuz ortamlarda kimlik bilgisi dosyası dağıtamayabilirsiniz.
Hizmet hesabı anahtarı oluşturma talimatlarını uygulayın.
Hizmet hesabının aşağıdaki rollere sahip olduğundan emin olun:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
Kimlik bilgisi dosyasını indirin.
Kimlik bilgisi dosyasının içeriğini
GCLOUD_SERVICE_ACCOUNT_CREDS
ortam değişkenine aşağıdaki gibi atayın:
GCLOUD_SERVICE_ACCOUNT_CREDS='{
"type": "service_account",
"project_id": "your-project-id",
"private_key_id": "your-private-key-id",
"private_key": "your-private-key",
"client_email": "your-client-email",
"client_id": "your-client-id",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "your-cert-url"
}'
Hangi hizmet hesabının doğru olduğundan emin değil misiniz? Hizmet hesabınızı bulma veya oluşturma bölümüne bakın.
Hizmet hesabınızı bulma veya oluşturma
Uygun hizmet hesabını bulmak için:
- Google Cloud Console'da hizmet hesapları sayfasına gidin
- Projenizi seçin
- Uygun hizmet hesabını bulun. Sık kullanılan varsayılan hizmet hesapları şunlardır:
Firebase Functions ve Cloud Run
PROJECT ID-compute@developer.gserviceaccount.com
App Engine
PROJECT ID@appspot.gserviceaccount.com
App Hosting
firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com
Google ekosisteminin dışında dağıtım yapıyorsanız veya varsayılan bir hizmet hesabı kullanmak istemiyorsanız Google Cloud Console'da bir hizmet hesabı oluşturabilirsiniz.