Middle
Quels types de métriques dans Prometheus connaissez-vous?
sobes.tech IA
Réponse de l'IA
Prometheus prend en charge quatre principaux types de métriques:
- Compteur (Counter): Valeur qui ne peut augmenter de manière monotone (ou se réinitialiser à zéro lors du redémarrage du processus). Utilisé pour compter des événements incrémentaux, tels que le nombre de requêtes, d’erreurs ou de tâches terminées.
// Exemple en Go var requestsTotal = prometheus.NewCounter( prometheus.CounterOpts{ Name: "http_requests_total", Help: "Nombre total de requêtes HTTP.", }, ) - Gauge (Jauge): Valeur numérique arbitraire pouvant augmenter ou diminuer. Utilisé pour mesurer l’état actuel de quelque chose, comme l’utilisation du CPU, la mémoire, le nombre d’utilisateurs actifs ou la taille de la file d’attente.
# Exemple en Python from prometheus_client import Gauge cpu_usage = Gauge('cpu_usage_percent', 'Pourcentage d’utilisation actuel du CPU') cpu_usage.set(55.5) - Histogramme (Histogram): Mesure la distribution d’échantillons (par exemple, les temps de réponse des requêtes) et les regroupe en seaux configurables. Permet d’obtenir le nombre d’échantillons dans chaque seau et la somme totale des valeurs. Utilisé pour analyser les latences.
// Exemple en Java import io.prometheus.client.Histogram; static final Histogram requestLatencies = Histogram.build() .name("http_request_duration_seconds") .help("Durée des requêtes en secondes.") .buckets(0.1, 0.5, 1.0, 2.5, 5.0, 10.0) // Seaux .register(); - Résumé (Summary): Semblable à un histogramme, mais calcule des quantiles configurables de la distribution d’échantillons dans une fenêtre temporelle glissante. Fournit également le nombre total d’échantillons et leur somme. Utile pour mesurer les latences lorsque les quantiles sont importants, mais nécessite plus de puissance de calcul côté client et peut donner des quantiles moins précis lors de l’agrégation.
# Exemple en Ruby require 'prometheus/client' requests_summary = Prometheus::Client::Summary.new(:request_duration_seconds, 'Durée des requêtes en secondes.')
Le choix du type de métrique dépend de la nature des données à surveiller.