Monitorizar el uso

En esta página se describe cómo puede monitorizar su uso de Firestore y detectar posibles problemas en su aplicación.

Panel de uso

Usa los paneles de uso de la Google Cloud consola y de la consola de Firebase para ver las lecturas, escrituras y eliminaciones de documentos a lo largo del tiempo.

Control de acceso

Los paneles de uso requieren el permiso de gestión de identidades y accesos monitoring.timeSeries.list. Los roles Propietario, Editor y Lector del proyecto conceden este permiso. También puedes conceder este permiso a través de un rol de Cloud Monitoring o un rol personalizado.

Panel de uso de la base de datos

Para ver las métricas de uso de una base de datos de Firestore, abre la página Uso de la base de datos en la consola de Google Cloud .

  1. En la Google Cloud consola, ve a la página Bases de datos.

    Ir a Bases de datos

  2. Seleccione la base de datos que necesite de la lista de bases de datos.

  3. En el menú de navegación, haz clic en Uso.

  4. Haga clic en el enlace del mensaje que aparece en la página para ver el uso de su base de datos.

    El panel de control de uso de la base de datos de Firestore de la consola Google Cloud .

Panel de uso agregado

Si tu proyecto tiene varias bases de datos de Firestore, puedes ver las métricas de uso agregadas en la Google Cloud consola o en la consola de Firebase.

Google Cloud consola

En la Google Cloud consola, ve a la página Uso del proyecto.

Ir al Google Cloud uso del proyecto

El panel de uso del proyecto muestra las operaciones de documentos a lo largo del tiempo de la siguiente manera:

El panel de control de uso del proyecto de Firestore en la consola Google Cloud .

Consola de Firebase

Ir a la página de uso de Firestore (consola de Firebase)

El panel de control de uso de Firestore en la consola de Firebase.

Panel de uso e informes de facturación

Los paneles de control de uso de Firestore de las consolas de Firebase y Cloud proporcionan una estimación del uso. Pueden ayudarte a identificar picos de uso. Sin embargo, el panel de control no muestra una vista exacta de las operaciones facturadas. Es probable que el uso facturado sea mayor. En todos los casos de discrepancia, el informe de facturación tiene prioridad sobre el panel de uso.

Entre las operaciones que provocan discrepancias entre el panel de uso y el uso facturado se incluyen las siguientes:

  • Operaciones de importación y exportación. Las lecturas y escrituras realizadas por estas operaciones no se muestran en el panel de control de uso.
  • Escrituras de verificación sin operación. Las escrituras que solo verifican la existencia o la no existencia de un documento contribuyen a las operaciones de lectura facturadas, pero se muestran como `UPDATE_NOOP` y `DELETE_NOOP`, respectivamente, en el panel de control de uso de escritura.
  • Escrituras sin operaciones. Las operaciones que no provocan ningún cambio en la base de datos, como una actualización que no cambia los valores de los campos o una escritura en un documento eliminado, pueden mostrarse en el panel de control de uso como `UPDATE_NOOP` o `DELETE_NOOP`. Aunque se muestren como `NOOP`, siguen contribuyendo a las operaciones facturadas.
  • Escrituras combinadas. En los casos en los que se escriben varios datos en el mismo documento de forma rápida y consecutiva, el panel de control de uso puede combinar varias escrituras y contarlas como una. Al facturar el uso, cada escritura se sigue contabilizando por separado.

    El panel de control de uso también contrae las escrituras de las transformaciones de campos, como las marcas de tiempo del servidor, los incrementos numéricos y las operaciones de unión de arrays. En el caso de las transformaciones de campos, es posible que el panel de control de uso cuente varias operaciones como una sola.

  • Consultas que no devuelven resultados. Las consultas con cero resultados tienen un coste de una operación de lectura. Este uso se factura, pero no aparece en el panel de uso.
  • Operaciones de lectura de entradas de índice leídas. Este uso se factura, pero no aparece en el panel de control de uso. Por ejemplo, las consultas de agregación facturan las entradas de índice leídas, pero este uso no aparece en el panel de uso.

El panel de control de uso de las eliminaciones no registra las operaciones de vencimiento automático realizadas por las políticas de tiempo de vida (TTL). Consulta las métricas de TTL de Cloud Monitoring.

Uso de reglas de seguridad

Además, la consola de Firebase proporciona un panel de control de evaluación de reglas de seguridad de Firebase, una vista general útil de las invocaciones de reglas. También puedes monitorizar el uso de las reglas de seguridad de Firebase a través de Cloud Monitoring. De esta forma, se proporcionan las mismas métricas de evaluación de reglas, así como la posibilidad de crear paneles de control personalizados, analizar tendencias y configurar alertas (por ejemplo, cuando aumentan las solicitudes denegadas). Consulta la referencia de métricas de Cloud Monitoring para ver la lista completa de métricas disponibles.

Ir a Reglas

Panel de control de monitorización de reglas de Firestore en la consola de Firebase.

Métricas de Cloud Monitoring

Cloud Monitoring recoge métricas, eventos y metadatos de los productos de Google Cloud . El panel de control de uso de la consola de Firestore muestra los mismos datos de métricas. Para configurar paneles de control personalizados y alertas de uso, utiliza Cloud Monitoring.

Cloud Monitoring incluye las siguientes métricas de Firestore:

Nombre de la métrica Descripción
Operaciones de lectura de documentos

Número de lecturas de documentos correctas. Puede desglosar esta métrica por el tipo de lectura: LOOKUP o QUERY.

Esta métrica no incluye las lecturas de las operaciones de exportación gestionada ni de eliminación en bloque.

Operaciones de escritura de documentos

Número de escrituras de documentos correctas. Puede desglosar la métrica por el tipo de escritura: CREATE o UPDATE.

Esta métrica no incluye las escrituras de las operaciones de importación gestionadas.

Operaciones de eliminación de documentos Número de documentos eliminados correctamente.
Conexiones activas

Número de conexiones activas a tu base de datos.

Cada SDK para móviles y web activo mantiene una sola conexión, que se puede compartir entre varios procesadores de capturas. Las bibliotecas de cliente del servidor crean una conexión por cada detector de instantáneas.

Procesadores de capturas

Número de procesadores de capturas en todas las conexiones activas.

Recuento de eliminaciones por tiempo de vida

Número total de documentos eliminados por las políticas de tiempo de vida (TTL).

Retrasos de eliminación por vencimiento del tiempo de vida

Tiempo transcurrido entre el momento en que un documento caducó según una política de tiempo de vida (TTL) y el momento en que se eliminó.

Uso de las actualizaciones en tiempo real

Usa las métricas de conexiones activas y procesadores de capturas para medir el uso que haces de las actualizaciones en tiempo real.

Supongamos que un usuario abre tu aplicación en su teléfono. A continuación, la aplicación se conecta a Firestore y se suscribe a 10 consultas. De esta forma, tus métricas aumentarán en 1 conexión activa y 10 procesadores de capturas.

Frecuencia de muestreo

Las métricas de Firestore se muestrean cada minuto, pero las actualizaciones pueden tardar hasta 4 minutos en aparecer en los paneles de control.

Métricas de latencia

Las métricas de latencia del backend están disponibles a través de las métricas comunes de Google Cloud Firestore.

Por ejemplo, puedes encontrar un gráfico de latencia p50 en la vista del explorador de métricas de la consola de Cloud.

Configurar un panel de control de Cloud Monitoring

Para ver un panel de control predefinido o configurar uno, consulta el artículo Usar el panel de control de monitorización.

Siguientes pasos