Põhitöö journald-iga

Journald on logisüsteem, mida kasutatakse tänapäevastes Linuxi-põhistes operatsioonisüsteemides süsteemisündmuste salvestamiseks. See kogub teavet erinevate teenuste, rakenduste ja süsteemiprotsesside töö kohta, et aidata administraatoritel jälgida süsteemi seisukorda ja diagnoosida vigu.
Erinevalt standardsest tekstilogi vormingust salvestab journald andmed binaarses vormingus. See võimaldab logisid salvestada kompaktsemalt ja tõhusamalt hallata, kuid samal ajal ei saa te neid logisid lihtsalt tekstiredaktoris avada. Nende vaatamiseks ja analüüsimiseks on vaja erivahendeid.
Selles artiklis vaatame, kuidas journaldi hallatavaid kirjeid vaadata ja kuidas neid tühjendada, et säästa kettaruumi.
Kuidas journald-i logisid vaadata
Logide lugemiseks kasutage käsku journalctl:
- Kõik logid:
sudo journalctl
- Logid alates viimasest taaskäivitusest:
sudo journalctl -b
- Logid kindla teenuse kohta:
sudo journalctl -u nginx
- Logid kindla päeva kohta:
sudo journalctl --since "2024-11-01" --until "2024-11-02"
- Vaadake viimaseid n kirjet (näiteks viimased 100):
sudo journalctl -n 100
- Filtreerige prioriteeditaseme järgi (näiteks vigade puhul):
sudo journalctl -p err
- Vaadake journald-i kirjeid pöördjärjekorras, alustades uuematest (kasulik, kui peate kiiresti viimaseid logikirjeid nägema):
sudo journalctl -r
- Vaadake journald-i kirjeid reaalajas (sarnaneb tail -f-le):
sudo journalctl -f
Saate neid valikuid kombineerida. Näiteks, et kuvada kõik nginx-teenuse vead 10. novembril 2024, näidates ainult viimaseid 10 kirjet:
sudo journalctl -u nginx --since "2024-11-10" --until "2024-11-10 23:59:59" -n 10
Kuidas journald-i logisid tühjendada
Kui logid võtavad liiga palju ruumi, saate neid tühjendada järgmiste käskudega:
- Tühjendage vanad logid (näiteks vanemad kui 7 päeva):
sudo journalctl --vacuum-time=7d
- Tühjendage määratud suurusest suuremad logid (näiteks 1 GB):
sudo journalctl --vacuum-size=1G
- Tühjendage täielikult kõik logid:
sudo journalctl --vacuum-files=0
Kuidas journald-i suurust vähendada
Vaikimisi võib journald hõivata palju kettaruumi, kui logisid ei piirata. Logide maksimaalse suuruse määramiseks avage journald.conf konfiguratsioonifail:
sudo nano /etc/systemd/journald.conf
Selles failis saate konfigureerida järgmisi parameetreid:
- SystemMaxUse – kõigi journald-ide maksimaalne suurus:
SystemMaxUse=1G
- RuntimeMaxUse – ajutiste journald-ide maksimaalne suurus:
RuntimeMaxUse=500M
- MaxRetentionSec – logide säilitamise maksimaalne aeg:
MaxRetentionSec=1month
Määrake oma süsteemile ja vajadustele sobivad väärtused, seejärel salvestage fail Ctrl + O abil ja väljuge redaktorist Ctrl + X abil.
Muudatuste rakendamiseks taaskäivitage journald teenus:
sudo systemctl restart systemd-journald
Saate ka lubada logimise RAM-i või isegi täielikult keelata. Ükski neist valikutest ei ole tootmiskeskkonnas soovitatav, kuna journald sisaldab olulist diagnostilist teavet. Selle täpsus ja asjakohasus on teie serveri protsesside nõuetekohaseks diagnostikaks üliolulised.
Kui soovite siiski lubada journald-i salvestamist RAM-i, määrake /etc/systemd/journald.conf järgmine väärtus:
Storage=volatile
Logimise täielikuks keelamiseks määrake:
Storage=none