Gestion de la cardinalité
Ce qu’est la cardinalité
Le nombre de combinaisons uniques de valeurs de label. Chaque combinaison = une time series distincte dans la TSDB. 10k series ne sont rien, 1M fait mal, 10M met la TSDB à terre.
Les principales sources d’explosion
- user_id / session_id dans les labels — des milliers d’utilisateurs × N autres labels = des millions de series
- Path HTTP sans templating —
/users/123/ordersau lieu de/users/:id/orders - Timestamps dans les labels — jamais
Comment le trouver
GET /api/v1/orgs/:slug/metricsPuis pour une métrique suspecte :
GET /api/v1/orgs/:slug/metrics/:name/labelsPlus de 1000 valeurs par label est un red flag.
Le remède
- Templater le path d’URL (
/users/:id/...) - Drop les labels sur l’agent via une configuration include/exclude
- Déplacer user_id vers les logs, pas les métriques