
GoAccess è un analizzatore di log web in tempo reale e un visualizzatore interattivo che gira in un terminale in sistemi *nix o tramite il tuo browser.
GoAccess è un analizzatore di log web in tempo reale e visualizzatore interattivo open source che viene eseguito in un terminale su sistemi *nix o direttamente nel tuo browser. Progettato con in mente amministratori di sistema, ingegneri DevOps e professionisti della sicurezza, fornisce statistiche HTTP rapide e utili e report visivi del server al volo. GoAccess analizza i log del tuo web server in tempo reale e presenta i dati direttamente nel terminale o tramite una dashboard HTML live, rendendo facile monitorare il traffico, rilevare anomalie e risolvere problemi istantaneamente.
Maggiori informazioni su: https://goaccess.io.
GoAccess analizza il file di log web specificato e restituisce i dati al terminale X. Le funzionalità includono:
Completamente in tempo reale
Tutti i pannelli e le metriche sono impostati per essere aggiornati ogni 200 ms sull'output del terminale
e ogni secondo sull'output HTML.
Configurazione minima necessaria
Puoi semplicemente eseguirlo sul tuo file di log di accesso, scegliere il formato del log e lasciare
che GoAccess analizzi il log di accesso e ti mostri le statistiche.
Traccia il tempo di risposta dell'applicazione
Traccia il tempo impiegato per servire la richiesta. Estremamente utile se vuoi
tracciare le pagine che stanno rallentando il tuo sito.
Autenticazione WebSocket:
GoAccess offre un'autenticazione WebSocket avanzata, supportando la verifica JWT locale ed
esterna, con capacità di aggiornamento sicuro dei token e integrazione senza soluzione di continuità
con sistemi di autenticazione esterni. I token verificati vengono tracciati
fino al loro claim exp e la connessione viene chiusa una volta scaduti.
Quasi tutti i formati di log web
GoAccess consente qualsiasi stringa di formato di log personalizzata. Le opzioni predefinite includono,
Apache, Nginx, Amazon S3, Elastic Load Balancing, CloudFront, ecc.
Elaborazione incrementale dei log
Hai bisogno della persistenza dei dati? GoAccess ha la capacità di elaborare i log in modo incrementale
tramite le opzioni di persistenza su disco.
Una sola dipendenza
GoAccess è scritto in C. Per eseguirlo, hai solo bisogno di ncurses come dipendenza.
Tutto qui. Include persino il proprio server Web Socket — http://gwsocket.io/.
Visitatori
Determina la quantità di hit, visitatori, larghezza di banda e metriche per le richieste
più lente per ora o per data.
Metriche per Virtual Host
Hai più Virtual Host (Server Blocks)? Include un pannello che
mostra quale virtual host sta consumando la maggior parte delle risorse del web server.
Tracciamento delle campagne UTM
Suddivide il traffico delle campagne per medium, source, campaign, content e term,
tutti estratti dall'URL richiesto.
Classificazione di bot e crawler
Mantiene i crawler AI e il traffico Fediverse (ActivityPub) nelle proprie
categorie, separatamente dai tradizionali crawler dei motori di ricerca.
Impostazioni TLS
Riporta il protocollo negoziato, la suite di cifratura e il gruppo di scambio di chiavi quando
%K, %k e %g fanno parte del formato del log.
ASN (mappatura dell'Autonomous System Number)
Ottimo per rilevare pattern di traffico malevolo e bloccarli di conseguenza.
Intere reti possono anche essere escluse man mano che vengono analizzate con --exclude-asn.
Schema colori personalizzabile
Adatta GoAccess ai tuoi gusti/schemi di colore. Sia tramite il
terminale, sia applicando semplicemente il foglio di stile sull'output HTML.
Supporto per grandi set di dati
GoAccess include la capacità di analizzare log di grandi dimensioni grazie alle sue tabelle hash
in memoria ottimizzate. Ha un ottimo utilizzo della memoria e prestazioni piuttosto buone. Questo
storage supporta anche la persistenza su disco.
Supporto Docker
Possibilità di compilare l'immagine Docker di GoAccess dal repository upstream. È comunque possibile
configurarla completamente, utilizzando il mapping dei volumi e modificando goaccess.conf. Vedere
la sezione Docker di seguito.
È inoltre disponibile la documentazione su come utilizzare docker-compose.
GoAccess consente qualsiasi stringa di formato di log personalizzata. Le opzioni predefinite includono, a titolo non esaustivo:
Il report HTML utilizza i dati cartografici Natural Earth,
che sono di pubblico dominio.
La mappa dei paesi inclusa contiene un adattamento locale per mostrare la Crimea come parte
dell'Ucraina, in linea con la Risoluzione 68/262 dell'Assemblea Generale delle Nazioni Unite.
Preservare questo adattamento durante l'aggiornamento di resources/countries-110m.json.
L'assegnazione dei paesi per il traffico proviene dal database GeoIP configurato;
modificare i contorni della mappa non modifica i totali del report.
GoAccess è stato progettato per essere un analizzatore di log veloce, basato su terminale. La sua idea centrale è analizzare e visualizzare rapidamente le statistiche del server web in tempo reale senza la necessità di utilizzare il browser (ottimo se si desidera fare una rapida analisi del proprio access log via SSH, o se semplicemente si ama lavorare nel terminale).
Serve anche come strumento pratico per il monitoraggio della sicurezza, rendendo facile individuare attività sospette, pattern di traffico insoliti, tentativi di brute-force, scanner, bot e richieste anomale direttamente dai propri log.
Sebbene l'output su terminale sia quello predefinito, è in grado di
generare un report completo, autonomo e in tempo reale in HTML,
nonché un report in JSON e
CSV.
Lo si può considerare più uno strumento di monitoraggio da riga di comando che altro.
GoAccess può essere compilato e utilizzato su sistemi *nix.
Scaricare, estrarre e compilare GoAccess con:
$ wget https://tar.goaccess.io/goaccess-1.12.tar.gz
$ tar -xzvf goaccess-1.12.tar.gz
$ cd goaccess-1.12/
$ ./configure --enable-utf8 --enable-geoip=mmdb --with-zlib
$ make
# make install