Haute cardinalité c'est souvent un label qui prend trop de valeurs différentes genre un ID unique de session ou de transaction.
Pour trouver les coupables tu peux utiliser `cardinality_limit_exceeded` dans Prometheus si tu as une version récente. Ou alors tu `group by` tes labels et tu comptes les séries.
Dans ta config de scraping tu peux `relabel_configs` pour `drop` ou `hashmod` les labels qui posent problème. Ou `label_replace` pour standardiser des valeurs. Faut être précis pour pas tout casser.
relabel_configs:
- source_labels: [__name__]
action: keep
regex: "^(http_requests_total|...)"
- source_labels: [problematic_label]
action: drop
Si c'est un truc qui vient d'un service mesh style Istio parfois ils ajoutent des labels très granulaires pour le tracing. Faut voir si tu peux configurer Istio pour réduire ça ou le relabeler après coup.
Ok c'était un `request_id` qui était remonté comme label depuis une app. J'ai mis un `drop` dans le `relabel_configs` et l'alerte est partie. Merci
Vous devez être connecté pour poster un message !
Recevoir les derniers articles gratuitement en créant un compte !
S'inscrire
grenier-matthieu
Membre depuis le 16/05/2024J'ai une alerte Prometheus qui gueule sur des métriques à haute cardinalité. Ça me fait des trous dans mes dashboards. Comment je peux identifier ça rapidement et corriger