Monitoraggio Nginx in tempo reale
Analisi degli access log con l'utility ngxtop.
Ngxtop è un potente strumento a riga di comando che analizza gli access log di Nginx e li visualizza in un'interfaccia in tempo reale, simile al classico top.
Fornisce una panoramica immediata del carico del server, evidenziando le richieste più frequenti, gli indirizzi IP dei visitatori, i codici di stato HTTP e altre metriche fondamentali — eliminando la necessità di analizzare manualmente file di log densi durante il troubleshooting.
Installare ngxtop
Il modo più semplice per installare ngxtop è tramite pip:
pip install ngxtop
Comandi di base
ngxtop [options]
ngxtop [options] (print | top | avg | sum)
Per visualizzare l'elenco completo dei flag e dei filtri disponibili, esegui:
ngxtop --help
Per impostazione predefinita, ngxtop rileva automaticamente la posizione dell'access log dal file di configurazione di Nginx (/etc/nginx/nginx.conf). Se vengono trovati più log, l'utility ti chiederà di selezionare quello da monitorare:
Multiple access logs detected in configuration:
1. /var/log/nginx/access502.log
2. /var/log/nginx/access.api.log
3. /var/log/nginx/access.img.log
4. /var/log/nginx/access.log
5. /var/log/nginx/access404.log
Esempi pratici
- Monitorare gli errori 404
Isola gli errori «Not Found» per individuare link non funzionanti o tentativi di scansione:
ngxtop -i 'status == 404' print request status
Esempio di output:
running for 130 seconds, 150 records processed: 1.15 req/sec
request, status:
| request | status |
|----------------------------------------------|--------|
| GET /browserconfig.xml HTTP/1.1 | 404 |
| GET /employer/my/archive/2107569/98483600/ | 404 |
| GET /jobs/1045534/ HTTP/1.1 | 404 |
- Top indirizzi IP per numero di richieste
Identifica i visitatori più attivi o le potenziali fonti di attacchi DDoS:
ngxtop top remote_addr
Esempio di output:
running for 8 seconds, 1759 records processed: 217.15 req/sec
top remote_addr
| remote_addr | count |
|-----------------|-------|
| 92.60.184.91 | 45 |
| 66.249.78.10 | 42 |
| 77.120.121.122 | 42 |
Considerazioni finali
- Analisi immediata: ngxtop è perfetto per i controlli rapidi sullo stato del server e per individuare picchi di traffico.
- Troubleshooting: usalo per risalire rapidamente alla fonte degli errori della serie 500 o di pattern di richieste sospetti.
- Scalare il monitoraggio: ngxtop è eccellente per l'osservazione immediata da terminale, ma per i dati storici e gli alert avanzati valuta soluzioni a lungo termine come
Prometheus + GrafanaoZabbix.
Aiuto
Hai domande o ti serve una mano? Scrivici tramite il sistema di ticket — siamo sempre qui per aiutarti!