Compressed file system

Hi,

weiss jemand was wie man Daten komprimiert auf die Platte ablegen kann?
Es handelt sich um die Logs der Webserver, > 1 Gb/Tag!

e2compr (http://cvs.bofh.asn.au/e2compr/) funktioniert nicht mit Linux 2.4,
und das Projekt scheint gestrandet zu sein.

MfG Andi!

weiss jemand was wie man Daten komprimiert auf die Platte ablegen kann?
Es handelt sich um die Logs der Webserver, > 1 Gb/Tag!

e2compr (http://cvs.bofh.asn.au/e2compr/) funktioniert nicht mit Linux 2.4,
und das Projekt scheint gestrandet zu sein.

Ein komprimierendes Filesystem ist wohl overkill fuer Dein Problem.

Normalerweise verwendet man logrotate (8) fuer solche Aufgaben.
Das kann zum Beispiel Logfiles taeglich verschieben, komprimieren
und nach einer Anzahl Tagen wegwerfen.

Wenn logrotate installiert ist, reicht ein Entry in /etc/logrotate.conf,
wie zum Beispiel:

/home/poweruser/local/apache/logs/error_log {
    daily
    missingok
    create 0664 poweruser powergroup
    compress
    rotate 3
}

Hier wird das error log des lokalen Apache httpd von "poweruser"
taeglich komprimiert und rotiert. Es werden maximal 3 archivierte
files bewahrt.

Bei weblogs erreicht man meist locker Kompressionsraten von weit
ueber 10.

Bye, Chris.

Das ist leider nicht die Lösung, da die logs über längere Zeit unkomprimiert
vorhanden sein sollen.

MfG Andi!

Das ist leider nicht die Lösung, da die logs über längere Zeit unkomprimiert
vorhanden sein sollen.

"laengere Zeit" -
kein Problem: logrotate behaelt die
archivierten files auf Wunsch auch ewig auf

"unkomprimiert" -
freilich komprimiert logrotate die files,
du wolltest sie doch komprimieren, oder
habe ich da was nicht begriffen?

Bye, Chris.

denke schon, habe mich zu wenig klar ausgedrückt . . .
es geht wie gesagt um Logfiles der Webserver über die unsere
Statistiksoftware drüberrauscht --> generiert basierend auf n
Statistikprofilen n Reports. Wenn jetzt einem der Drahtzieher einfällt so
ein Profil ein wenig abzuändern--> Report muss neu gerechnet werden, daher
müssen Logfiles älteren Datums noch ungepackt vorhanden sein. Derzeit liegen
Logfiles auf einer Winzoz-Maschine mit Filesystem das komprimiert. Da die
Freigaben aber recht unverlässlich sind(win-Server kappt ab und zu die
Verbindung-->Statistik-Prozess auf LinuxMaschine hat keine Freude), stellen
wir das auf Samba um. Daher der Bedarf ein wenig Platz zu sparen.

MfG Andi!

[...] Report muss neu gerechnet werden, daher
müssen Logfiles älteren Datums noch ungepackt vorhanden sein.
[...]

Ok,
was Du brauchst ist also /transparentes/ dekomprimieren.

Auch das kannst Du ohne komprimiertes Filesystem
hinkriegen: nehmen wir an "report" verarbeitet log
files von stdin (was *nix tools alle koennen
(sollten)), dann loest

     zcat logs.gz | report

dein Problem.

Falls ihr "report" selbst in was C-artigem geschrieben
habt koenntest Du auch fopen() mit gzopen() und fread()
mit gzread() ersetzen und mit libz kompilieren - obige
Pipe ist da freilich flexibler.

Bye, Chris.

Es handelt sich um das kommerzielle Produkt Webtrends . . .,
es öffnet files per fopen (laut strace) . . .

~Andi!

hallo

denke schon, habe mich zu wenig klar ausgedrückt . . .
es geht wie gesagt um Logfiles der Webserver über die unsere
Statistiksoftware drüberrauscht --> generiert basierend auf n
Statistikprofilen n Reports. Wenn jetzt einem der Drahtzieher einfällt
so ein Profil ein wenig abzuändern--> Report muss neu gerechnet werden,

weiss nicht was du da verwendest um den report zu machen aber die meisten
guten statistikgeneratoren machen das inkrementell.. da sind dann
rotierte logfiles kein problem
und wenn dann jemand ein profil aendert musst du sie halt alle neu machen.
mit einem kleinen script ist das auch kein problem

wenn der statistikgenerator das inkrementell kann wuerde es auch noch
schneller laufen.

ich habe solche scripts fuer webalizer.. wenn du sie brauchen kannst (und
ich sie noch finde*g*).

peter