Fixed upstream: https://github.com/logrotate/logrotate/commit/73493ec38c5e806fa66d8c3f13259775da6282d9
Quote:
Fix 'olddir' usage with wildcard in the middle of path in the pattern… … definition when the pattern did not match any log file.
RHEL 7 logrotate-3.8.6-7.el7_2.x86_64
Auf einem RedHat-Linux-Server habe ich eine große Anzahl von Anwendungsservern und möchte eine einheitliche Protokollierungsroutine zum Bereinigen von Protokolldateien. Die Verwendung von Platzhaltern ist von größter Bedeutung, so dass ich keine ständig wachsende und schrumpfende Liste führen muss.
Bei der Kombination von Platzhaltern scheint die Option "missingok" UND "olddir" nicht zu funktionieren. Wenn ich ein Muster für Debug-Protokolldateien definiere, die möglicherweise vorhanden sind oder nicht, und nur "missingok" verwende, ist alles in Ordnung. Wenn ich die "olddir" -Option hinzufüge, schlägt dies fehl mit:
# logrotate -d /etc/logrotate.d/foobar reading config file /etc/logrotate.d/foobar olddir is now old_logs error: /etc/logrotate.d/foobar:28 error verifying log file path /srv/www/servers/*/logs: No such file or directory removing last 1 log configs
Die Konfigurationsdatei:
/srv/www/servers/*/logs/*_foobar.txt { daily olddir old_logs missingok }
Ich habe gesehen, dass es in http://rhn.redhat.com/errata/RHBA-2008-0703.html ein seit langem bestehendes Update gibt, das das Problem mit Wildcards und missingok behebt, aber hat jemand das Problem mit olddir gesehen oder behoben?
Ich überlege, olddir zu überspringen und postrotate + find / mv zu verwenden, aber ich möchte das nicht tun.
Fixed upstream: https://github.com/logrotate/logrotate/commit/73493ec38c5e806fa66d8c3f13259775da6282d9
Quote:
Fix 'olddir' usage with wildcard in the middle of path in the pattern… … definition when the pattern did not match any log file.
Ich habe das gleiche Problem getroffen.
Schauen Sie sich das Verzeichnis mit /var/logs/*/*/*.log an und verwenden Sie "missingok" und "olddir" zusammen.
Wenn sich unter diesem Verzeichnis kein Protokoll befindet, wird Folgendes beanstandet:
Fehler beim Überprüfen des Protokolldateipfads / var / logs / * / *: Keine Datei oder Verzeichnis
@sastorsl wie geht es dir dann?
Minenlogrotat 3.7.8.
Es scheint in 3.11.0 behoben worden zu sein.