Mise en place d'awstats pour analyser les fichiers de logs apache, ftp, mail... Awstats fonctionne à la ligne de commande (CLI) ou en CGI (Common Gateway Interface). Il peut servir en complément d'une solution à base de Javascript (Piwik ou Google Analytics)
Installation (debian 8)
[moi@bg.com]apt-get install awstats
Configuration
Après l'installation dans le répertoire /etc/awstats se trouve deux fichiers : awstats.conf et awstats.conf.local, le premier comprend une configuration type et le deuxième ne contient rien. Pour chaque domaine à analyser il faut un fichier nommé selon le nom de domaine, ainsi pour le site www.exemple.com on aura le fichier de configuration /etc/awstats/awstats.www.exemple.com.conf. Les paramètres ci-dessous sont ceux dont j'ai changé la valeur par défaut.Paramètre | Description |
LogFile = "/var/log/apache2/access.log" | Chemin et nom du fichier de log à analyser. Pour les fichiers d'apache il faut préciser "combined" dans la configuration du serveur web |
LogFormat = 1 | Format du fichier contenant les logs. La valeur 4 désigne un fichier de serveur web apache au format combined |
SiteDomain = "www.exemple.com" | FQDN du site web à analyser |
DirIcons = "/icons" | Répertoire ou se trouve les icônes dont se sert awstats. Il faut faire un alias vers le répertoire dans la config d'apache. Un alias "icons" existant par défaut je préfère déplacer les icônes d'awstats dans ce répertoire. |
AllowFullYearView = 3 | Baisser la valeur si il y a beaucoup de données à traiter. Sauvegarde et tri sur de gros sites peuvent ralentir le système. |
AllowAccessFromWebToFollowingIPAddresses = "adressip" | L'accès aux statistiques n'est permis qu'à partir des adresses défini dans ce paramètre |
CreateDirDataIfNotExists=1 | Demande à awstats de créer les répertoires qu'ils utilisent pratique pour les hebergeurs...ou les feignants ;) |
PurgeLogFile=1 | Traite les logs et les efface |
KeepBackupOfHistoricFiles=1 | Fait une sauvegarde de l'historique en cas de fichier corrompu |
SkipHosts="adressip" | Exclu l'adresse IP des statistiques, si l'adresse est dans le fichier historique dns il faut mettre le nom de domaine |
DirData="/var/lib/awstats" | Je mets ici un répertoire distinctif pour chaque site, pour pouvoir effacer toutes les données d'un site sans toucher aux autres. |
SkipDNSLookupFor="adresseip" | Ne fait pas de résolution pour l'adresse (en conjonction avec SkipHosts) DNSLookup doit être à 1 |
URLWithQuery=1 | Les paramètres passés à une url la rendent unique. |
URLWithQueryWithOnlyFollowingParameters="paramètre" | Liste les paramètres qui rendent l'url unique. les autres seront ignorés. Si il n'y a rien tout les paramètres sont utilisés. |
La première fois il faut lancer la commande manuellement, n'oubliez pas de le faire avec le bon user
[moi@bg.com]/usr/lib/cgi-bin/awstats.pl -config=subdomain.domain.tld -update
Liens
Site officiel d'awstats : www.awstats.orgDocumentation sur les fichiers journaux (logs) de Apache 2.4