
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 funziona in un terminale su sistemi *nix o direttamente nel tuo browser. Progettato pensando agli amministratori di sistema, agli ingegneri DevOps e ai 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 semplice monitorare il traffico, rilevare anomalie e risolvere i problemi all'istante.
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 nell'output del terminale e ogni secondo nell'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.
Monitora il tempo di risposta dell'applicazione
Monitora il tempo impiegato per servire la richiesta. Estremamente utile se vuoi monitorare le pagine che rallentano 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 bisogno solo 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.
Monitoraggio 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) in categorie proprie, separate 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 di 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, oppure il report può essere limitato a reti specifiche con --include-asn.
Schema colori personalizzabile
Adatta GoAccess ai tuoi gusti/schemi di colore. Sia tramite il terminale, sia applicando semplicemente il foglio di stile all'output HTML.
Supporto per grandi set di dati
GoAccess è in grado di analizzare log di grandi dimensioni grazie alle sue
tabelle hash in memoria ottimizzate. Ha un ottimo utilizzo della memoria e
prestazioni decisamente buone. Questo archivio supporta anche la persistenza
su disco.
Supporto Docker
Possibilità di compilare l'immagine Docker di GoAccess dal repository upstream. Puoi comunque configurarla
completamente, usando il mapping dei volumi e modificando goaccess.conf. Vedi
la sezione Docker qui sotto.
È inoltre disponibile la documentazione su come usare docker-compose.
GoAccess consente qualsiasi stringa di formato log personalizzata. Le opzioni predefinite includono, ma non solo:
Il report HTML utilizza i dati cartografici Natural Earth,
che sono di pubblico dominio.
La mappa dei paesi inclusa comprende un adattamento locale per mostrare la Crimea come parte
dell'Ucraina, in linea con la Risoluzione 68/262 dell'Assemblea Generale delle Nazioni Unite.
Mantieni questo adattamento quando aggiorni 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 web server in tempo reale senza la necessità di usare il browser (ottimo se vuoi fare una rapida analisi del tuo access log via SSH, o se semplicemente ami 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 tuoi log.
Sebbene l'output su terminale sia quello predefinito, ha la capacità di
generare un report completo, autonomo e in tempo reale in HTML,
oltre a un report JSON e
CSV.
Puoi vederlo più come uno strumento di monitoraggio da riga di comando che altro.
GoAccess può essere compilato e utilizzato su sistemi *nix.
Scarica, estrai e compila 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