Genkit 監控:疑難排解

以下各節將詳細說明開發人員在使用 Firebase Genkit Monitoring 時遇到的常見問題解決方案。

我無法在 Firebase Genkit Monitoring 中查看追蹤記錄或指標

  1. 請確認您已為底層 Google Cloud 專案啟用下列 API:
  2. 請確認在 Cloud IAM 中,將下列角色套用至執行程式的服務帳戶 (或已在外掛程式選項中設定的服務帳戶)。
    • Monitoring 指標寫入者 (roles/monitoring.metricWriter)
    • Cloud Trace Agent (roles/cloudtrace.agent)
    • Logs Writer (roles/logging.logWriter)
  3. 檢查應用程式記錄檔,確認是否有寫入 Cloud Logging、Cloud Trace 和 Cloud Monitoring 的錯誤。在 Firebase Functions 和 Cloud Run 等 Google Cloud 基礎架構中,即使遙測資料設定錯誤,Cloud Logging Agent 也會自動擷取 stdout/stderr 的記錄,方便您在 Cloud Logging 主控台中診斷問題。

  4. 在本機偵錯:

    啟用開發人員匯出功能:

    enableFirebaseTelemetry({
      forceDevExport: true
    });
    

    如要使用個人使用者憑證進行測試,請使用 gcloud CLI 向 Google Cloud 進行驗證。這麼做有助於診斷已啟用或停用的 API,但不會測試 gcloud auth 應用程式預設登入作業。

    您也可以模擬服務帳戶,以便測試類似實際環境的存取權。您必須將 roles/iam. serviceAccountTokenCreator IAM 角色套用至使用者帳戶,才能冒用服務帳戶:

    gcloud auth application-default login --impersonate-service-account <SERVICE_ACCT_EMAIL>

    詳情請參閱 ADC 說明文件。

Firebase Functions / Cloud Run 中的遙測上傳可靠性

如果 Genkit 在 Google Cloud Run 中託管 (包括 Cloud Functions for Firebase),由於容器會切換為「閒置」生命週期狀態,因此遙測資料上傳功能的穩定性可能會降低。如果您重視更高的可靠度,建議您在 Google Cloud 控制台中將CPU 配置變更為一律配置