Supervisa bases de datos con Cloud Monitoring
En esta página, se describe cómo usar un panel de Cloud Monitoring para ver las métricas disponibles, crear un panel personalizado y configurar alertas.Consulta las métricas de compatibilidad de Firestore con MongoDB
Para ver las diferentes métricas de compatibilidad de Firestore con MongoDB y crear gráficos, usa una de las siguientes opciones:
La página Monitoring en la sección de Firestore de la Google Cloud consola. Esta página incluye un panel de supervisión predefinido. También puedes crear hasta un panel personalizado. Para acceder a la página Supervisión de una base de datos, sigue estos pasos:
En la Google Cloud consola, abre la página Bases de datos de Firestore.
Selecciona una base de datos de la lista.
En el menú de navegación, haz clic en Monitoring para abrir un panel.
El explorador de métricas de Cloud Monitoring en la consola de Google Cloud Para obtener más información sobre la creación de gráficos, consulta Crea gráficos con el Explorador de métricas.
Recursos supervisados
Un recurso supervisado en la supervisión de Cloud representa una entidad física o lógica, como una máquina virtual, una base de datos o una aplicación. Los recursos supervisados contienen un conjunto único de métricas que se pueden explorar, informar a través de un panel o usar para crear alertas. Cada recurso también tiene un conjunto de etiquetas de recursos, que son pares clave-valor que contienen información adicional sobre el recurso. Las etiquetas de recursos están disponibles para todas las métricas asociadas con el recurso.
Con la API de Cloud Monitoring, el rendimiento de Firestore con compatibilidad con MongoDB se supervisa con el siguiente recurso:
Recursos | Descripción |
firestore.googleapis.com/Database | Es el tipo de recurso supervisado que proporciona desgloses de project , location y database_id . La etiqueta database_id será (default) para las bases de datos creadas sin un nombre específico. |
Métricas
Para obtener una lista completa de las métricas de Firestore, consulta Métricas de Firestore. En la siguiente sección, se describen algunas de las métricas disponibles.
Métricas del entorno de ejecución del servicio
Las métricas de serviceruntime
proporcionan una descripción general de alto nivel del tráfico de un proyecto. Estas métricas están disponibles para la mayoría de las APIs de Google Cloud . El tipo de recurso supervisado consumed_api
contiene estas métricas comunes. Estas métricas se toman como muestra cada 30 minutos, lo que suaviza los datos.
Una etiqueta de recurso importante para las métricas serviceruntime
es method
. Esta etiqueta representa el método de RPC subyacente al que se llamó. Es posible que el método del SDK al que llames no tenga el mismo nombre que el método de RPC subyacente. El motivo es que el SDK proporciona abstracción de API de alto nivel. Sin embargo, cuando intentas comprender cómo tu aplicación interactúa con Firestore, es importante comprender las métricas según el nombre del método de RPC.
Si necesitas saber cuál es el método de RPC subyacente para un método de SDK determinado, consulta la documentación de la API.
Usa las siguientes métricas del entorno de ejecución del servicio para supervisar tu base de datos.
api/request_latencies
La métrica api/request_latencies
proporciona distribuciones de latencia en todas las solicitudes completadas.
Firestore registra métricas del componente Servicio de Firestore. Las métricas de latencia incluyen el tiempo que transcurre desde que Firestore recibe la solicitud hasta que termina de enviar la respuesta, incluidas las interacciones con la capa de almacenamiento. Debido a esto, la latencia de ida y vuelta (rtt) entre el cliente y el servicio de Firestore no se incluye en estas métricas.
Documenta las métricas de operación
Firestore proporciona recuentos de operaciones de lectura, escritura y eliminación. La métrica de escritura proporciona un desglose entre las operaciones "CREATE" y "UPDATE". Estas métricas están alineadas con las operaciones de CRUD.
Las siguientes métricas se pueden usar para comprender si tu base de datos realiza muchas operaciones de lectura o escritura, y la proporción de documentos nuevos en comparación con los documentos borrados.
document/delete_ops_count
: Es la cantidad de eliminaciones correctas de documentos.document/read_ops_count
: Es la cantidad de lecturas de documentos correctas de las consultas o búsquedas.document/write_ops_count
: Es la cantidad de operaciones de escritura de documentos realizadas correctamente.
Métricas de índice
Las tasas de escritura de índices se pueden comparar con la métrica document/write_ops_count
para comprender el fanout de índices.
index/write_count
: Es el recuento de operaciones de escritura en el índice.
Métricas de TTL
Las métricas de TTL de Firestore con compatibilidad con MongoDB se usan para supervisar el efecto de la política de TTL aplicada.
document/ttl_deletion_count
: Es el recuento total de documentos borrados por los servicios de TTL.document/ttl_expiration_to_deletion_delays
: Es el tiempo transcurrido entre el vencimiento de un documento con un TTL y el momento en que se borró.
Crea paneles personalizados de Cloud Monitoring
En Cloud Monitoring, los paneles personalizados te permiten mostrar información que te resulta relevante de forma organizada. Por ejemplo, puedes crear un panel para mostrar las métricas de rendimiento y las políticas de alertas de tu proyecto en tu entorno de producción.
Para obtener más información sobre la configuración de un panel personalizado, consulta Administra un panel personalizado y Agrega widgets al panel.
Crea una política de alertas
Cloud Monitoring te permite crear alertas para notificarte cuando se produce un cambio en una condición de métrica. Puedes usar estas alertas para recibir notificaciones sobre posibles problemas antes de que afecten a tus usuarios.
Para obtener más información sobre cómo crear alertas, consulta Crea políticas de alertas de límite de métrica.
Considera el siguiente ejemplo en el que creamos una política de alertas de latencia. La política de alertas verifica la latencia del p99 en una ventana progresiva de 5 minutos. Si la latencia del p99 permanece por encima de 250 ms durante 5 minutos, se activa la alerta.
Console
En la Google Cloud consola, ve a la página Monitoring y, luego, selecciona notifications Alertas.
Selecciona Crear política.
Selecciona la métrica Latencias de solicitudes en el recurso API consumida.
Agrega un filtro de servicio para
firestore.googleapis.com
para las bases de datos nativas de Firestore.Haz clic en Siguiente para configurar el activador.
Selecciona Umbral como Tipos de condiciones.
Una condición de umbral se establece en un valor de umbral de 250 ms. Se activa una alerta cuando el valor de latencia de p99 permanece igual durante todo el período de la ventana progresiva (5 min).
Establece el valor del umbral en 250.
Haz clic en Siguiente para configurar las notificaciones.
Establece el nombre de la política de alertas y haz clic en Siguiente.
Revisa la configuración de las alertas y haz clic en Crear política.
MQL
Puedes implementar la misma política de alertas de latencia con una consulta del lenguaje de consulta de Monitoring (MQL). Para obtener más ejemplos del uso de MQL, consulta Ejemplos de consultas de MQL.
fetch consumed_api
| metric 'serviceruntime.googleapis.com/api/request_latencies'
| filter (resource.service == 'firestore.googleapis.com')
| group_by 5m,
[value_request_latencies_percentile:
percentile(value.request_latencies, 99)]
| every 5m
| condition val() > 0.25 's'