AWStats
Die große Stärke der FreeWare AWStats ist natürlich das Auswerten von Webserverlogs, um das Nutzungsverhalten zu ermitteln. Aber AWStats kann auch Maillogs auswerten und mit der passenden Konfiguration kann er sogar Exchange Tracking Logs auswerten.
- Daten einsammeln
Sie müssen dazu die Exchange Tracking Logs aktivieren, und diese von AWStats in seine Datenbank aufnehmen lassen. Diesen Prozess lassen Sie am besten einmal jede Nacht laufen. - Ausgabe generieren
Ein zweiter Aufruf generiert dann die entsprechenden Webseiten mit Grafiken. Hier haben Sie die Wahl, ob Sie die Ausgaben "on tle fly" durch ein CGI-Script des Webservers erzeugen lassen wollen oder ob Sie die Ausgaben ebenfalls "auf Verdacht" jede Nacht erstellen
Die Einbindung als CGI-Script ist etwas aufwändiger und wird hier nicht beschrieben. Zudem gibt es immer wieder Risiken, da das Script mit den Rechten des Webservers ausgeführt wird.
Den regelmäßigen Aufruf jede Nacht kann der Microsoft Task Scheduler für Sie übernehmen.
Download und Installation
Die Installation von AWStats ist als Perl-Skript relativ einfach. Es gibt allerdings keine MSI-Datei oder einen Assistenten. Folgende Komponenten sind erforderlich
- AWStats
Laden Sie die Software z.B. von http://www.awstats.org herunter und packen Sie diese in einem Verzeichnis aus. Sie erhalten dann eine entsprechende Struktur:
- Perl
Da AWStats ein PerlScript ist, müssen Sie auch einen Perl-Interpreter installieren. Ich nutze dazu ActivePerl www.activeperl.com von ActiveState. Sie müssen etwas suchen, da ActiveState natürlich eine komplette EntwicklungsUmgebung für Perl verkauft. Die reine PerlUmgebung ist aber kostenfrei. Wenn ActivePerl installiert ist, sehen Sie auch die gelben Punkte als Icons vor einer .pl-Datei - Optional Webserver
Wenn Sie die Auswertungen per HTTP erreichbar machen wollen, können Sie einen IIS oder Apache installieren und die erzeugen Datei damit zugänglich machen. Alternativ wäre eine Einbindung als CGI-Script möglich.
awstats.pl wird dann in einer Kommandozeile oder über eine Batch regelmäßig aufgerufen. AWStats wird über eine Konfigurationsdatei gesteuert, welche als Kommandozeilenparameter anzugeben ist. Wenn Sie daher mehrere Dienste analysieren wollen, können Sie einfach mehrere Konfigurationsdateien anlegen. Im obigen Bild sehen Sie z.B.: die awstats.wwwmsxfaq.de.conf, welche diese Webseite analysiert. Wird keine Konfigurationsdatei angegeben, dann nutzt AWStats einfach die awstats.conf.
Globale Einstellungen
AWStats benötigt ein paar wenige aber wichtige Parameter, die in der Konfigurationsdatei hinterlegt werden müssen
Hier muss ich noch die genauen Parameter ablegen
- Logfiles
LogFile="C:\Inetpub\auswertung\access.log.01"
- Ausgabe
Zusätzlich sind natürlich das Logfile Format und die zu erstellenden Bericht zu konfigurieren
Konfiguration für OWA
Hier muss ich noch die genauen Parameter ablegen
Konfiguration für Exchange Maillogs
Am besten kopieren Sie daher die awstats.conf z.B. nach awstats.server1.conf und passen Sie folgende Zeilen an:
LogType=M LogFormat="%time2 %email %email_r %host %host_r %method %URL %code %bytesd" LevelForBrowsersDetection=0 LevelForOSDetection=0 LevelForRefererAnalyze=0 LevelForRobotsDetection=0 LevelForWormsDetection=0 LevelForSearchEnginesDetection=0 LevelForFileTypesDetection=0 ShowMenu=1 ShowSummary=HB ShowMonthStats=HB ShowDaysOfMonthStats=HB ShowDaysOfWeekStats=HB ShowHoursStats=HB ShowDomainsStats=0 ShowHostsStats=HBL ShowAuthenticatedUsers=0 ShowRobotsStats=0 ShowEMailSenders=HBML ShowEMailReceivers=HBML ShowSessionsStats=0 ShowPagesStats=0 ShowFileTypesStats=0 ShowFileSizesStats=0 ShowBrowsersStats=0 ShowOSStats=0 ShowOriginStats=0 ShowKeyphrasesStats=0 ShowKeywordsStats=0 ShowMiscStats=0 ShowHTTPErrorsStats=0 ShowSMTPErrorsStats=
Damit wird AWStats das Format der Logfiles definiert und welche Ausgabeseiten erzeugt werden sollen.
Konfiguration für ISA
Übrigens kann AWStats auch recht problemlos die Logfiles eines ISA-Servers auswerten. Dazu müssen Sie nur folgende Eintragungen in der Konfigurationsdatei angeben und den ISA-Server die Logfiles in Textdateien schreiben lassen.
Squid Log Auswertung 200.135.30.181 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET http://www.mydomain.com/page.html HTTP/1.0" 200 456 TCP_CLIENT_REFRESH_MISS:DIRECT You must use : LogFormat="%host %other %logname %time1 %methodURL %code %bytesd %other"
Der ISA-Server kann natürlich auch die Logs in eine SQL-Datenbank schreiben. Gerade mit SQL2005 und den Reporting Services lassen sich so auch sehr schöne Auswertungen erstellen. Aber das ist ein anderes Thema
Aufruf von AWStats
Wenn Sie wie ich einfach nur einmal am Tag die Logfiles von gestern einlesen und die Auswertungen erstellen lassen wollen, dann reicht ein Batchfile mit folgendem Inhalt
REM Logfile importieren C:\Inetpub\auswertung\AWStats-6.5\wwwroot\cgi-bin\awstats.pl -config=www.msxfaq.de -update REM Alle Report erstellen REM C:\Inetpub\auswertung\AWStats-6.5\tools\awstats_buildstaticpages.pl -config=www.msxfaq.de -dir=C:\Inetpub\auswertung\AWStats-6.5\wwwroot
Diese Beispiel liest die Protokolldateien der Webseite (in der Konfigurationsdatei ist der Pfad zu definieren !) in die Datenbank und erstellt die Berichte.
Grenzen von AWStats und anderen einfachen Tools
Ein großer Nachteil von solchen "einfachen" Lösungen ohne Datenbanken sind natürlich fehlende Funktionen. Der primäre Ansatz ist das konsolidieren von Protokolldateien in eine Zusammenfassung und die Erstellung aussagekräftiger Berichte. Allerdings werden dazu eben immer ALLE Datenbanken zusammengelegt. Eine unterscheidung nach Zeiträumen ist hier nicht möglich. d.h. AWStats und andere legen keinen Bericht pro Monat, Tag o.ä. an. Entsprechend können Sie natürlich auch nicht interaktiv Zeiträume zur Analyse auswählen. Es ist immer eine "Summenfunktion".
Es gibt zwar dann Reports, die die Summe der Daten anzeigen aber folgende Reports sind z.B.: nicht ohne weiteres möglich:
- Detailansicht bzw. Filter pro URL
Angenommen ich stelle eine "neue" Seite auf die Webseite und mich würde interessieren, wie diese einzelne Seite von den Besuchern angenommen wird, dann bräuchte ich einen Filter, der die die Hits auf diese URL übrig läst und diese dann aufbereitet. - Detailansicht bzw. Filter pro Mailadresse
Wenn Analog z.B.: Maillogs auswertet, dann sind Summen zwar nett, aber z.B. eine unterteilung nach Abteilung oder einzelner Mailadresse ist ebenfalls nicht möglich. Aber genau das wäre ja sinnvoll, wenn ein Missbrauch einer Person nachgewiesen werden soll.
Es gibt noch einige weitere Reports, die interessant wäre, aber AWStats und andere einfache Tools so nicht leisten können. Natürlich kann ich mir die Reports "erzeugen" lassen, indem ich die Protokolldateien vorher "filtere" und dann mehrere Konfigurationsdateien pflege und die gleichen Protokolldateien mit mehreren Durchläufen in verschiedene Datenbanken schreiben lasse.
Man kann aber in AWStats mit den Optionen "-month=MM
-year=YYYY" natürlich auf die Zeit selbst filtern. Allerdings sind in der
Datenbank eben nicht mehr die kompletten Protokolldaten vorhanden, um nach
Empfängern oder URLs etc. zu filtern.
AWStats löst dies, indem die Datenbank je Monat angelegt wird. Bei mir in
C:\Inetpub\auswertung\AWStats-6.5\data
Solche ausführlichere Auswertungen sind dann aber doch eher die Domäne kommerzieller großer Werkzeuge wie Quest Message Stats und anderen (siehe auch Reporttools), die die Protokolldateien in eine SQL-Datenbank konsolidieren und interaktiv entsprechende Reports erstellen.
Weitere Links
-
Nachrichtentracking
Exchange 2000/2003 Nachrichtentracking
Exchange 5.5 Nachrichtentracking - LogParser
-
Reporting
Berichte
Datenquellen
Beispielreports
Reporttools - MTRACK
- Offizielle Webseite
http://awstats.sourceforge.net
http://www.awstats.org - FAQ-COM100 : SETUP für MAIL LOG FILES (Postfix, Sendmail, Qmail, MDaemon, Exchange...)http://awstats.sourceforge.net/docs/awstats_faq.html#MAIL
AWStats mit IIS
http://www.sysops.tv/2011/01/21/081-awstats-mit-iis-sd/
- Webalizer
Original: Entwicklung 2002 gestoppt http://www.webalizer.com
StoneStep Fork http://www.stonesteps.ca/projects/webalizer/
Webalizer GUI www.tobias-schwarz.net/webalizer_gui.html