GoAccess è uno strumento di analisi weblog gratuito e open source utilizzato per l'analisi dei log in tempo reale. È possibile analizzare i registri tramite un browser Web o un terminale. È veloce e leggero e non può consumare una grande quantità di CPU e memoria. Utilizza Common Log Format per analizzare e analizzare i registri del server Web. Supporta HTTP/2 e IPv6 e ha la capacità di generare JSON e CSV.
GoAccess fornisce statistiche molto utili agli amministratori di sistema, inclusi i visitatori principali, la larghezza di banda, i siti e gli URL di riferimento, i sistemi operativi, la posizione IP, il DNS inverso, la geolocalizzazione, il codice di stato HTTP e molto altro.
In questo tutorial, ti mostreremo come installare e utilizzare GoAccess su Ubuntu 20.04.
Prerequisiti
- Un server che esegue Ubuntu 20.04.
- Una password di root è configurata sul server.
Per iniziare
Prima di iniziare, dovrai aggiornare i pacchetti di sistema all'ultima versione. Puoi aggiornarli usando il seguente comando:
apt-get update -y
Una volta aggiornato il tuo server, puoi procedere al passaggio successivo.
Installa GoAccess dal repository Ubuntu
Per impostazione predefinita, GoAccess non è incluso nel repository predefinito di Ubuntu. Quindi dovrai aggiungere il repository GoAccess al tuo sistema.
Innanzitutto, scarica e aggiungi la chiave GPG con il seguente comando:
wget -O - https://deb.goaccess.io/gnugpg.key | apt-key --keyring /etc/apt/trusted.gpg.d/goaccess.gpg add -
Quindi, aggiungi il repository GoAccess con il seguente comando:
echo "deb http://deb.goaccess.io/ $(lsb_release -cs) main" | tee -a /etc/apt/sources.list.d/goaccess.list
Una volta aggiunto il repository, aggiorna la cache del repository e installa GoAccess con il seguente comando:
apt-get update -y
apt-get install goaccess -y
Questo installerà GoAccess sul tuo sistema.
Installa GoAccess dal sorgente
Puoi anche installare GoAccess compilandolo dal sorgente. Innanzitutto, dovrai installare le dipendenze richieste con il seguente comando:
apt-get install libncursesw5-dev libgeoip-dev libtokyocabinet-dev build-essential -y
Una volta installate tutte le dipendenze, scarica il sorgente GoAccess con il seguente comando:
wget http://tar.goaccess.io/goaccess-1.4.tar.gz
Una volta completato il download, estrai il file scaricato con il seguente comando:
tar -xzvf goaccess-1.4.tar.gz
Quindi, cambia la directory in directory estratta e configura GoAccess con il seguente comando:
cd goaccess-1.4/
./configure --enable-utf8 --enable-geoip=legacy
Dovresti ottenere il seguente output:
Your build configuration: Prefix : /usr/local Package : goaccess Version : 1.4 Compiler flags : -pthread Linker flags : -lnsl -lncursesw -lGeoIP -lpthread UTF-8 support : yes Dynamic buffer : no Geolocation : GeoIP Legacy Storage method : In-Memory with On-Disk Persitance Storage TLS/SSL : no Bugs : [email protected]
Quindi, installa GoAccess sul tuo sistema usando il seguente comando:
make
make install
Al termine dell'installazione, puoi verificare la versione installata di GoAccess con il seguente comando:
goaccess --version
Dovresti ottenere il seguente output:
GoAccess - 1.4. For more details visit: http://goaccess.io Copyright (C) 2009-2020 by Gerardo Orellana Build configure arguments: --enable-utf8 --enable-geoip=legacy
Puoi trovare il file di configurazione predefinito di GoAccess con il seguente comando:
goaccess --dcf
Dovresti vedere il seguente output:
/usr/local/etc/goaccess/goaccess.conf
Avvia la dashboard di GoAccess
Apri il tuo terminale avvia la dashboard di GoAccess utilizzando il seguente comando:
goaccess /var/log/apache2/access.log --log-format=COMBINED
Dovresti vedere la seguente schermata:
Puoi utilizzare le seguenti scorciatoie da tastiera per navigare nell'interfaccia:
F5 : Used to refresh the dashboard. G : Used to move to the last item in the dashboard and use g to move to the top of the dashboard. j and k : Used to scroll up and down. s : Used to display the sort options for the active module. ? : Used to display help information. TAB : Used to move forward. q : Used to exit from the program.
Ora premi 1 per visualizzare i visitatori unici, la larghezza di banda e gli hit totali giornalieri come mostrato di seguito:
Premi 2 per visualizzare i file non statici più richiesti sul tuo server web come mostrato di seguito:
Premi 3 per visualizzare le informazioni sui file statici come immagini, CSS, JavaScript come mostrato di seguito:
Premi 4 per visualizzare gli URL del percorso non trovato come mostrato di seguito:
Premi 5 per visualizzare il nome host e l'indirizzo IP del visitatore come mostrato di seguito:
Premi 6 per visualizzare le informazioni del sistema operativo utilizzato dagli host come mostrato di seguito:
Premi 7 per visualizzare le informazioni di ciascun visitatore unico come mostrato di seguito:
Premi 8 per visualizzare le informazioni orarie sul numero di accessi, visitatori unici e larghezza di banda consumata come mostrato di seguito:
Genera un rapporto HTML
GoAccess ti consente anche di generare rapporti HTML, JSON o CSV e di accedervi tramite il browser web.
Puoi generarlo con il seguente comando:
goaccess /var/log/apache2/access.log --log-format=COMBINED -a -o /var/www/html/report.html
Ora apri il tuo browser web e accedi al rapporto generato utilizzando l'URL http://your-server-ip/report.html .
Dovresti vedere la seguente pagina:
Conclusione
In questo post, hai imparato come installare e utilizzare GoAccess per analizzare i log del tuo server web Apache. Puoi anche utilizzare questo strumento per Nginx, Amazon S3, Elastic Load Balancing e CloudFront. Sentiti libero di chiedermi se hai domande.