prometheus alerts qui se declenchent pas

Posté par jeannine07 le 16/12/2025
RÉSOLU

jeannine07

Membre depuis le 17/06/2021

salut les sres

j'ai un problème bizarre avec prometheus on a des alertes configurées pour plein de choses (cpu mémoire disques etc) mais elles se déclenchent pas. quand je regarde l'ui prometheus /alerts elles restent en état pending même quand les conditions sont remplies depuis longtemps

mes règles d'alerte sont dans un fichier à part `rules.yml` il est bien chargé. `alertmanager` est configuré pareil et reçoit rien. pas d'erreur dans les logs prometheus non plus

une idée de ce que je loupe ?

Commentaires

dschneider

Membre depuis le 24/04/2025

yo. classique aussi ça

si c'est en pending ça veut dire que la condition de l'alerte est vraie mais que la clause `for:` de ton rule n'est pas encore passée. genre si tu as `for: 5m` il faut que la condition soit vraie pendant 5 minutes avant que ça devienne firing

tu es sûr que le `for` est passé ? et que ta query d'alerte est bien correcte et ramène des données ?

jeannine07

Membre depuis le 17/06/2021

oui le `for: 5m` est passé plusieurs fois la condition est vraie depuis des heures. et la query est bonne quand je la teste dans l'ui ça me renvoie bien les séries qui devraient déclencher

j'ai des `rate(node_cpu_seconds_total[5m]) > 0.8` des trucs simples comme ça

dschneider

Membre depuis le 24/04/2025

bizarre. si les conditions sont true et `for` est passé mais que ça reste en pending c'est que prometheus n'évalue pas les règles assez souvent ou que quelque chose bloque

check l'`evaluation_interval` dans ta config prometheus.yml. si il est trop élevé genre 5m ou 10m les règles sont pas checkées assez souvent pour passer de pending à firing après le `for`

global:
  scrape_interval: 15s
  evaluation_interval: 15s # <= ça

jeannine07

Membre depuis le 17/06/2021

ah merde ! l'`evaluation_interval` est à 1h ! ça doit être ça je me suis planté en copiant une config

donc même si `for` est à 5m si l'évaluation se fait toutes les heures ça peut pas passer en firing

dschneider

Membre depuis le 24/04/2025

exactement. prometheus évalue les règles toutes les `evaluation_interval`. si ton interval est d'une heure et ton `for` est de 5m alors l'alerte ne peut pas être déclenchée avant au moins une heure et cinq minutes

mets le à 15s ou 30s. en général c'est le même que le `scrape_interval`

jeannine07

Membre depuis le 17/06/2021

j'ai mis `evaluation_interval` à 30s et relancé prometheus. direct les alertes qui étaient pending sont passées en firing et alertmanager a envoyé les notifs

c'était une connerie de config de base. merci pour le coup de main

dschneider

Membre depuis le 24/04/2025

nickel. des fois les trucs les plus bêtes sont les plus vicieux à débusquer. good job d'avoir trouvé

jeannine07

Membre depuis le 17/06/2021

ouais carrément. je me sentais un peu bête mais bon on apprend toujours. thx !

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire