Sujet :

SRE : Prometheus alerte trop tard sur la latence du backend

RÉSOLU

Liste des sujets Répondre Créer un sujet

vdumont

Membre depuis le 21/07/2024

salut la compagnie ! j'ai un souci avec une alerte prometheus. je veux être prévenu dès qu'un endpoint de mon backend dépasse 500ms de latence moyenne sur 5 minutes. j'ai cette règle mais l'alerte se déclenche genre 10 minutes après que le problème ait commencé


- alert: HighBackendLatency
  expr: |
    avg_over_time(http_request_duration_seconds_bucket{job="my-backend", le="0.5"}[5m]) < 0.95
  for: 2m
  labels:
    severity: critical
  annotations:
    summary: "Latence élevée sur le backend"

mon scrape interval est de 15s. qqn a déjà eu ça ?

hoareau-emile

Membre depuis le 23/07/2024

ton expr elle est un peu à l'envers là. le="0.5" c'est le nombre de requêtes qui ont pris moins de 500ms. si tu veux la latence moyenne tu devrais plutôt utiliser un histogram_quantile avec rate sur les buckets pour estimer le p99 ou p90

lesage-pauline

Membre depuis le 07/08/2024

ouais carrément ! pour un p90 sur 5 minutes qui dépasse 500ms tu ferais un truc du genre :


histogram_quantile(0.90, sum by (le, job) (rate(http_request_duration_seconds_bucket{job="my-backend"}[5m]))) > 0.5

et for: 2m c ptete trop long pour la détection rapide, essaye avec 1m ou même 30s si c'est vraiment critique

jclement

Membre depuis le 07/08/2024

attention aux données manquantes aussi. si ton backend crashe ou ne renvoie plus de métriques l'alerte ne se déclenchera jamais. tu peux ajouter un sum(up{job="my-backend"}) == 0 pour capter les arrêts nets

vdumont

Membre depuis le 21/07/2024

ok je vois mon erreur dans l'expression. je vais adapter avec le histogram_quantile et un for plus court. j'avais pas pensé au up aussi. merci pour les tips ça devrait être beaucoup plus réactif comme ça

hoareau-emile

Membre depuis le 23/07/2024

nickel. pense à valider ta règle dans prometheus ui avant de la pusher pour t'assurer que ça te sort les bonnes valeurs

Répondre

vous devez être connecté pour poster un message !

Rejoindre la communauté

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

S'inscrire