Sie sind hier

AWStats reparieren

Gespeichert von h2b am 2. Juni 2017 - 0:40
Problembeschreibung
System: 
AWStats
Version: 
7.0
Symptom: 
AWStats aktualisiert die Statistiken nicht mehr, obwohl es bisher reibungslos funktioniert hat. Die konfigurierten Cron-Jobs laufen nach wie vor, auch manuelle Aufrufe führen nicht zum Erfolg.

Folgende Situation tritt auf (bei mir das erste Mal nach mehreren Jahren Nutzung): AWStats wird über crontab ausgeführt,  aktualisiert aber plötzlich keine Statistiken mehr; ein Fehler bezüglich der Ausführung von crontab kann ausgeschlossen werden. Ein manueller Aufruf wie

/usr/lib/cgi-bin/awstats.pl -config=<config> -update

wobei <config> für die fragliche Konfiguration steht,  ergibt eine Fehlermeldung der Art

AWStats did not find any valid log lines that match your LogFormat parameter, in the 50th first non commented lines read of your log.
Your log file /var/log/apache2/ssl_access.log must have a bad format or LogFormat parameter setup does not match this format.
Your AWStats LogFormat parameter is:
1
This means each line in your web server log file need to have "combined log format" like this:
xxx.xxx.xxx.xxx - - [10/Jan/2001:02:14:14 +0200] "GET / HTTP/1.1" 200 1234 "http://www.fromserver.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"
And this is an example of records AWStats found in your log file (the record number 50 in your log):
xxx.xxx.xxx.xxx - - [31/May/2017:20:45:53 +0200] "-" 408 1447 "-" "-"

Offenbar sieht AWStats Log-Dateieinträge mit leeren Feldern, also

xxx.xxx.xxx.xxx - - [31/May/2017:20:45:53 +0200] "-" 408 1447 "-" "-"

(wobei xxx.xxx.xxx.xxx für eine konkrete IP-Adresse steht), als unzulässig an.

Solche Einträge tauchen öfters in Webserver-Log-Dateien auf und sind normalerweise kein Problem. Wenn aber mehr als 50 davon lückenlos hintereinander auftreten, stellt AWStats seinen Dienst ab diesem Punkt und für die Zukunft (genauer: bis zum Austausch der Log-Datei) komplett ein.

Zur Abhilfe kann man die betreffenden Zeilen aus der Log-Datei löschen (mindestens so viele, dass weniger als 50 davon in ununterbrochener Folge übrig bleiben). Vorher sollte man den Webserver stoppen (z. B. service apache2 stop) und danach wieder starten (service apache2 start). Anschließend nimmt AWStats seine Arbeit wieder auf (wenn als Cron-Job konfiguriert) und aktualisiert die Statistiken ab der zuvor fehlerhaften Stelle.

Bereich:

Kommentare

Dieser Beitrag lief für einige Zeit fehlerhafterweise unter dem Titel "Webalizer reparieren". Das wurde inzwischen korrigiert.