Esegui una ricerca sui parametri Prometheus - Amazon Managed Service for Prometheus

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui una ricerca sui parametri Prometheus

Ora che i parametri vengono inseriti nell'area di lavoro, puoi interrogarli.

Per creare dashboard con rappresentazioni visive delle tue metriche, puoi utilizzare un servizio come Amazon Managed Grafana. Amazon Managed Grafana (o un'istanza autonoma di Grafana) può creare un'interfaccia grafica che mostra le tue metriche in un'ampia varietà di stili di presentazione del display. Per ulteriori informazioni su Amazon Managed Grafana, consulta la Amazon Managed Grafana User Guide.

Puoi anche creare query singole, esplorare i tuoi dati o scrivere applicazioni personalizzate che utilizzano i tuoi parametri utilizzando le tue query utilizzando le query dirette. Le query dirette utilizzano l'API Amazon Managed Service for Prometheus e il linguaggio di query Prometheus standard, PromQL, per ottenere dati dal tuo spazio di lavoro Prometheus. Per ulteriori informazioni su PromQL e sulla sua sintassi, consulta Interrogazione a Prometheus nella documentazione di Prometheus.

Foglio informativo di PromQL

Usa questo cheat sheet di Prometheus (Prometheus Query Language) come riferimento rapido per interrogare le metriche nel tuo spazio di lavoro Amazon Managed Service for Prometheus. Con PromQL, puoi selezionare e aggregare i dati delle serie temporali in tempo reale tramite il suo linguaggio di interrogazione funzionale.

Per maggiori dettagli su PromQL, consulta PromQL Cheat Sheet sul sito web. PromLabs

Selettori di base

Seleziona le serie temporali in base al nome della metrica e ai corrispondenti valori di etichetta:

# 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

Selettori vettoriali di intervallo

Seleziona un intervallo di campioni nel tempo:

# 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]

Operatori di aggregazione

Aggrega i dati su più serie temporali:

# 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

Funzioni comuni

Applica funzioni per trasformare i tuoi dati:

# 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)

Operatori binari

Esegui operazioni aritmetiche e logiche:

# 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)

Esempi pratici di interrogazioni

Query di monitoraggio comuni che puoi utilizzare nel tuo spazio di lavoro 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))