C'EST QUOI ?
GoAccess est un analyseur de logs web en temps réel qui tourne soit dans un terminal, soit dans un navigateur via un rapport HTML auto-contenu. Tu lui files un fichier de logs Apache, Nginx, CloudFront ou à peu près n'importe quel format courant, et il te sort immédiatement un dashboard interactif avec tout ce qu'un ops veut voir : top URLs, codes HTTP, pays, user agents, bande passante, temps de réponse.
POURQUOI C'EST INTÉRESSANT ?
- Temps réel vrai : le rapport HTML se met à jour via WebSocket (refresh en 1s), le terminal en 200ms. Pas de cron, pas de pipeline ELK à maintenir.
- Une seule dépendance : ncurses. Tu compiles, tu balances un binaire, c'est fini. Rien à voir avec un stack ELK ou Loki.
- Rapport HTML auto-contenu : un seul fichier HTML sans assets externes, parfait à envoyer par mail ou héberger en statique.
- Gros volumes : persistance optionnelle sur disque, traitement incrémental, multi-thread via
--jobs. Les logs de plusieurs Go passent sans broncher. - Zéro config : il détecte les formats courants et affiche un dashboard utile en une commande. La config fine reste dispo quand t'en as besoin.
CAS D'USAGE
- Audit rapide d'un serveur web en SSH sans installer une stack d'observabilité
- Rapport HTML statique de trafic à partager avec un client ou une équipe
- Détection d'anomalies (pics de 404, bots, ASN suspects) en live sur un reverse-proxy
- Monitoring léger pour des projets perso ou des VPS où Grafana/Loki seraient overkill
- Post-mortem d'incident à partir d'archives de logs
