nginx: via Logrotate Logs löschen

Ein kleiner Quickfix für zwischendurch: wer bisher – so wie ich – dachte, dass Logrotate automatisch Logs nach einer Zeit löscht, wird enttäuscht sein. Das ist natürlich ein peinlicher RTFM-Fehler, aber lässt sich leicht beheben. Z.B. möchte ich bei meinen nginx Logs maximal 7 Tage aufheben und dann löschen (DSGVO lässt grüßen).

Dazu muss man in der Logrotate nginx Konfiguration (/etc/logrotate.d/nginx) folgende Zeile nach postrotate hinzufügen:


postrotate
      /usr/bin/find /var/log/nginx/ -name "*.gz" -mtime +7 -delete

Um das Ergebnis direkt prüfen zu können, kann man so Logrotate zu manueller Ausführung verhelfen:


logrotate --force /etc/logrotate.d/nginx

BefehllogrotatelogslöschennginxServer
Comments (0)
Add Comment