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.
Korrektur
Correction