GNU/Linux >> Tutoriels Linux >  >> Linux

GoAccess - Analysez les journaux Apache et Nginx en temps réel

L'un des principaux rôles de tout administrateur système est de visualiser et d'analyser les fichiers journaux. Les fichiers journaux du serveur Web d'autres Apache et Nginx peuvent s'accumuler au fil du temps et les examiner peut s'avérer une activité fastidieuse et chronophage. Heureusement, GoAccess peut atténuer tout ce stress et vous permettre de surveiller et d'analyser en toute transparence les fichiers journaux du serveur Web.

Écrit en langage de programmation C, GoAccess est un analyseur de journaux Web en temps réel open source basé sur un terminal. Il est rapide, interactif et affiche les journaux de manière élégante et intuitive. Il prend en charge une grande variété de fichiers journaux Web, notamment Apache, Nginx, Caddy, Amazon S3 et CloudFront, pour n'en citer que quelques-uns. Il peut restituer les résultats au format HTML, JSON, et également générer un rapport CSV.

Dans ce guide, nous nous concentrerons sur l'installation de goaccess et son utilisation pour analyser les journaux des serveurs Web Apache et Nginx en temps réel.

GoAccess vous permet d'afficher les métriques de journal suivantes :

  • Visiteurs uniques quotidiens
  • Fichiers demandés
  • Requêtes statiques ( jpg, pdf, png, mp4, avi, etc.)
  • Requêtes introuvables (404)
  • Nom d'hôte et informations IP des visiteurs
  • Système d'exploitation et détails du navigateur du visiteur
  • Géolocalisation

Comment installer GoAccess

Il existe deux manières principales d'installer GoAccess sur votre système Linux. Vous pouvez soit construire à partir des sources, soit utiliser le gestionnaire de packages de votre distribution. Voyons comment vous pouvez accomplir les deux.

Installer GoAccess sur différentes distributions

Voici comment installer GoAccess sur différentes distributions Linux.

Sur les distributions Ubuntu / Debian

Si vous utilisez Ubuntu ou n'importe quel système basé sur Debian, exécutez :

$ sudo apt install -y goaccess

Sur RHEL / CentOS

Pour les distributions RHEL et CentOS, exécutez la commande :

$ sudo yum install -y goaccess
or$ sudo dnf install -y goaccess

Sur Fedora

Sur Fedora, exécutez la commande :

$ sudo dnf install goaccess -y

Sur Arch Linux

Pour Arch Linux et d'autres distributions Arch telles que Arch Linux et Manjaro, exécutez la commande.

$ sudo pacman -S goaccess

Pour les autres distributions telles que OpenSUSE et les versions UNIX telles que FreeBSD, visitez le lien de téléchargement officiel de GoAccess.

Installer GoAccess à partir de la source

Pour installer à partir de la source, commencez par télécharger le fichier tarball GoAccess à l'aide de la commande wget

$ wget https://tar.goaccess.io/goaccess-1.4.6.tar.gz

Extrayez le fichier tarball avec la commande tar ci-dessous

$ tar -xvf goaccess-1.4.6.tar.gz

Ensuite, naviguez dans le répertoire et construisez à partir de la source comme indiqué.

$ cd goaccess-1.4.6/
$ ./configure --enable-utf8 --enable-geoip=mmdb
$ make
# make install

Vérifier l'installation

Pour confirmer que GoAccess a été installé, exécutez la commande suivante.

$ goaccess

Cela imprimera ou affichera l'utilisation de la commande et les options de commande comme indiqué.

De plus, vous pouvez vérifier la version de GoAccess comme indiqué.

$ goaccess --version

Comment utiliser GoAccess pour surveiller les journaux Apache et Nginx en temps réel

Une fois que vous avez installé GoAccess, l'étape suivante consiste à surveiller les fichiers journaux Web. Dans cet exemple, le serveur Web Apache est installé et nous allons surveiller le fichier access.log pour afficher des statistiques sur la façon dont les clients interagissent avec le serveur Web à partir d'un navigateur.

L'option -f permet de visualiser en temps réel les logs en ligne de commande

$ goaccess -f /var/log/apache2/access.log --log-format=COMBINED

Les statistiques du journal de votre serveur Web seront imprimées sur le terminal, y compris le nombre total de requêtes, les requêtes valides, les visiteurs valides, les fichiers uniques et bien d'autres.

Assurez-vous de faire défiler vers le bas pour afficher d'autres statistiques de serveur Web telles que les requêtes 404 introuvables, les noms d'hôte des visiteurs et les adresses IP.

Ici, nous avons des statistiques sur les systèmes d'exploitation et les navigateurs Web à partir desquels les visiteurs accèdent au serveur Web.

Pour surveiller les journaux Nginx, utilisez le même exercice que lors de la surveillance des journaux Apache. Passez simplement à l'utilisateur root et exécutez la commande ci-dessous.

# goaccess -f /var/log/nginx/access.log --log-format=COMBINED

Ici, nous surveillons le fichier access.log du serveur Web Nginx

Visiblement, le tableau de bord est étonnamment similaire à ce que nous avions lors de la surveillance des journaux Apache

Afficher la sortie des journaux sur un tableau de bord Web

Vous pouvez également afficher les journaux du serveur Web sur des tableaux de bord élégants et intuitifs en redirigeant la sortie dans un fichier html, comme indiqué. Ici, nous avons spécifié le fichier de sortie en tant que reports.html.

$ goaccess -f /var/log/apache2/access.log --log-format=COMBINED > reports.html

Ensuite, ouvrez votre navigateur Web et parcourez l'emplacement du fichier qui affichera immédiatement les journaux dans de beaux tableaux de bord, comme indiqué.

Résumé

GoAccess est un outil utile qui vous donne des tonnes d'informations sur l'interaction de votre serveur Web avec les visiteurs de votre site Web. Il vous permet d'obtenir une multitude d'informations détaillées sur l'interaction des visiteurs avec votre site qui peuvent s'avérer utiles pour atteindre un public plus large et améliorer l'expérience utilisateur.


Linux
  1. nginx - 413 Entité de requête trop grande

  2. Apache vs Nginx :quel serveur Web choisir

  3. Comment réparer la vulnérabilité DROWN dans le serveur Web Apache/NGINX et SMTP ?

  4. LAMP vs LEMP - conseils pour choisir Apache ou nginx pour votre serveur Web

  5. Chemins par défaut Nginx et Apache

Installer et réviser GoAccess Apache Log Analyzer [Guide]

Comment activer TLS 1.3 sur Apache et Nginx

Comment installer et sécuriser Apache sur Debian11

Apache vs Nginx :quel serveur Web vous convient le mieux ?

Équilibrage de charge avec HAProxy, Nginx et Keepalived sous Linux

Comment ajouter la prise en charge de PHP-FPM sur Apache et Nginx Web Server sur Ubuntu 18.04