---
title: GoAccess - Web analytics sans cookie
date: "2020-02-01T04:04:04.404Z"
template: "post"
draft: false
slug: "goaccess-web-analytics-docker"
category: "Data"
tags:
  - "Analytics"
  - "Docker"
description: "Mesurer l'audience de ses sites sans poser de marqueurs Analytics ?
C'était possible depuis longtemps, j'ai essayé de rendre ça facile."
socialImage: "/media/goaccess.png"
---

![GoAccess avec Docker](/media/goaccess.png)

## GoAccess

Habitué à `Google Analytics`, `Data Studio` et autres outils de Dataviz, 
j'avais besoin d'un outil plus joli que 
[AwStats](https://awstats.sourceforge.io/).

Je me suis donc rapidement tourné vers le très bon
[GoAccess](https://goaccess.io) dans l'espoir de l'installer rapidement
sur mon vps Debian Jessie.

## Le début de la galère ...

Pour résumer brièvement :

* la version de Debian était trop ancienne
* j'ai choisi d'utiliser Docker comme alternative d'installation
* le serveur [gwsocket](http://gwsocket.io/) est mal redirigé avec Docker... [^1]

## ... au bout du tunnel, la lumière

J'ai cru trouver mon bonheur avec cette image Docker 
[gregyankovoy/goaccess](https://hub.docker.com/r/gregyankovoy/goaccess)
... mais il manquait le support des fichiers `.gz` générés par `logrotate`

Mes logs ressemblent à ça :

* access.log
* access.log.1
* access.log.2.gz
* access.log.3.gz
* ...

## Ma solution

Une image Docker [kalmac/goaccess](https://hub.docker.com/r/kalmac/goaccess)
basée sur la précédente qui ajoute simplement le support des fichiers `gz`.

Pour l'utiliser, rien de plus simple :

```bash
# Lire tous les fichiers access.log* du répertoire courant
docker run --rm -it -v $PWD/logs:/opt/log -p 7889:7889 goaccess 
# Lire tous les fichiers nextcloud-access.log* du répertoire courant
docker run --rm -it -v $PWD/logs:/opt/log -p 7889:7889 goaccess nextcloud-access
```

[^1]: https://github.com/allinurl/goaccess/issues/989