En este documento, se explica cómo leer datos de métricas, también llamados datos de series temporales, con el método timeSeries.list
en la API de Monitoring.
En este documento, se explica cómo usar las bibliotecas cliente para llamar al método timeSeries.list
.
Descripción general
Cada llamada al método timeSeries.list
puede mostrar cualquier cantidad de series temporales de un único tipo de métrica. Por ejemplo, si usas Compute Engine, el tipo de métrica compute.googleapis.com/instance/cpu/usage_time
tiene una serie temporal separada para cada una de tus instancias de VM.
Para obtener una introducción a las métricas y las series temporales, consulta Métricas, series temporales y recursos.
Puedes especificar los datos de series temporales que deseas si proporcionas la siguiente información al método timeSeries.list
:
- Una expresión de filtro que especifica el tipo de métrica. Opcionalmente, el filtro selecciona un subconjunto de las series temporales de la métrica si especificas los recursos que producen las series temporales o los valores para ciertas etiquetas en las series temporales.
- Un intervalo de tiempo que limita la cantidad de datos que se muestran.
- De manera opcional, una especificación de cómo combinar varias series temporales para producir un resumen agregado de los datos. Para obtener más información y ejemplos, consulta Agrega datos.
Filtros de series temporales
Puedes especificar qué series temporales deseas recuperar si pasas un filtro de series temporales al método timeSeries.list
.
A continuación, se indican los componentes de filtros comunes:
El filtro debe especificar un solo tipo de métrica. Por ejemplo:
metric.type = "compute.googleapis.com/instance/cpu/usage_time"
Para recuperar métricas definidas por el usuario, cambia el prefijo metric.type en el filtro a
custom.googleapis.com
o a otro prefijo si se usa;external.googleapis.com
se usa con frecuencia.El filtro puede especificar valores para las etiquetas de dimensión de la métrica. El tipo de métrica determina qué etiquetas están presentes. Por ejemplo:
(metric.label.instance_name = "your-instance-id" OR metric.label.instance_name = "your-other-instance-id")
En la expresión anterior,
label
es correcta, aunque el objeto de la métrica real usalabels
como su clave.El filtro puede seleccionar solo aquellas series temporales que contienen un tipo de recurso supervisado específico:
resource.type = "gce_instance"
Los componentes del filtro se pueden combinar en un solo filtro de series temporales, como el siguiente:
metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND
(metric.label.instance_name = "your-instance-id" OR
metric.label.instance_name = "your-other-instance-id")
Si no especificas valores para todas las etiquetas de métrica, el método list
mostrará una serie temporal para cada combinación de valores en las etiquetas no especificadas. El método muestra solo series temporales que tienen datos.
Intervalos
Cuando usas la API para leer datos, debes especificar el intervalo de tiempo para el que deseas recuperar datos configurando las horas de inicio y finalización.
La API recupera datos del intervalo (start, end]
, es decir, desde después de la hora de inicio hasta la hora de finalización.
La hora de inicio no debe ser posterior a la de finalización. Si especificas una hora de inicio posterior a la hora de finalización, la API mostrará un error.
Si solo deseas recuperar datos con una marca de tiempo específica, establece la hora de inicio igual a la hora de finalización o, de manera equivalente, no establezcas la hora de inicio.
Formato de hora
Las horas de inicio y finalización deben especificarse como strings en formato RFC 3339. Por ejemplo:
2024-03-01T12:34:56+04:00 2024-03-01T12:34:56.992Z
El comando date -Iseconds
en Linux es útil para generar marcas de tiempo.
Lista de operaciones básicas
El método timeSeries.list
se puede usar para mostrar datos simples y sin procesar o para mostrar datos muy procesados. En esta sección, se ilustra cómo enumerar las series temporales disponibles y cómo obtener los valores de una serie temporal específica.
Ejemplo: Listado de series temporales disponibles
Este ejemplo muestra cómo listar solo los nombres y descripciones de las series temporales que coincide con un filtro, en lugar de mostrar todos los datos disponibles:
C#
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Go
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Java
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Node.js
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
PHP
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Python
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Ruby
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Si tienes dificultades, consulta Soluciona problemas de la API de Monitoring.
Ejemplo: Obtén datos de series temporales
En este ejemplo, se muestran las mediciones del uso de CPU que se registraron durante un intervalo de 20 minutos para una instancia específica de Compute Engine. La cantidad de datos que se muestran depende de la tasa de muestreo de la métrica. Dado que el uso de CPU se muestrea cada minuto, los resultados de esta consulta incluyen alrededor de 20 datos. Cuando se muestran varios datos para una serie temporal, la API los devuelve en orden inverso; no hay anulación para este orden de puntos.
C#
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Go
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Java
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Node.js
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
PHP
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Python
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Ruby
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Si tienes dificultades, consulta Soluciona problemas de la API de Monitoring.
Agrega datos
El método timeSeries.list
puede realizar agregaciones y reducciones estadísticas en los datos de series temporales que se muestran. En las siguientes secciones, se muestran dos ejemplos.
Para obtener más información, consulta Filtrado y agregación: manipula series temporales.
Ejemplo: Alineación de series temporales
En este ejemplo, se reducen las 20 mediciones de uso individuales en cada serie temporal a solo dos mediciones: El uso medio para los dos períodos de 10 minutos dentro del intervalo de 20 minutos. Los datos de cada serie temporal se alinean primero en períodos de 10 minutos y luego se promedian los valores de cada período de 10 minutos.
La operación de alineación tiene dos ventajas: suaviza los datos y alinea los datos de todas las series temporales en límites exactos de 10 minutos. Luego, los datos alineados se pueden procesar aún más.
C#
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Go
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Java
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Node.js
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
PHP
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Python
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Ruby
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Si tienes dificultades, consulta Soluciona problemas de la API de Monitoring.
Ejemplo: Reducción a través de series temporales
En este ejemplo, se extiende el ejemplo anterior cuando combina las series temporales alineadas de las tres instancias de VM en una sola serie temporal que mide el uso promedio de todas las instancias.
C#
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Go
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Java
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Node.js
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
PHP
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Python
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Ruby
Para autenticarte en Monitoring, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Antes de ejecutar muestras de código, configura la variable de entorno GOOGLE_CLOUD_UNIVERSE_DOMAIN
como s3nsapis.fr
.
Si tienes dificultades, consulta Soluciona problemas de la API de Monitoring.
¿Qué sigue?
- Obtén más información sobre la retención y la latencia de los datos de métricas.
- Obtén más información sobre Filtrado y agregación: manipula series temporales.