El complemento de telemetría de Firebase requiere un ID de proyecto de Google Cloud o Firebase y credenciales de la aplicación.
Si no tienes un proyecto ni una cuenta de Google Cloud, puedes configurar uno en Firebase console o en la consola de Google Cloud. Todos los IDs de proyectos de Firebase son IDs de proyectos de Google Cloud.
Habilita las APIs
Antes de agregar el complemento, asegúrate de que las siguientes APIs estén habilitadas para tu proyecto:
Estas APIs deberían estar enumeradas en el panel de la API de tu proyecto. Haz clic para obtener más información sobre cómo habilitar o inhabilitar las APIs.
Autenticación de usuarios
Para exportar la telemetría de tu entorno de desarrollo local a Firebase Genkit Monitoring, deberás autenticarte con Google Cloud.
La forma más fácil de autenticarte es usar la CLI de gcloud, que hará que tus credenciales estén disponibles automáticamente para el framework a través de las credenciales predeterminadas de la aplicación (ADC).
Si no tienes instalada la CLI de gcloud, primero sigue las instrucciones de instalación.
Autentica con la CLI de
gcloud
:gcloud auth application-default login
Determina tu ID del proyecto
gcloud config set project PROJECT_ID
Implementa en Google Cloud
Si implementas tu código en un entorno de Google Cloud o Firebase (Cloud Functions, Cloud Run, App Hosting, etc.), el ID y las credenciales del proyecto se descubrirán automáticamente con las Credenciales predeterminadas de la aplicación.
Deberás aplicar los siguientes roles a la cuenta de servicio que ejecuta tu código (es decir, la "cuenta de servicio adjunta") con la consola de IAM:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
¿No sabes qué cuenta de servicio es la correcta? Consulta la sección Busca o crea tu cuenta de servicio.
Implementación fuera de Google Cloud (con ADC)
Si es posible, usa las Credenciales predeterminadas de la aplicación para que las credenciales estén disponibles para el complemento.
Por lo general, esto implica generar una clave de cuenta de servicio y, luego, implementar esas credenciales en tu entorno de producción.
Sigue las instrucciones para configurar una clave de cuenta de servicio.
Asegúrate de que la cuenta de servicio tenga los siguientes roles:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
Implementa el archivo de credenciales en producción (no lo verifiques en el código fuente).
Establece la variable de entorno
GOOGLE_APPLICATION_CREDENTIALS
como la ruta de acceso al archivo de credenciales.GOOGLE_APPLICATION_CREDENTIALS = "path/to/your/key/file"
¿No sabes qué cuenta de servicio es la correcta? Consulta la sección Busca o crea tu cuenta de servicio.
Implementación fuera de Google Cloud (sin ADC)
En algunos entornos sin servidor, es posible que no puedas implementar un archivo de credenciales.
Sigue las instrucciones para configurar una clave de cuenta de servicio.
Asegúrate de que la cuenta de servicio tenga los siguientes roles:
roles/monitoring.metricWriter
roles/cloudtrace.agent
roles/logging.logWriter
Descarga el archivo de credenciales.
Asigna el contenido del archivo de credenciales a la variable de entorno
GCLOUD_SERVICE_ACCOUNT_CREDS
de la siguiente manera:
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"
}'
¿No sabes qué cuenta de servicio es la correcta? Consulta la sección Busca o crea tu cuenta de servicio.
Busca o crea tu cuenta de servicio
Para encontrar la cuenta de servicio adecuada, haz lo siguiente:
- Navega a la página de cuentas de servicio en la consola de Google Cloud.
- Selecciona tu proyecto
- Busca la cuenta de servicio adecuada. Las cuentas de servicio predeterminadas comunes son las siguientes:
Funciones de Firebase y Cloud Run
PROJECT ID-compute@developer.gserviceaccount.com
App Engine
PROJECT ID@appspot.gserviceaccount.com
Hosting de apps
firebase-app-hosting-compute@PROJECT ID.iam.gserviceaccount.com
Si realizas la implementación fuera del ecosistema de Google o no quieres usar una cuenta de servicio predeterminada, puedes crear una cuenta de servicio en la consola de Google Cloud.