diff --git a/loki/values.yaml b/loki/values.yaml index eb64d2d..5e1405b 100644 --- a/loki/values.yaml +++ b/loki/values.yaml @@ -102,10 +102,32 @@ loki: limits_config: # -- 30 jours. Voir `RETENTION` en fin de fichier pour la mesure. retention_period: 720h - # Le défaut amont refuse tout échantillon de plus de 168 h. À la première - # remontée d'un agent resté hors ligne, ces lignes seraient jetées. + # ⚠⚠ CE N'EST PAS UN RÉGLAGE DE CONSERVATION, ET LE CONFONDRE BLOQUE TOUT. + # + # Posé à 720 h pour « coller » à la rétention, il a produit un second + # blocage complet, juste après celui du schéma : l'agent lit aussi les + # fichiers rotatés présents sur le disque, dont certains remontent à + # AVRIL. Loki refusait alors chaque lot — + # + # entry ... has timestamp too old: 2026-04-13T13:47:05Z, + # oldest acceptable timestamp is: 2026-08-08T15:41:50Z + # + # — et comme l'agent REJOUE un lot refusé, la file ne se vidait jamais : + # `loki_write_sent_entries_total` restait à 0 pour toujours. Un lot + # définitivement refusé bloque la file derrière lui. + # + # Ce garde-fou existe contre les horloges DÉCALÉES, pas pour borner la + # conservation. On l'ouvre donc largement au-delà de ce que le disque + # peut porter ; ce qui borne vraiment, c'est `retention_period` + le + # compacteur, plus bas. + # + # ⚠ Conséquence assumée : au tout premier démarrage, l'agent remonte + # l'historique encore sur le disque, et le compacteur supprimera dans + # l'heure ce qui dépasse 30 jours. On paie une ingestion inutile UNE + # fois, en échange d'une file qui se vide. Le bénéfice de bord est + # qu'on récupère au passage l'histoire déjà écrite. reject_old_samples: true - reject_old_samples_max_age: 720h + reject_old_samples_max_age: 8760h max_cache_freshness_per_query: 10m split_queries_by_interval: 15m query_timeout: 300s