gibt es eine Möglichkeit oder Einstellung das die Protokollierung der Nextcloud in der ânextcloud.logâ, nur die EintrĂ€ge die nicht Ă€lter als 2 Wochen sind, speichert?
Alles was Àlter als 2 Wochen ist soll automatisch gelöscht werden.
In Nextcloud selbst nicht, aber unter Linux gibt es diverse Tools um Log files zu managen.
Eine nicht sehr elegante, aber einfache Möglichkeit wÀre, einen Cronjob zu erstellen, der einfach alle zwei Wochen, das Log File löscht. Nextcloud erstellt dann automatisch ein neues und die alten EintrÀge sind weg.
Eine elegantere Lösung wÀre die Verwendung von logrotate, was auch den Vorteil hÀtte, dass die alten EintrÀge nicht verloren sind, wenn man zu einem spÀteren Zeitpunkt doch noch einmal darauf zugreifen möchte.
Eine nicht sehr elegante, aber einfache Möglichkeit wÀre, einen Cronjob zu erstellen, der einfach alle zwei Wochen, das Log File löscht. Nextcloud erstellt dann automatisch ein neues und die alten EintrÀge sind weg.
Das wÀre meine nÀchste Vorgehensweise gewesen.
Eine elegantere Lösung wÀre die Verwendung von logrotate, was auch den Vorteil hÀtte, dass die alten EintrÀge nicht verloren sind, wenn man zu einem spÀteren Zeitpunkt doch noch einmal darauf zugreifen möchte.
Das schaue ich mir mal an.
Klingt gut.
In der Regel behebe ich die Meldungen recht schnell, so das ich alte EintrÀge normalerweise nicht benötige.
rotate 4: BehÀlt die Files der letzten 4 Rotationen und löscht dann das Àlteste
weekly: Rotiert das Log jede Woche
Weitere Möglichkeiten wĂ€ren daily, monthly, yearly oder via size eine Grösse festlegen, welche die Log Datei rotieren lĂ€sst, wenn sie eine bestimmte Grösse ĂŒberschreitet, z. B. 10k, 10M, 10G usw.
Wenn nichts angegeben wird, werden die Protokolle bei jeder AusfĂŒhrung von logrotate rotiert. So könntest du dann logrotate via Crontab alle 14 Tage ausfĂŒhren:
ErklÀrung der restlichen Parameter: (Zusammengefasst mit ChatGPT)
missingok: Verhindert, dass logrotate eine Fehlermeldung ausgibt, wenn die Protokolldatei fehlt.
compress: Komprimiert die rotierten Protokolldateien, um Platz zu sparen.
delaycompress: Verzögert die Komprimierung der neuesten rotierten Protokolldatei bis zum nÀchsten Rotationszyklus.
notifempty: Verhindert die Rotation leerer Protokolldateien.
sharedscripts: Stellt sicher, dass die postrotate- und prerotate-Skripte nur einmal ausgefĂŒhrt werden, auch wenn mehrere Protokolldateien dem Muster entsprechen.
Das ist eine sehr gute Lösung, Chapeau!
Funktioniert hervorragend. Hatte es gestern schon mal versucht, scheiterte aber an den Rechte und logrotate warf eine Fehlermeldung aus.
Durch das verlegen des Verzeichnis nach /var/log/nextcloud funzt es wunderbar.
Ich hÀtte auch das Àndern des Pfades der log Datei nicht beachtet.
logrotate -d /etc/logrotate.d/nextcloud
warning: logrotate in debug mode does nothing except printing debug messages! Consider using verbose mode (-v) instead if this is not what you want.
reading config file /etc/logrotate.d/nextcloud
Reading state from file: /var/lib/logrotate/status
Allocating hash table for state file, size 64 entries
Creating new state
Handling 1 logs
rotating pattern: /var/log/nextcloud/nextcloud.log weekly (4 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/nextcloud/nextcloud.log
Creating new state
Now: 2024-07-29 11:49
Last rotated at 2024-07-29 11:00
log does not need rotating (log has already been rotated)