Goaccess, un générateur de statistiques web rapide et sexy

goaccess_fr

Qu’est-ce que c’est ?

Goaccess est un générateur de statistiques web, fonctionnant sur le même principe que webalizer et awstats, c’est à dire en lisant et analysant les lignes du log d’accès d’un serveur web.

Là où il se démarque, notamment d’awstats, que j’utilise jusqu’à maintenant:

  • Une utilisation plus aisée et plus souple (je vous défie de mettre au point une ligne de commande awstats fonctionnelle du 1er coup)
  • Une plus grande rapidité d’exécution (30 secondes pour analyser un log de 1,3 milllion de lignes.
  • Des résultats lisibles et sexy

Coté inconvénient, l’interface est pour l’instant en anglais, mais un pull-request pour la traduction française, mise au point par mes soins est en cours.

Installation (sur RedHat, CentOS):

Il suffit de suivre le contenu du fichier //INSTALL//:

sudo yum install GeoIP-devel ncurses-devel
wget http://tar.goaccess.io/goaccess-1.0.1.tar.gz
tar xzf goaccess-1.0.1.tar.gz
cd goaccess-1.0.1
./configure  --enable-geoip --enable-utf8 --prefix=/opt/goaccess
make
sudo make install

Vous pouvez également utiliser le paquet que j’ai construit en me basant sur celui disponible pour Fedora, en utilisant la version 1.0.1 et mon fichier de traduction en français.

Configuration

Le fichier de configuration est /opt/goaccess/etc/goaccess.conf si vous avez compilé vous-même le paquet en suivant les instructions ci-dessus.

Si vous avez utilisé mon paquet rpm, la configuration est /etc/goaccess.conf

Adaptez cette configuration, en vous assurant de positionner correctement les directives suivantes:

    • time-format – généralement %H:%M:%S pour les logs nginx ou apache
    • date-format – %d/%b/%Y pour nginx ou apache
    • log-format – %h %^[%d:%t %^] « %r » %s %b « %R » « %u » pour le format apache combined
    • ignore-panel – décommenter les lignes si vous n’êtes pas intéressés par certaines catégories de statistiques
    • ignore-referer– renseignez le nom de votre domaine sous la forme *example.org
Utilisation

Là encore, si vous avez compilé à partir des sources, l’exécutable est /opt/goaccess/bin/goaccess.

Il suffit de spécifier via l’option -f le log à analyser:

Pour un affichage sur la console:

goaccess -f /var/log/httpd/access_log

Pour sauvegarder le résultat dans un fichier html (autres format csv ou json possible):

goaccess -f /var/log/httpd/access_log -o /var/log/html/Stats/$(date "+%Y.%m.%d").html

L’exécution de cette dernière ligne de commande peut être facilement programmée à intervalle régulier.

Bonnes stats !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *