Nach einiger Zeit der Verwendung von kommerziellen Tools zur Auswertung von Logfiles, die mein Webserver fortwährend unermüdlich erstellt, bin ich, verzweifelt auf der Suche nach einer schnelleren Methode der Logfile Analyse, auf ein Tool bzw. zwei Tools gestossen, die kostenlos und frei verfügbar sind, und, wen mags noch verwundern, bei weitem nicht die speicherkapazitätsmässigen Ausmasse einiger kommerzieller Pendants einnehmen.
Doch zuerst zu Visitors: Nicht nur, dass es klein ist – es ist geradezu ein Paradebeispiel für Effizienz in der Programmierung. Wofür ich früher beinahe 48 Stunden gebraucht bei Logfile Analysen von Logfiles um die 40Gb mit o.g. kommerziellen Tools, erledige ich mit nachfolgender Vorgehensweise weniger als 5 Minuten. Wer clever ist schreibt sich vielleicht noch ein nettes Skript, dass die folgenden Schritte mit einem Klick ausführt, was nochmehr Zeit sparen kann.
Das Tool nennt sich Visitors. Ich habe das Tool leicht über die Paketverwaltung Synaptic installieren können. welches bei der von mir verwendeten Linux Distri Gnewsense in den Quellen verfügbar ist. Im übrigen, wer mehr über Gnewsense erfahren möchte, kann sich hier erkundigen. Eine freie Linuxdistri, die sich ableitet von Ubuntu, nur mit dem Unterschied, dass hier sämtliche proprietäre Software entfernt sein sollte. Mehr erfahren könnt Ihr
hier:
http://www.gnu.org/distros/free-distros.html
und hier:
http://www.gnewsense.org/
Wie geht man vor:
Nach erfolgreicher Installation ist das Tool Visitors, das Ihr
hier
http://www.hping.org/visitors
findet, auch schon aufrufbereit.
Anmerkung: Visitors ist auch als binäre Windows Version erhältlich.
In den meisten Fällen hatte ich mehrere Logfiles für einen bestimmten Zeitraum, z.B. für einen Monat vorliegen in dem Format .gz. Zuerst habe ich alle Logfiles für den gewünschten Zeitraum in ein Verzeichnis kopiert. Als nächstes habe ich alle Logfiles entpackt. Hat man mehrere Logiles zur Hand kann man jedes Logfile einzelnd analysieren mit z.B. der folgenden Eingabe in die Konsole:
visitors -A name_des_logfiles > ergebnis_der_analyse_des_logfiles.html
Diese Eingabe bewirkt, dass die Logfile Datei analysiert wird mit der Option -A und das Ergebnis in die Datei log.html geschrieben wird. Diese Option ermöglicht die komplette Analyse sämtlicher Einträge des Webservers in die zu analysierende Logfile Datei, insofern die Einträge von Visitors analysierbar sind.
Visitors bietet die Möglichkeit verschiedene Optionen zu wählen. Welche Optionen es gibt und wie diese anzuwenden sind erfährt man einfach mit einer Eingabe in die Konsole:
visitors –help
Möchte man nicht jede Logfile Datei einzelnd analysieren, sondern möchte man mehrer Logfiles zusammenfassen kann man das Tool Mergelog mit dieser Aufgabe bemühen, das als stable gilt seit dem 11.4.2001. Ein gutes Beispiel dafür, dass nicht alles was alt ist, schlecht sein muss oder das einige Hersteller jüngerer Tools gerne so tun, als hätten Sie das Rad erst erfunden. Man kann sich hier fragen, warum einige Hersteller ihre guten Programmierer für Dinge verschwenden, die es schon jahrelang gibt. Informationen zu Mergelog findet Ihr hier:
http://mergelog.sourceforge.net/
Wie das Tool installiert wird ist von der verwendeten Distribution abhängig.
Das Tool Mergelog ist sehr einfach zu bedienen und ich muss an dieser Stelle gestehen, dass ich auch bisher noch keine weiteren Experimente damit unternommen habe, als die folgende Eingabe in der Konsole, was wieder einmal beweist wie einfach der komplette Analyseweg von statten gehen kann.
Z.B. fügt folgende Eingabe die Logfiles zusammen und schreibt diese in die Datei zusammenfassung_der_logfiles:
mergelog name_des_ersten_logfiles name_des_zweiten_logfiles name_des_nten_logfiles > zusammenfassung_der_logfiles
Danach kann man wie oben beschrieben z.B. mit der Eingabe:
visitors -A zusammenfassung_der_logfiles > ergebnis_der_analyse_des_logfiles.html
die Analyse starten.
Wie schon erwähnt ist das Ergebnis verblüffend. Nahezu alles was ich vorher mit dem o.g. kommerziellen Tool als Ergebnis erhalten habe, erhalte ich auch auf diesem Weg, nur um einiges schneller.
Möchte man z.B. die Anzahl der Keywords, die von Usern in Suchmaschinen eingegeben wurden und dazu führten, dass diese auf eine Seite der eigenen Website gelangten, kann man mit folgender Eingabe eine Vorauswahl treffen, die Visitors mitteilt wie es sich verhalten soll:
visitors -k 8000 zusammenfassung_der_logfiles > ergebnis_der_analyse_des_logfiles.html
Das Ergebnis liefert eine Einschränkung der Analyse der ersten 8000 Keywords und deren Eingabehäufigkeit, die in Suchmaschinen eingeben wurden und die User auf den eigenen Webserver führten.
Vielleicht hilfts jemanden. Mir hat’s geholfen.
Danke für den Gastbeitrag an Thomas.
Tags: apache, keyword, logfile analyzer, logfiles, mergelog, seo, visitors, webserver logfile
Hey Martin
,
schöner Beitrag, ich muss aber dazu gestehen, dass ich so ein Programm im letzten Semester programmieren musste als Semester-Aufgabe. Alles wurde mit einfachen Shell-Befehlen gelöst. Das Programm an sich ist nur wenige kb’s groß und läuft dementsprechend auch schnell, da nur eine Minimaleanzahl an Und-Verknüpfungen zur Prüfung der Log-Files verwendet wurden.
Wenn du das Programm mal testen magst, brauchst du nur fragen ^^, sogar mit Manual-Pages xD.
Gruß
- Monty