Autentikasi dan otorisasi

Plugin telemetri Firebase memerlukan project ID Google Cloud atau Firebase dan kredensial aplikasi.

Jika tidak memiliki project dan akun Google Cloud, Anda dapat menyiapkannya di Firebase Console atau di Konsol Google Cloud. Semua project ID Firebase adalah project ID Google Cloud.

Mengaktifkan API

Sebelum menambahkan plugin, pastikan API berikut diaktifkan untuk project Anda:

API ini harus tercantum di dasbor API untuk project Anda. Klik untuk mempelajari lebih lanjut cara mengaktifkan dan menonaktifkan API.

Autentikasi Pengguna

Untuk mengekspor telemetri dari lingkungan pengembangan lokal ke Firebase Genkit Monitoring, Anda harus melakukan autentikasi dengan Google Cloud.

Cara termudah untuk melakukan autentikasi sebagai diri sendiri adalah menggunakan gcloud CLI, yang akan otomatis menyediakan kredensial Anda ke framework melalui Kredensial Default Aplikasi (ADC).

Jika Anda belum menginstal gcloud CLI, ikuti petunjuk penginstalan terlebih dahulu.

  1. Lakukan autentikasi menggunakan gcloud CLI:

    gcloud auth application-default login
  2. Menetapkan ID project

    gcloud config set project PROJECT_ID

Men-deploy ke Google Cloud

Jika men-deploy kode ke lingkungan Google Cloud atau Firebase (Cloud Functions, Cloud Run, App Hosting, dll.), project ID dan kredensial akan ditemukan secara otomatis dengan Kredensial Default Aplikasi.

Anda harus menerapkan peran berikut ke akun layanan yang menjalankan kode Anda (yaitu 'akun layanan terlampir') menggunakan IAM Console:

  • roles/monitoring.metricWriter
  • roles/cloudtrace.agent
  • roles/logging.logWriter

Tidak yakin akun layanan mana yang tepat? Lihat bagian Menemukan atau membuat akun layanan.

Men-deploy di luar Google Cloud (dengan ADC)

Jika memungkinkan, gunakan Kredensial Default Aplikasi untuk menyediakan kredensial ke plugin.

Biasanya, hal ini melibatkan pembuatan kunci akun layanan dan deployment kredensial tersebut ke lingkungan produksi Anda.

  1. Ikuti petunjuk untuk menyiapkan kunci akun layanan.

  2. Pastikan akun layanan memiliki peran berikut:

    • roles/monitoring.metricWriter
    • roles/cloudtrace.agent
    • roles/logging.logWriter
  3. Men-deploy file kredensial ke produksi (jangan memeriksa kode sumber)

  4. Tetapkan variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS sebagai jalur ke file kredensial.

    GOOGLE_APPLICATION_CREDENTIALS = "path/to/your/key/file"

Tidak yakin akun layanan mana yang tepat? Lihat bagian Menemukan atau membuat akun layanan.

Men-deploy di luar Google Cloud (tanpa ADC)

Di beberapa lingkungan serverless, Anda mungkin tidak dapat men-deploy file kredensial.

  1. Ikuti petunjuk untuk menyiapkan kunci akun layanan.

  2. Pastikan akun layanan memiliki peran berikut:

    • roles/monitoring.metricWriter
    • roles/cloudtrace.agent
    • roles/logging.logWriter
  3. Download file kredensial.

  4. Tetapkan konten file kredensial ke variabel lingkungan GCLOUD_SERVICE_ACCOUNT_CREDS sebagai berikut:

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"
}'

Tidak yakin akun layanan mana yang tepat? Lihat bagian Menemukan atau membuat akun layanan.

Menemukan atau membuat akun layanan

Untuk menemukan akun layanan yang sesuai:

  1. Buka halaman akun layanan di Konsol Google Cloud
  2. Pilih project Anda
  3. Temukan akun layanan yang sesuai. Akun layanan default yang umum adalah sebagai berikut:
  • Firebase Functions & 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

Jika men-deploy di luar ekosistem Google atau tidak ingin menggunakan akun layanan default, Anda dapat membuat akun layanan di konsol Google Cloud.