Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Consulta de las métricas de Prometheus
Ahora que las métricas se están incorporando al espacio de trabajo, puede consultarlas.
Para crear paneles con representaciones visuales de las métricas, puede utilizar un servicio como Amazon Managed Grafana. Amazon Managed Grafana (o una instancia independiente de Grafana) puede crear una interfaz gráfica que muestre las métricas en una amplia variedad de estilos de presentación de pantalla. Para obtener más información sobre Amazon Managed Grafana, consulte la Guía del usuario de Amazon Managed Grafana.
También puede crear consultas únicas, explorar los datos o crear aplicaciones propias que utilicen las métricas mediante consultas directas. Las consultas directas utilizan la API de Amazon Managed Service para Prometheus y el lenguaje de consultas de Prometheus estándar, PromQL, para obtener datos del espacio de trabajo de Prometheus. Para obtener más información sobre PromQL y su sintaxis, consulte Consultas de Prometheus
Hoja de referencia de ProMQL
Utiliza esta hoja de referencia de ProMQL (lenguaje de consultas de Prometheus) como referencia rápida cuando consultes métricas en tu espacio de trabajo de Amazon Managed Service for Prometheus. Con ProMQL, puede seleccionar y agregar datos de series temporales en tiempo real a través de su funcional lenguaje de consulta.
Para obtener más información sobre ProMQL, consulte la hoja de trucos de ProMQL
Selectores básicos
Seleccione series temporales por nombre de métrica y etiquetas que coincidan:
# Select all time series with the metric name http_requests_total http_requests_total # Select time series with specific label values http_requests_total{job="prometheus", method="GET"} # Use label matchers http_requests_total{status_code!="200"} # Not equal http_requests_total{status_code=~"2.."} # Regex match http_requests_total{status_code!~"4.."} # Negative regex match
Selectores de vectores de rango
Seleccione un rango de muestras a lo largo del tiempo:
# Select 5 minutes of data http_requests_total[5m] # Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks), y (years) cpu_usage[1h] memory_usage[30s]
Operadores de agregación
Agregue datos en varias series temporales:
# Sum all values sum(http_requests_total) # Sum by specific labels sum by (job) (http_requests_total) sum without (instance) (http_requests_total) # Other aggregation operators avg(cpu_usage) # Average min(response_time) # Minimum max(response_time) # Maximum count(up) # Count of series stddev(cpu_usage) # Standard deviation
Funciones habituales
Aplica funciones para transformar tus datos:
# Rate of increase per second (for counters) rate(http_requests_total[5m]) # Increase over time range increase(http_requests_total[1h]) # Derivative (for gauges) deriv(cpu_temperature[5m]) # Mathematical functions abs(cpu_usage - 50) # Absolute value round(cpu_usage, 0.1) # Round to nearest 0.1 sqrt(memory_usage) # Square root # Time functions time() # Current Unix timestamp hour() # Hour of day (0-23) day_of_week() # Day of week (0-6, Sunday=0)
Operadores binarios
Realice operaciones aritméticas y lógicas:
# Arithmetic operators cpu_usage + 10 memory_total - memory_available disk_usage / disk_total * 100 # Comparison operators (return 0 or 1) cpu_usage > 80 memory_usage < 1000 response_time >= 0.5 # Logical operators (cpu_usage > 80) and (memory_usage > 1000) (status_code == 200) or (status_code == 201)
Ejemplos prácticos de consultas
Consultas de monitorización habituales que puedes utilizar en tu espacio de trabajo de Amazon Managed Service for Prometheus:
# CPU usage percentage 100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) # Memory usage percentage (1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)) * 100 # Request rate per second sum(rate(http_requests_total[5m])) by (job) # Error rate percentage sum(rate(http_requests_total{status_code=~"5.."}[5m])) / sum(rate(http_requests_total[5m])) * 100 # 95th percentile response time histogram_quantile(0.95, sum(rate(http_request_duration_seconds_bucket[5m])) by (le)) # Top 5 instances by CPU usage topk(5, avg by (instance) (cpu_usage))