Daniel's Tech Blog

Cloud Computing, Cloud Native & Kubernetes

AWStats

Heute hatte ich auf meiner Arbeitsstelle eine interessante Aufgabe zu erfüllen. Um eine detaillierte Übersicht über die Zugriffe auf den Webserver zu bekommen, sollte in diesem Zusammenhang der real-time log analyzer AWStats installiert und konfiguriert werden. Da die Grundkonfiguration grundsätzlich erstmal für den Apache Webserver ausgelegt ist und das Webmin-Plugin, bedingt durch Webmin, nur unter Unix läuft, war für die Konfiguration von AWStats auf Basis des IIS einiges an Handarbeit angesagt! Informationen dazu sind in der Dokumentation von AWStats zu finden.

Um die Auswertung vornehmen zu können, müssen entweder per Kommandozeile oder alternativ dazu per CGI (real-time) die entsprechenden Daten aus den log-Dateien ausgelesen und die HTML-Dateien erstellt werden. Da die CGI-Variante etwas mehr Rechenkapazität in Anspruch nimmt, habe ich mich in diesem Falle für die Kommandozeilen-Variante entschieden. Kurz um eine Batchdatei geschrieben, die das Ganze abarbeitet und für diese einen geplanten Task erstellt, so dass diese in einem gewissen Intervall ausgeführt wird.

:anfang
perl awstats.pl -config=mysite -update

if %errorlevel%==1 goto :remove

perl awstats.pl -config=mysite-output -staticlinks-month=all -year=all > index.html
perl awstats.pl -config=mysite-output=alldomains -staticlinks-month=all -year=all > awstats.mysite.alldomains.html
perl awstats.pl -config=mysite-output=allhosts -staticlinks-month=all -year=all > awstats.mysite.allhosts.html
perl awstats.pl -config=mysite-output=lasthosts -staticlinks-month=all -year=all > awstats.mysite.lasthosts.html
perl awstats.pl -config=mysite-output=unknownip -staticlinks-month=all -year=all > awstats.mysite.unknownip.html
perl awstats.pl -config=mysite-output=alllogins -staticlinks-month=all -year=all > awstats.mysite.alllogins.html
perl awstats.pl -config=mysite-output=lastlogins -staticlinks-month=all -year=all > awstats.mysite.lastlogins.html
perl awstats.pl -config=mysite -output=allrobots -staticlinks -month=all -year=all > awstats.mysite.allrobots.html
perl awstats.pl -config=mysite-output=lastrobots -staticlinks-month=all -year=all > awstats.mysite.lastrobots.html
perl awstats.pl -config=mysite-output=urldetail -staticlinks-month=all -year=all > awstats.mysite.urldetail.html
perl awstats.pl -config=mysite-output=urlentry -staticlinks-month=all -year=all > awstats.mysite.urlentry.html
perl awstats.pl -config=mysite-output=urlexit -staticlinks-month=all -year=all > awstats.mysite.urlexit.html
perl awstats.pl -config=mysite-output=browserdetail -staticlinks-month=all -year=all > awstats.mysite.browserdetail.html
perl awstats.pl -config=mysite-output=osdetail -staticlinks-month=all -year=all > awstats.mysite.osdetail.html
perl awstats.pl -config=mysite-output=unknownbrowser -staticlinks-month=all -year=all > awstats.mysite.unknownbrowser.html
perl awstats.pl -config=mysite-output=unknownos -staticlinks-month=all -year=all > awstats.mysite.unknownos.html
perl awstats.pl -config=mysite-output=refererse -staticlinks-month=all -year=all > awstats.mysite.refererse.html
perl awstats.pl -config=mysite-output=refererpages -staticlinks-month=all -year=all > awstats.mysite.refererpages.html
perl awstats.pl -config=mysite -output=keyphrases -staticlinks -month=all -year=all > awstats.mysite.keyphrases.html
perl awstats.pl -config=mysite-output=keywords -staticlinks-month=all -year=all > awstats.mysite.keywords.html
perl awstats.pl -config=mysite-output=errors404 -staticlinks-month=all -year=all > awstats.mysite.errors404.html

exit

:remove
del *.txt
goto :anfang

Es kann zwischendurch immer wieder mal vorkommen, dass die Erzeugung bzw. die Aktualisierung der DB mit den Informationen der log-Dateien Fehler aufweist oder das Programm AWStats Fehler in den log-Dateien feststellt und eine Aktualisierung der DB  nicht erlaubt. In diesem Falle hilft es alle .txt Dateien zu löschen und die DB neu aufzubauen. Dies wird mit der Abfrage des Errorlevels geregelt.
Läuft alles ohne Probleme hat man eine sehr schöne Webstatistik, die man auch sogleich über den Webserver per Authentifizierung online verfügbar machen kann, so dass man von überall auf der Welt Zugriff auf die aktuellen Statistiken hat.


Posted

in

WordPress Cookie Notice by Real Cookie Banner