Apache-Piping zum einfachen Wechseln von Logdateien

Bei der Verwendung von Apache als Logging-Tool gibt es in der Basiskonfiguration eine zu erwähnende Einschränkung. Alle Logaufzeichnungen landen in einer einzigen Datei und das bringt eine Reihe von Problemen mit sich. Was macht man zum Beispiel, wenn die Logdatei zu groß wird und verkleinert werden muss? Dazu müsste man den Apache-Server anhalten, die Datei an einen sicheren Speicherort kopieren und kürzen, und dann den Apache neu starten, um mit dem Logging fortzufahren. Eine bessere Lösung ist die Verwendung der Apache-eigenen Fähigkeiten zum Piped Logging, mit denen die Logdateien einfach und sicher gewechselt werden können.

Pipes – die elegante Lösung

Hier soll kein Streit zwischen Unix und Windows vom Zaun gebrochen werden, aber auf eine der nützlichsten Eigenschaften von Unix-Programmen soll doch hingewiesen werden, nämlich auf die Möglichkeit, ihre Ausgabe- und Eingabekanäle miteinander zu verknüpfen (Piping). Wenn man eine riesige, mehrere Megabyte große Apache-Logdatei nach bestimmten Informationen durchsuchen will, ist es überaus praktisch, dass man die Tools grep, cut, uniq und sort ganz nach Belieben hintereinander schalten kann. Aber das ist Stoff für einen weiteren Artikel.

Hier soll es zunächst einmal um das automatische Wechseln von Logdateien gehen. Dazu wird die Fähigkeit von Apache genutzt, den Ausgabestrom der CustomLog-Direktive in eine externe Anwendung umzuleiten. Wer ein ausgeklügeltes Warn- oder Logsystem benötigt, kann auch eine eigene Logging-Anwendung erstellen, aber für diesen Zweck hier kann man auf die schlichte rotatelogs-Anwendung zurückgreifen, die zum Lieferumfang der Apache-Installation gehört.

Zur Erinnerung – in den httpd.conf-Dateien findet sich eine LogFormat-Direktive, die ungefähr wie folgt aussieht:

(Eine detailliertere Beschreibung von LogFormat findet sich im erwähnten früheren Artikel.) Aber statt der standardmäßigen CustomLog-Direktive wird der Ausgabestrom zu rotatelogs umgeleitet:

Natürlich muss man /opt/httpd/bin/ durch das eigene Apache-Installationsverzeichnis ersetzen. Als Name der Logdatei wurde bislang nur ein relativer Pfad angegeben. Aber hier wird die Logdatei von der rotatelogs-Anwendung geschrieben und nicht von Apache selbst. Um Probleme zu vermeiden, wird hier ein vollständiger absoluter Pfad für die Logdatei angegeben. Die Zahl am Ende der in Anführungszeichen stehenden Zeichenkette gibt die Anzahl der Sekunden zwischen den Rotationen an. Dieser spezielle Wert ist die Anzahl der Sekunden für einen 24-Stunden-Tag, so dass rotatelogs jeden Tag zu einer neuen Logdatei wechseln wird.

Der Name der Logdatei richtet sich dabei ganz nach den Angaben in der obigen CustomLog-Direktive. Allerdings hängt rotatelogs eine Zahl an den Dateinamen an, nämlich die Zeit, zu der die jeweilige Logdatei erstellt wurde:

Man wird also jeden Tag eine neue Logdatei im Logverzeichnis finden, mit einer neuen Timestamp-Zahl als Erweiterung am Dateiende. Eine Kleinigkeit gilt es hierbei jedoch zu beachten: Falls an dem jeweiligen Apache-Port keine Aktivität stattfindet, wird die neue Logdatei mit der neuen Erweiterung nicht erstellt. Dies geschieht nur, wenn es tatsächlich aufzuzeichnende Aktivitäten gibt. Das bedeutet, dass zwischen den Zeitangaben zweier aufeinander folgender Logdateien mehr als 24 Stunden liegen können, wenn auf dem entsprechenden Port nicht viel los ist.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Infostealer: 53 Prozent der Angriffe treffen Unternehmensrechner

Der Anteil steigt seit 2020 um 34 Prozentpunkte. Allein 2023 erfasst Kaspersky rund 10 Millionen…

1 Stunde ago

Salesforce: Mit Einstein GPT zurück auf die Überholspur?

Salesforce forciert den Ausbau seiner Industry Clouds. Mit ihrem Prozesswissen könnten deutsche IT-Dienstleister davon profitieren.

22 Stunden ago

Neue Backdoor: Bedrohung durch Malvertising-Kampagne mit MadMxShell

Bisher unbekannter Bedrohungsakteur versucht über gefälschte IP Scanner Software-Domänen Zugriff auf IT-Umgebungen zu erlangen.

2 Tagen ago

BSI-Studie: Wie KI die Bedrohungslandschaft verändert

Der Bericht zeigt bereits nutzbare Angriffsanwendungen und bewertet die Risiken, die davon ausgehen.

3 Tagen ago

KI-Wandel: Welche Berufe sich am stärksten verändern

Deutsche sehen Finanzwesen und IT im Zentrum der KI-Transformation. Justiz und Militär hingegen werden deutlich…

3 Tagen ago

Wie ein Unternehmen, das Sie noch nicht kennen, eine Revolution in der Cloud-Speicherung anführt

Cubbit ist das weltweit erste Unternehmen, das Cloud-Objektspeicher anbietet. Es wurde 2016 gegründet und bedient…

3 Tagen ago