Firebase 遙測外掛程式需要 Google Cloud 或 Firebase 專案 ID 和應用程式憑證。
如果您沒有 Google Cloud 專案和帳戶,可以前往 Firebase 控制台或 Google Cloud 控制台設定。所有 Firebase 專案 ID 都是 Google Cloud 專案 ID。
啟用 API
新增外掛程式前,請確認專案已啟用下列 API:
這些 API 應列在專案的 API 資訊主頁中。如要進一步瞭解如何啟用及停用 API,請按一下這裡。
使用者驗證
如要將遙測資料從本機開發環境匯出至 Firebase Genkit 監控,您必須使用 Google Cloud 進行驗證。
最簡單的驗證方式是使用 gcloud CLI,因為它會透過應用程式預設憑證 (ADC),自動將您的憑證提供給架構。
如果您尚未安裝 gcloud CLI,請先按照安裝操作說明操作。
使用
gcloud
CLI 進行驗證:gcloud auth application-default login
設定專案 ID
gcloud config set project PROJECT_ID
部署至 Google Cloud
如果您將程式碼部署至 Google Cloud 或 Firebase 環境 (Cloud Functions、Cloud Run、App Hosting 等),系統會使用應用程式預設憑證自動偵測專案 ID 和憑證。
您必須使用 IAM 控制台,將下列角色套用至執行程式的服務帳戶 (即「已附加的服務帳戶」):
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
不確定哪個服務帳戶是正確的服務帳戶嗎?請參閱「尋找或建立服務帳戶」一節。
在 Google Cloud 外部部署 (使用 ADC)
盡可能使用應用程式預設憑證,讓外掛程式可使用憑證。
這通常包括產生服務帳戶金鑰,並將這些憑證部署至實際工作環境。
按照操作說明設定服務帳戶金鑰。
確認服務帳戶具備下列角色:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
將憑證檔案部署至實際工作環境 (不要簽入至原始碼)
將
GOOGLE_APPLICATION_CREDENTIALS
環境變數設為憑證檔案的路徑。GOOGLE_APPLICATION_CREDENTIALS = "path/to/your/key/file"
不確定哪個服務帳戶是正確的服務帳戶嗎?請參閱「尋找或建立服務帳戶」一節。
在 Google Cloud 外部部署 (不使用 ADC)
在某些無伺服器環境中,您可能無法部署憑證檔案。
按照操作說明設定服務帳戶金鑰。
確認服務帳戶具備下列角色:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
下載憑證檔案。
將憑證檔案的內容指派給
GCLOUD_SERVICE_ACCOUNT_CREDS
環境變數,如下所示:
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"
}'
不確定哪個服務帳戶是正確的服務帳戶嗎?請參閱「尋找或建立服務帳戶」一節。
尋找或建立服務帳戶
如何找出適當的服務帳戶:
Firebase 函式和 Cloud Run
PROJECT ID-compute@developer.gserviceaccount.com
App Engine
PROJECT ID@appspot.gserviceaccount.com
應用程式託管
firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com
如果您是在 Google 生態系統外部署,或不想使用預設服務帳戶,可以在 Google Cloud 主控台建立服務帳戶。