En las siguientes secciones, se detallan las soluciones a problemas comunes que los desarrolladores encuentran cuando usan Firebase Genkit Monitoring.
No puedo ver registros ni métricas en el monitoreo de Firebase Genkit
- Asegúrate de que las siguientes APIs estén habilitadas para tu proyecto de Google Cloud subyacente:
- Asegúrate de que se apliquen los siguientes roles a la cuenta de servicio que ejecuta tu código (o la cuenta de servicio que se configuró como parte de las opciones del complemento) en IAM de Cloud.
- Escritor de métricas de Monitoring (
roles/monitoring.metricWriter
) - Agente de Cloud Trace (
roles/cloudtrace.agent
) - Escritor de registros (
roles/logging.logWriter
)
- Escritor de métricas de Monitoring (
Inspecciona los registros de la aplicación en busca de errores de escritura en Cloud Logging, Cloud Trace y Cloud Monitoring. En la infraestructura de Google Cloud, como Firebase Functions y Cloud Run, incluso cuando la telemetría está mal configurada, el agente de Cloud Logging ingiere automáticamente los registros de
stdout/stderr
, lo que te permite diagnosticar problemas en la consola de Cloud Logging.Cómo depurar de forma local:
Habilita la exportación para desarrolladores:
enableFirebaseTelemetry({ forceDevExport: true });
Para probar con tus credenciales de usuario personales, usa la CLI de gcloud para autenticarte con Google Cloud. Esto puede ayudar a diagnosticar las APIs habilitadas o inhabilitadas, pero no prueba el comando gcloud auth application-default login.
Como alternativa, puedes usar la identidad temporal como cuenta de servicio para probar el acceso similar al de producción. Debes tener el rol de IAM
roles/iam. serviceAccountTokenCreator
aplicado a tu cuenta de usuario para suplantar cuentas de servicio:gcloud auth application-default login --impersonate-service-account <SERVICE_ACCT_EMAIL>
Consulta la documentación del ADC para obtener más información.
Confiabilidad de la carga de la telemetría en Firebase Functions o Cloud Run
Cuando Genkit se aloja en Google Cloud Run (incluidas las Cloud Functions para Firebase), la carga de datos de telemetría puede ser menos confiable a medida que el contenedor cambia al estado del ciclo de vida "inactivo". Si la confiabilidad es importante para ti, considera cambiar la asignación de CPU a siempre asignada en la consola de Google Cloud.