Squid Zeitstempel konvertierten

Manchmal möchte man das Squid Access Logfiles auswerten um zu sehen, welche Ressourcen wie abgehandelt werden. Squid speichet dabei die Zeitangabe leider nicht in einem Human-readable Format.

 

 

Mit folgendem Befehllässt sich der Zeitstempel (<unix timestamp>.<centisecond>) in einem Postprozess umsetzen in ein für uns lesbares Format:

cat access.log | perl -p -e 's/^([0-9]*)/"[".localtime($1)."]"/e'

Leider funktioniert hier eine weitere Filterung mit | grep „DENIED“ beispielsweise nicht.

Um eine Ausgabe mittels grep zu filtern und den Zeitstempel anzupassen funktioniert die Konvertierung der Zeit auch mit gawk.

tail -f access.log | gawk '/^/{$1 = strftime("%c", substr($1, 1 ,10))};1' | grep "DENIED"

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.