Introduzione
GoAccess è un analizzatore di log in tempo reale per server web su sistemi Unix/Linux. Permette anche di accedere ai log tramite il browser web. Lo scopo principale è quello di consentire agli utenti di fornire un modo rapido per analizzare e visualizzare le statistiche del server web in tempo reale senza bisogno di un browser web.
Supporta la maggior parte dei formati di log Web (Apache, Nginx, Amazon S3, Elastic Load Balancing, CloudFront, Caddy, ecc.). Hai solo bisogno di impostare il formato del registro e utilizzare. GoAccess genera anche un report HTML
in tempo reale completo e autonomo , utile per l'analisi, il monitoraggio e la visualizzazione dei dati. Supporta anche JSON
e CSV
.
Questo tutorial descrive come installare e utilizzare GoAccess con i sistemi Linux.
Installare GoAccess
La maggior parte dei sistemi operativi Linux contiene pacchetti GoAccess nei loro repository ufficiali. Quindi puoi semplicemente installarlo con il gestore di pacchetti.
Sistemi basati su Debian:
sudo apt-get update && sudo apt-get install goaccess -y
Sistemi basati su Redhat:
yum install goaccess
Arch Linux:
pacman -S goaccess
Per altri sistemi operativi, visitare questa pagina per installare Goaccess.
Usare GoAccess dal terminale
Scegli il file di registro in base al tuo sistema operativo e al server web utilizzato. Sui sistemi basati su Debian i log vengono generati nella directory /var/log/apache2
e il sistema basato su Redhat Apache crea i log nella directory /var/log/httpd
. Utilizza l'opzione -f
per definire il file di registro con il comando goaccess.
goaccess -f /var/log/apache2/access.log
Quindi seleziona il formato del registro. Il formato di registro predefinito di Apache è COMBINATO (combined).
GoAccess consente inoltre di definire il formato del registro utilizzando le opzioni --log-format
della riga di comando. Ad esempio, per utilizzare il formato di registro COMBINATO il comando sarà:
sudo goaccess /var/log/apache2/access.log --log-format=COMBINED
Vedrai l'output sulla console di sistema come di seguito:
Premi "Q" per uscire dal visualizzatore del terminale GoAccess.
Visualizzare l'output di GoAccess in Web Dashboard
GoAccess consente agli utenti di generare report in vari formati come HTML, JSON e CSV. Il formato HTML genera una pagina html con tutti i dati in formato visivo. Possiamo generare il rapporto utilizzando il seguente comando in un file html.
Creiamo un file di report html sotto /var/www/html
, che è la radice del documento predefinita impostata sul mio server Apache. Il seguente comando genererà un report html:
sudo goaccess /var/log/apache2/access.log --log-format=COMBINED -a -o /var/www/html/report.html
- -a - Abilita un elenco di user-agent per host
- -o - Usato per definire il file di output
- Il formato di output viene selezionato automaticamente in base all'estensione del nome del file di output
Successivamente, accedi a report.html utilizzando l'indirizzo IP del server o il nome di dominio.
Scorri verso il basso fino alla pagina web per visualizzare ulteriori informazioni.
Auto aggiornamento del file Web Dashboard
È possibile pianificare il comando goaccess per aggiornare il report html a intervalli regolari. Crea uno script di shell con il seguente contenuto:
Quindi pianifica lo script sopra con crontab:
sudo crontab -e
Aggiungi il seguente contenuto alla fine del file:
#Cron job to update Goaccess HTML repot
* * * * * /opt/goaccess.sh
Salva crontab e chiudi.
Conclusione
In questo tutorial, hai imparato a utilizzare l'utilità GoAccess per visualizzare i log del server Web in formati visivi.