Serveur Toulonux - goaccess
Posted on mer. 07 janvier 2015 in Projets
Synopsis
Cela fait un moment que je souhaite ajouter une petite page de stats du site touloux.org.
Actions
Je ne souhaitais pas une grosse usine à gaz et alors que j'arpentais le net avec ma souris de pèlerin, je suis tombé sur goaccess.
Pas de base de données à prévoir, juste un exécutable et une simple page HTML en rapport.
Bon là quand même, Debian c'est stable mais la version dans le dépôt est la 0.5 qui date de .... juin 2012.
Installation
goaccess
La version dans les dépôts Debian est très vieille 0.5 et date de 2012.
apt-get install goaccess
si vous souhaitez seulement la version Debian.
J'ai installé le dépôt fourni par goaccess
echo "deb http://deb.goaccess.io $(lsb_release -cs) main" | tee -a /etc/apt/sources.list
wget -O - http://deb.goaccess.io/gnugpg.key | apt-key add -
apt-get update
apt-get install goaccess
j'ai donc maintenant la version 0.8.3 :-)
Installation de GeoIP
Téléchargement de la base
wget -N http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
on décompresse le fichier
gunzip GeoLiteCity.dat.gz
création du répertoire /usr/local/share/GeoIP/
mkdir -p /usr/local/share/GeoIP
Copier le fichier
cp GeoLiteCity.dat /usr/local/share/GeoIP/
Création des fichiers configuration pour chaque site
création d'un répertoire pour centraliser les fichiers de configuration
mkdir -p /etc/goaccess
je vais me baser sur le fichier /etc/goaccess.conf que je copie dans le répertoire /etc/goaccess
cp /etc/goaccess.conf /etc/goaccess/
puis ensuite je vais éditer ce fichier avec nano
nano /etc/goaccess/goaccess.conf
et le sauvegarder sous le nom de www.toulonux.org.conf par exemple.
Il faut y définir :
- le format de la date
- le format du fichier log dans notre cas NGinx,
- le chemin d’accès à la base GeoIP,
- mettre le parametre _--no-progress true___ pour éviter d'avoir un mel de cron lors de l’exécution de __goaccess.
La ligne de commande pour avoir une sortie html devient alors :
goaccess --config-file=/etc/goaccess/www.toulonux.org.conf > /home/philippe/public_html/test.html
Création des taches
Je rajoute une tache cron, utiliser la commande suivante pour éditer
crontab -e
et ajouter la ligne
2 0 * * * goaccess --config-file=/etc/goaccess/www.toulonux.org.conf > /home/philippe/public_html/site.html
tous les jours à 00h02 éxecution de goaccess avec le fichier de conf avec création d'une fichier vers /home/philippe/public_html/