Statistique web avec AwStats
Cette procédure explique comment mettre en place des statistiques basées sur le logiciel awstats. Elle a été testée sur une Fedra Core 4 et un serveur Apache 2.0.54.
Le hostname de la machine de test est xblade. Il faudra donc adapter les commandes et la configuration en fonction du nom de votre machine.
Le principal avantage de Awstats, est qu'il génère des stats à partir des logs du serveur Apache. Ainsi, on n'est pas obligé d'insérer du code dans chaque page web d'un site afin de comptabiliser le nombre de visiteurs, par exemple.
1. Installation
Bon bah pour l'installation, c'est plutôt simple :
yum install awstats.noarch
Pour les autres distrib faudra aller voir sur le site web pour récupérer les sources.
2. Configuration
La première commande à taper après l'installation de awstats est :
perl /usr/share/awstats/tools/awstats_configure.pl
Un assistant démarre alors, il faut lui indiquer :
- le chemin où se trouve le fichier de configuration de apache : /etc/httpd/conf/http.conf
- Need to create a new config file ? Y
- Define config file name to create : xblade
- Define config file path : /etc/awstats
Le script va alors modifier le fichier httpd.conf, en remplacent de la ligne :
CustomLog /yourlogpath/yourlogfile common par CustomLog /yourlogpath/yourlogfile combined
et ajouter les lignes :
Alias /awstatsclasses "/usr/share/awstats/wwwroot/classes/" Alias /awstatscss "/usr/share/awstats/wwwroot/css/" Alias /awstatsicons "/usr/share/awstats/wwwroot/icon/" ScriptAlias /awstats/ "/usr/share/awstats/wwwroot/cgi-bin/"
<Directory "/usr/share/awstats/wwwroot"> Options None AllowOverride None Order allow,deny Allow from all </Directory>
Il va enfin créer un fichier de configuration dans /etc/awstats. Il faut ensuite éditer le fichier /etc/awstats/awstats.xblade.conf et vérifier certain paramètre comme :
LogFile="/var/log/httpd/access_log" LogType=W LogFormat=1 SiteDomain="xblade"
3. Construction ou mise à jour de la base
Si tout est ok, on passe alors à la construction/mise à jour de la base de statistiques avec la commande :
perl /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=xblade -update
Cela devrait afficher des messages comme :
Update for config "/etc/awstats/awstats.xblade.conf"
With data in log file "/var/log/httpd/access_log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 12
Found 12 dropped records,
Found 0 corrupted records,
Found 0 old records,
Found 0 new qualified records.
Il est également possible de réaliser cette action depuis un navigateur web, mais il faudra d'abord mettre AllowToUpdateStatsFromBrowser à 1 dans le fichier de configuration /etc/awstats/awstats.xblade.conf.
4. Création d'une page HTML de rapport
On créé un répertoire où stoker les statistiques : mkdir /var/www/html/stats On lance la commande suivante :
perl /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=xblade -output -staticlinks > /var/www/html/stats/awstats.xblade.html
On peut ensuite visionner le rapport de statistique sur http://xblade/stats/.
5. Automatisation
Afin d'automatisé ce procédé (mise à jour des stats + génération du rapport toutes les heures) voici un script, nommé update_stats.sh, à mettre dans /etc/cron.hourly/ :
#!/bin/sh # Déclaration des variables # Nom de la machine HOST=xblade # Emplacement ou mettre les rapports de stats WWWROOT=/var/www/html/stats # Répertoire ou se trouve awstats PATHAWSTATS=/usr/share/awstats/wwwroot/cgi-bin # Emplacement du fichier de log LOGFILE=/var/log/httpd/access_log # On met a jour la base de statistique de awstat nice -n 15 perl $PATHAWSTATS/awstats.pl -LogFile=$LOGFILE -config=$HOST -update # On génere la page principal de stats nice -n 15 perl $PATHAWSTATS/awstats.pl -LogFile=$LOGFILE -config=$HOST -output -staticlinks > $WWWROOT/awstats.$HOST.html
6. Adaptation
Dans certain cas, il se peut que la configuration des logs de votre serveur Apache est été changée. Il vous faudra alors modifier la variable LogFormat du fichier /etc/awstats/awstats.xblade.conf pour l'adapter au log généré par le serveur Web.
Exemple dans Apache :
LogFormat "%v %h %l %u %t \"%r\" %>s %b %P %T" combined
Adapatation dans awstats :
LogFormat = "%virtualname %host %other %referer %time1 %methodurl %code %bytesd %other %other"
Aller plus loin : site officiel
2 Commentaires pour "Statistique web avec AwStats"
Flux des commentaires de cet article Ajouter un commentaireTa méthode a le mérite de marcher simplement, néammoins il existe une autre méthode qui permet d'avoir accès au script perl directement, je te la poste tout de suite
et voilà j'ai retrouvé la bonne méthode
:
http://www.redhat.com/archives/f...
cela permet d'avoir accès à tous les liens