Doba archivace historie systemd journald

Doba archivace historie systemd journald
« kdy: 26. 02. 2024, 15:44:45 »
Zdravím vespolek,

snažím se jít s dobou a proniknout do systemd. Leccos jsem už strávil a používám i několik vlastních services. Záhadou pro mě ale stále zůstává journald:

Na různých serverech ve výchozí konfiguraci je doba archivace záznamů hooodně, ale hooodně různá. Na jednom jsou záznamy cca 6 měsíců zpátky a v logu je cca 4 miliony záznamů. Na jiném serveru je historie asi dva týdny a záznamů 50 tisíc.

V manuálové stránce se píše, že ve výchozím nastavení zabere log cca 15% volného místa maximálně. Takže ano, na prvním serveru je volno 230 GB, na druhém 11 GB. Na první serveru zabírají logy 4 GB na druhém 1 GB. To mi ale stejně nějak nevychází.

Takže moje otázka je, zda a jak měníte výchozí konfiguraci journald, abyste dosáhli požadované historie.

Můj pokus o konfiguraci na tom druhém serveru, kde je toho málo:

Kód: [Vybrat]
journald.conf.d/local.conf

[Journal]
Storage=
SystemMaxFiles=
SystemMaxUse=
SystemKeepFree=
MaxRetentionSec=
MaxFileSec=
Storage=persistent
SystemMaxFiles=1200
SystemMaxUse=8G
SystemKeepFree=2G
MaxRetentionSec=6month
MaxFileSec=1month

dosáhl toho, že záznamů mám 2 dny zpátky (journalctl bez parameteru). To už mi trochu škube závity :-)

Dávám tomu naději, že prostě jsem jen nepochopil něco úplně základního. Proto prosím tady o radu

Děkuji velmi mnoho :-)

---

Mimo otázku (jen povzdech):

- Celý /var/log/ má 1,2 GB, z toho journald zabírá 0,9 GB. Vím že tohle téma se řešilo často, ale mně ten nepoměr nedává stejně stále smysl.
- Výchozí konfigurace rsyslog / logrotate automaticky zajišťuje, že mám logy měsíc zpátky rotované po týdnech. Journald zdá se považuje za důležitější kolik zabere místa a neřeší historii.
« Poslední změna: 26. 02. 2024, 16:02:52 od Petr Krčmář »


Re:Doba archivace historie systemd journald
« Odpověď #1 kdy: 29. 02. 2024, 10:47:35 »
Fakt žádná odpověď? Tolik obhájců systemd tady a když jde o základní věc jako logování, tak je ticho?  ???  :)

Prosím a děkuji předem.

Re:Doba archivace historie systemd journald
« Odpověď #2 kdy: 29. 02. 2024, 11:06:36 »
Tak problém je v tom, že se loguje málo? Dobré je také nastavit
Storage=auto
Compress=yes


Ještě bych zkusil
Kód: [Vybrat]
journalctl --verify

Re:Doba archivace historie systemd journald
« Odpověď #3 kdy: 29. 02. 2024, 13:54:22 »
Na co chcete odpověď, když jste nenapsal žádnou otázku? Jestli se ptáte na to, zda je potřeba journald nakonfigurovat, když chcete, aby vyhovoval vašim potřebám – pak ano, je to potřeba. Číst myšlenky zatím journald neumí. Pokud jde o zachování logů, můžete si nakonfigurovat to, co je běžné u logovacích souborů – maximální velikost logů, maximální stáří logů, maximální velikost souboru, maximální množství souborů.

Re:Doba archivace historie systemd journald
« Odpověď #4 kdy: 29. 02. 2024, 14:09:33 »
journald nikdy nepoužívám na historii, pouze na sběr a nanejvýš zobrazení aktuálních logů ze služeb. Jeho efektivita pro hodně logů je slabá, data musí seekovat vždy z jednoho konce (buď od nejnovějších nebo od nejstarších), při velkém množství čekáš a čekáš na zobrazení logů.

Tj. doporučuji ho nepoužívat na uchování logů. Pokud dělám nějakou low cost (čti simple) konfiguraci, využiji rsyslog na vyčítání z journald do textových souborů s klasickým logrorate a retenci podle času či velikosti, ve všech ostatních případech nasazuji nějaké samostatných log kolektor s vyhledáváním, agregací a správou.