Sujet :
RÉSOLU
Liste des sujets Répondre Créer un sujet
Membre depuis le 01/06/2024
salut tout le monde ! j'ai un problème avec prometheus. j'ai une alerte pour cpu usage high > 90% sur 5min et une autre pour memory free low < 10% sur 5min. les métriques montrent bien que ça dépasse les seuils mais l'alerte prometheus ne se déclenche jamais. les targets sont up l'exporteur envoie bien les données. j'ai raté un truc ?
# rule.yml (simplifié)
groups:
- name: my-app-alerts
rules:
- alert: HighCpuUsage
expr: 100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) > 90
for: 5m
labels:
severity: critical
annotations:
summary: "CPU usage high on {{ $labels.instance }}"
- alert: LowMemoryFree
expr: node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 < 10
for: 5m
labels:
severity: warning
annotations:
summary: "Low memory on {{ $labels.instance }}"
vous devez être connecté pour poster un message !
Recevoir les derniers articles gratuitement en créant un compte !
S'inscrire
mace-jeannine
Membre depuis le 08/05/2024
hello. première chose à check c'est prometheus lui-même. va dans l'ui sous /alerts et regarde si l'alerte apparaît en pending ou firing. si elle n'apparaît pas du tout c'est que l'expression est ptete pas bonne ou que la rule_file est pas chargée
marchal-franck
Membre depuis le 23/08/2024
pour l'expr du cpu attention au 100 - ... idle. si t'as plusieurs coeurs ça peut être tricky. essaie avec sum by (instance) (rate(node_cpu_seconds_total{mode!="idle"}[5m])) / count by (instance) (node_cpu_seconds_total{mode="idle"}[5m]) * 100 > 90. et regarde les types de métriques (gauge counter) si tu fais pas une connerie avec le rate
charlotte00
Membre depuis le 06/05/2024
et la config de alertmanager ? prometheus envoie les alertes à alertmanager. si alertmanager est down ou mal configuré prometheus ne verra pas d'où il doit l'envoyer. check les logs de prometheus pour voir s'il y a des erreurs de connexion à alertmanager
oceane-lebon
Membre depuis le 21/07/2024
un classique aussi c'est le for: 5m. si tes données ont des gaps ou si l'exporteur est intermittent prometheus ne verra pas 5 minutes de données continues au-dessus du seuil et l'alerte ne partira pas. assure-toi que tes scrape intervals et evaluation intervals sont alignés
maurice-legros
Membre depuis le 01/06/2024
d'acc merci à tous. en fait c'était une combinaison. ma rule_file n'était pas rechargée après modification (j'avais oublié le kill -hup) et l'expr du cpu était pas tip top. j'ai corrigé le rule_file et l'expr cpu avec vos suggestions et là ça marche impec. j'ai vu l'alerte se déclencher direct en testant. merci bien