Logrotatie is het automatisch archiveren en verwijderen van oude logbestanden om te voorkomen dat ze de schijf vullen. Het standaard hulpmiddel hiervoor op Linux is logrotate.
logrotate draait dagelijks via cron of een systemd-timer. Het controleert de configuratie en roteert bestanden die aan de criteria voldoen:
syslog.1 (of met datum)syslog.2.gz, syslog.3.gz, …)Globale instellingen in /etc/logrotate.conf, per dienst in /etc/logrotate.d/:
/var/log/nginx/*.log {
daily # dagelijks roteren
missingok # geen fout als bestand ontbreekt
rotate 14 # 14 versies bewaren
compress # gzip-compressie
delaycompress # pas comprimeren na de volgende rotatie
notifempty # niet roteren als bestand leeg is
postrotate
nginx -s reopen # nginx laten weten dat het nieuwe bestand is
endscript
}
logrotate -d /etc/logrotate.conf # droog draaien, niks aanpassen
logrotate -f /etc/logrotate.conf # forceer rotatie nu