4 commentaires
salut. typique. ton rate avec un > 0 c'est trop sensible. faudrait ajouter un for: 5m pour que l'alerte reste active pendant au moins 5 minutes avant de se déclencher. et ptete monter le seuil à > 1 ou > 2 requêtes en erreur par exemple
oui le for est clé. aussi pour éviter les micro-bursts regarde plutôt sur increase(http_requests_total{job="myservice", code="5xx"}[10m]) > 5 par exemple. l'increase est plus robuste que le rate pour des compteurs qui augmentent vite et redescendent pas
attention avec increase ça compte sur la période totale. si tu veux un taux, reste sur rate mais en ajoutant un avg_over_time ou un sum_over_time si t'as plusieurs instances. et vraiment le for c'est le minimum syndical pour éviter le flapping.
ok je vois. j'ai modifié l'alerte pour utiliser sum(rate(http_requests_total{job="myservice", code="5xx"}[5m])) > 0.5 et j'ai ajouté un for: 2m. depuis ça a l'air beaucoup plus stable. plus de spam. thx pour les conseils c'est top !
Laisser une réponse
Vous devez être connecté pour poster un message !
hello à tous. je galère avec une alerte prometheus qui flappe genre toutes les 5min. c'est pour un service crucial mais l'alerte se déclenche puis se résout direct alors que le service n'est pas down. ça devient chiant à filtrer. mon alert est basée sur
sum(rate(http_requests_total{job="myservice", code="5xx"}[5m])) > 0