Tägliche Protokollrotation - Beibehaltung des Originals

Tägliche Protokollrotation - Beibehaltung des Originals

Ich arbeite an Ubuntu 14.04 und hoste einen Graylog-Server. Im Verzeichnis /var/log/upstart/ habe ich ein Klartextprotokoll aller eingehenden Nachrichten – es ist so eingestellt, dass es alle 3 GB rotiert. Das Problem, das ich vorher hatte, war jedoch, dass bei jeder Rotation mein „graylog-server.log“ in „graylog-server.log.1“ umbenannt wurde, was mir nicht gefällt. Ich habe der Konfiguration das Schlüsselwort „copy“ hinzugefügt und jetzt ist der Dateiname gut! Aber es verbleiben auch alle Nachrichten in der Protokolldatei – die ich nach der Komprimierung löschen möchte. Meine Frage ist also …

  • Gibt es ein Konfigurationsschlüsselwort, das mir dabei hilft? Ich habe sie mir angesehen, bin aber neu bei Logrotate, also habe ich vielleicht etwas übersehen.
  • Wenn das nicht klappt, gibt es eine Möglichkeit, das Leeren der Protokolldatei direkt nach der Rotation zu planen? Ich verliere vielleicht ein paar Nachrichten, aber das macht mir keine großen Sorgen.

Danke!

Konfiguration:

/var/log/upstart/*server.* {
        size 3G
        missingok
        rotate 5
        compress
        notifempty
        nocreate
        copy
}

Antwort1

file.1Normalerweise bleibt die zuletzt rotierte Logdatei ( ) unkomprimiert und wird bei der nächsten Rotation ( file.1-> file.2.gz) komprimiert.

Wenn Sie die rotierte Protokolldatei sofort komprimieren möchten, können Sie das

nodelaycompress

Möglichkeit.

Ausman logrotate:

Knotenlaykomprimierung
Verschieben Sie die Komprimierung der vorherigen Protokolldatei nicht auf den nächsten Rotationszyklus (dies überschreibt dieVerzögerungskomprimierungMöglichkeit).

verwandte Informationen