Problem:

Webalizer und AW-Stats sind ja nette Tools. Nur wenn man mehrere Domains mit einander Vergleichen will, hat man entweder viel Arbeit, oder unterschiedliche Skalen in den Diagrammen u.s.w.
Meistens sind diese Auswertungen auch vollkommen oversized. Häufig will man lediglich die PageImpressions und den angefallene Traffic miteinander vergleichen. Gerade Server-Admin's, denen die einzelnen Websites relativ egal sind sind davon betroffen.

Lösung:

Wenn alle Domains auf einem Server liegen ist braucht man theoretisch lediglich ein Script, welches alle access_log ausliest und die Daten der jeweiligen Domain zuordnet.

Download: httpd_stat-0.1.tgz

Als Ergebnis erhält man z.B. folgende CSV-Ausgabe:

"2007-05-02";"2007-05-02";"huschi-kino.de";"5394";"4827";"13";"3942";"78029137"
"2007-05-02";"2007-05-02";"huschi-shop.de";"18241";"17761";"4";"17563";"928593341"
"2007-05-02";"2007-05-02";"huschi.de";"105";"51";"0";"33";"310638"
"2007-05-02";"2007-05-02";"huschi.net";"9637";"3904";"22";"1885";"104094138"

Von links nach rechts:
Datum von; Datum bis; Domain; Hits; PageImp.; Errors; Crawler; Bytes

README

httpd_stat

Author: Jan Huschauer (EDV-Dienstleistungen)
Kontakt: huschi @ http://www.serversupportforum.de
http://www.huschi.net
Version: 0.1
Stand: 30.06.05

Packet

- Apache-ConfigFile-patch
Anleitung zum Patchen des ConfigFile-Moduls
- httpd_stat.pl
das Programm
- httpd_stat_bsp.conf
ein Beispiel für eine händische http-Config
- README
Diese Datei

Installation

Download von huschi.net:
wget http:/www.huschi.net/download/httpd_stat-0.1.tgz
tar xzf httpd_stat-0.1.tgz

Benötigt folgende CPAN-Module:
- Apache::ConfigFile

Installation per CPAN:
cpan -i Apache::ConfigFile


Für Apache2 wird i.d.R. ein kleiner Patch benötigt, der dafür sorgt,
daß auch Unterverzeichnisse eingelesen werden.

Konfiguration

Entweder stellt man seine bevorzugten Werte direkt in die httpd_stat.pl
ein, oder man übergibt sie per Hand:
-v                                     verbose output
-q no output
-d debug output
-f /etc/httpd/httpd.conf Apache-Config
-h servername nur den einen Server lesen
-t csv|report|html|file Template auswählen
-p Nur Pageimpressions (html|php|etc.)
-r today|yesterday|all|year/month/day Zeitraum
-?|--help Hilfeseite

Nach den ersten Tests kann dann ein Cronjob eingerichtet werden.
Geschickterweise kurz vor dem Logrotate.

TODO:

+ parse commandline
- date-from & date-to
- exclude virtualhost
+ read httpd-Configfile
+ get all virtualhosts and access_log with format
+ get it work with Apache2 (only with patch on Apache::ConfigFile)
- look for rotated files

Kategorien:

Stichwörter:

apache · apache2 · access_log · domain · statistik · auswertung · übersicht ·