Sentralisert logging og rotasjon med journald og logrotate
Hold automatiserte systemer sunne ved å lese systemd-logger med journalctl og hindre at loggfiler fyller diskene ved hjelp av logrotate.
Sentralisert logging og rotasjon med journald og logrotate er en gratis leksjon i Bli ekspert på Linux-kommandolinjen på CoddyKit. Dette er leksjon 4 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Bli ekspert på Linux-kommandolinjen, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Bli ekspert på Linux-kommandolinjen inneholder totalt 4 leksjoner.
Automatisering trenger logger
Cron-jobber, systemd-tjenester og shell-funksjoner produserer alle utdata. For å kjøre systemer uten tilsyn må De fange opp, søke i og rotere disse utdataene. Her kommer journalctl og logrotate inn.
Hva er journald?
systemd-journald samler logger fra tjenester De administrerer med systemctl, i en strukturert binærjournal som De søker i med journalctl.
Vise logger
Vanlig journalctl viser alt, mens -e hopper til slutten (de nyeste oppføringene).
journalctl -eFiltrere etter tjeneste
-u begrenser journalen til én unit, noe som er perfekt for feilsøking av én enkelt tjeneste.
journalctl -u nginx.serviceFølge logger direkte
-f strømmer inn nye oppføringer etter hvert som de kommer, omtrent som tail -f for systemd.
journalctl -u nginx.service -fFiltrere etter tid og prioritet
--since og -p begrenser resultatene. Her viser vi feil fra den siste timen.
journalctl --since '1 hour ago' -p errKontrollere journalstørrelsen
Journaler kan bli store. --vacuum-size begrenser dem til en angitt størrelse.
sudo journalctl --vacuum-size=200MLogger i ren tekst og logrotate
Mange apper skriver fortsatt til /var/log/*.log. logrotate roterer, komprimerer og sletter disse etter en tidsplan, slik at diskene ikke blir fulle.
cat /etc/logrotate.confEn logrotate-regel
Legg en konfigurasjon i /etc/logrotate.d/. Denne roterer daglig, beholder 7 kopier og komprimerer gamle kopier.
/var/log/myapp/*.log {
daily
rotate 7
compress
missingok
notifempty
}Teste logrotate
-d kjører en tørrkjøring i feilsøkingsmodus som viser hva som ville skjedd, uten å endre filer. -f tvinger frem en umiddelbar rotering.
sudo logrotate -d /etc/logrotate.d/myappKnytte det til automatisering
La cron-jobber og funksjoner logge til en egen fil, administrer filen med en logrotate-regel, og bruk journalctl for alt som kjøres som en systemd-tjeneste. Da fyller ingenting disken i stillhet.
Hurtigsjekk
Hvilket journalctl-alternativ viser logger for én enkelt systemd-tjeneste?
Oppsummering
Du kan holde automatiserte systemer observerbare og ryddige:
journalctl -u,-f,--since,-psøker i systemd-loggene--vacuum-sizereduserer størrelsen på journalenlogrotateroterer og komprimerer logger i ren tekst via/etc/logrotate.d/logrotate -dkjører konfigurasjonen i testmodus
Lær deg Bli ekspert på Linux-kommandolinjen med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «Sentralisert logging og rotasjon med journald og logrotate» gratis?
Ja – hele teksten i «Sentralisert logging og rotasjon med journald og logrotate» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Bli ekspert på Linux-kommandolinjen-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Bli ekspert på Linux-kommandolinjen inneholder totalt 4 leksjoner.
Hva lærer jeg i «Sentralisert logging og rotasjon med journald og logrotate»?
Hold automatiserte systemer sunne ved å lese systemd-logger med journalctl og hindre at loggfiler fyller diskene ved hjelp av logrotate. Du øver på Bli ekspert på Linux-kommandolinjen med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Bli ekspert på Linux-kommandolinjen?
Ingen tidligere erfaring er nødvendig. Bli ekspert på Linux-kommandolinjen på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.
Hvor lang tid tar leksjonen «Sentralisert logging og rotasjon med journald og logrotate»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Bli ekspert på Linux-kommandolinjen-leksjonen?
Ja. Alle Bli ekspert på Linux-kommandolinjen-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Planlegging av jobber: `cron` og `at`
- Tjenestehåndtering: `systemctl` (systemd)
- Automatisere oppgaver med shell-funksjoner
- Sentralisert logging og rotasjon med journald og logrotate