aktuelle aber auch ewige logfile

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
deb
Beiträge: 82
Registriert: 18.09.2005 13:30:20

aktuelle aber auch ewige logfile

Beitrag von deb » 13.04.2006 01:20:53

Hi.

Ich erzeuge pro Minunte (mit einem simplen BASH-Script) auf meinem Server einen Monitor-Eintrag in meiner LOG-File.

Da diese Datei mit der Zeit recht großen werden könnte, dachte ich mir Kompression einzusetzen.

Logrotation bzw. täglich eine neue LOG-File zu komprimieren möchte für vermieden.
( Einige Scripte verarbeiten die Daten bereits )

Ist es möglich, dass man die ganze Datei jetzt einmal zu einer gz/bz2-Datei komprimiert und neue Log-Einträge komprimiert anhängt?
Oder sind die beiden Kompressions-Verfahren einfach nicht für solche Zwecke einsetzbar?

Gruß

Benutzeravatar
seep
Beiträge: 544
Registriert: 31.10.2004 14:21:08
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: HSK

Beitrag von seep » 13.04.2006 08:10:49

Du wirst wohl nicht darum herumkommen, das Archiv vor dem Hinzufügen neuer Einträge zu entpacken und anschließen wieder zu packen. Sprich "gunzip alt.log.gz; cat neu.log >> alt.log; gzip alt.log".

Es macht natürlich nicht viel Sinn, dies minütlich zu tun, insbesondere wenn das Logfile wirklich groß werden sollte und parallel noch andere Scripts darauf zugreifen sollen, aber das hast Du ja sicherlich schon selbst erkannt, sonst würdest Du nicht fragen.

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 13.04.2006 15:56:07


deb
Beiträge: 82
Registriert: 18.09.2005 13:30:20

Beitrag von deb » 14.04.2006 19:20:56

Joghurt hat geschrieben:Wie wär's damit?
http://svn.python.org/projects/external ... gzappend.c
Hmmm.
Joghurt ist besser Google ;-)

Auf den ersten Blick scheint es das zu sein, was ich gesucht habe. thxs.

Nun muss mich selber damit weiter auseinandersetzen....

Frohe Ostern
Gruß

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 14.04.2006 23:12:55

deb hat geschrieben:Joghurt ist besser Google ;-)
Mitnichten! Er kann nur mit Google umgehen ;)

1. Treffer beim googlen nach "append to gzip"

Benutzeravatar
seep
Beiträge: 544
Registriert: 31.10.2004 14:21:08
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: HSK

Beitrag von seep » 15.04.2006 09:29:00

@deb: Wenn Du Dich damit auseinandergesetzt hast, kannst Du uns kurz schreiben, ob - und vor allen Dingen - wie performant es funktioniert hat? Würde mich stark interessieren!

Ich lese in den Sourcen folgenden kleinen aber gewichtigen Halbsatz:
gzappend first decompresses the gzip file internally
Mich interessiert also, was der Einsatz von gzappend gegenüber dem von mir oben genannten Weg "dekomprimieren, anhängen, komprimieren" zeitmäßig bringt. Ich weiß nicht, wie das GZIP-Format aufgebaut ist, aber wenn die zlib erst komplett entpacken muß, dann dürfte sich die Ersparnis im Millisekunden-Bereich bewegen.

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 15.04.2006 14:28:40

seep hat geschrieben:Mich interessiert also, was der Einsatz von gzappend gegenüber dem von mir oben genannten Weg "dekomprimieren, anhängen, komprimieren" zeitmäßig bringt.
Der Komprimierungsschritt fällt weg. Entkomprimieren muss man, um das Wörterbuch aufzubauen, mit dem man dann weiterkomprimieren kann.

Antworten