ngxtop è un tool di monitoraggio in tempo reale per server nginx, gratuito, open source, semplice, flessibile, completamente configurabile e facile da usare, simile a top. Raccoglie dati analizzando il log di accesso di nginx (la posizione predefinita è sempre /var/log/nginx/access.log) e visualizza metriche utili del tuo server nginx, aiutandoti così a tenere d’occhio il tuo server web in tempo reale. Permette anche di analizzare i log di Apache da un server remoto.
Come Installare e Usare Ngxtop in Linux
Per installare ngxtop, prima devi installare PIP in Linux; una volta installato pip sul tuo sistema, puoi installare ngxtop usando il comando seguente.
$ sudo pip install ngxtop
Monitorare le Richieste del Server Nginx
Ora che hai installato ngxtop, il modo più semplice per eseguirlo è senza argomenti. Questo analizzerà il /var/log/nginx/access.log e si eseguirà in modalità di monitoraggio continuo (osserva nuove righe mentre vengono scritte nel log di accesso) per impostazione predefinita.
$ sudo ngxtop
Output di Esempio
running for 411 seconds, 64332 records processed: 156.60 req/sec Summary: | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx | |---------+------------------+-------+-------+-------+-------| | 64332 | 2775.251 | 61262 | 2994 | 71 | 5 | Detailed: | request_path | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx | |------------------------------------------+---------+------------------+-------+-------+-------+-------| | /abc/xyz/xxxx | 20946 | 434.693 | 20935 | 0 | 11 | 0 | | /xxxxx.json | 5633 | 1483.723 | 5633 | 0 | 0 | 0 | | /xxxxx/xxx/xxxxxxxxxxxxx | 3629 | 6835.499 | 3626 | 0 | 3 | 0 | | /xxxxx/xxx/xxxxxxxx | 3627 | 15971.885 | 3623 | 0 | 4 | 0 | | /xxxxx/xxx/xxxxxxx | 3624 | 7830.236 | 3621 | 0 | 3 | 0 | | /static/js/minified/utils.min.js | 3031 | 1781.155 | 2104 | 927 | 0 | 0 | | /static/js/minified/xxxxxxx.min.v1.js | 2889 | 2210.235 | 2068 | 821 | 0 | 0 | | /static/tracking/js/xxxxxxxx.js | 2594 | 1325.681 | 1927 | 667 | 0 | 0 | | /xxxxx/xxx.html | 2521 | 573.597 | 2520 | 0 | 1 | 0 | | /xxxxx/xxxx.json | 1840 | 800.542 | 1839 | 0 | 1 | 0 |
Per uscire, premi [Ctrl + C].
Analizzare un Diverso Log di Accesso
Puoi analizzare un log di accesso diverso, ad esempio per un sito web o un’applicazione web specifici, utilizzando il flag -l
come mostrato.
$ sudo ngxtop -l /var/log/nginx/site1/access.log
Elencare i Top Source IP dei Clienti
Il seguente comando elencherà tutti i top IP di origine dei clienti che accedono al sito.
$ sudo ngxtop remote_addr -l /var/log/nginx/site1/access.log
running for 20 seconds, 3215 records processed: 159.62 req/sec top remote_addr | remote_addr | count | |-----------------+---------| | 118.173.177.161 | 20 | | 110.78.145.3 | 16 | | 171.7.153.7 | 16 | | 180.183.67.155 | 16 | | 183.89.65.9 | 16 | | 202.28.182.5 | 16 | | 1.47.170.12 | 15 | | 119.46.184.2 | 15 | | 125.26.135.219 | 15 | | 125.26.213.203 | 15 |
Utilizzare un Formato di Registro Particolare
Per utilizzare un formato di registro specificato nella direttiva log_format, utilizzare l’opzione -f
come mostrato.
$ sudo ngxtop -f main -l /var/log/nginx/site1/access.log
Analizzare il Registro Apache Da un Server Remoto
Per analizzare il file di registro Apache da un server remoto con formato comune, utilizzare un comando simile al seguente (specificare il proprio nome utente e l’IP del server remoto).
$ ssh user@remote_server tail -f /var/log/apache2/access.log | ngxtop -f common
Output di Esempio
running for 20 seconds, 1068 records processed: 53.01 req/sec Summary: | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx | |---------+------------------+-------+-------+-------+-------| | 1068 | 28026.763 | 1029 | 20 | 19 | 0 | Detailed: | request_path | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx | |------------------------------------------+---------+------------------+-------+-------+-------+-------| | /xxxxxxxxxx | 199 | 55150.402 | 199 | 0 | 0 | 0 | | /xxxxxxxx/xxxxx | 167 | 47591.826 | 167 | 0 | 0 | 0 | | /xxxxxxxxxxxxx/xxxxxx | 25 | 7432.200 | 25 | 0 | 0 | 0 | | /xxxx/xxxxx/x/xxxxxxxxxxxxx/xxxxxxx | 22 | 698.727 | 22 | 0 | 0 | 0 | | /xxxx/xxxxx/x/xxxxxxxxxxxxx/xxxxxx | 19 | 7431.632 | 19 | 0 | 0 | 0 | | /xxxxx/xxxxx/ | 18 | 7840.889 | 18 | 0 | 0 | 0 | | /xxxxxxxx/xxxxxxxxxxxxxxxxx | 15 | 7356.000 | 15 | 0 | 0 | 0 | | /xxxxxxxxxxx/xxxxxxxx | 15 | 9978.800 | 15 | 0 | 0 | 0 | | /xxxxx/ | 14 | 0.000 | 0 | 14 | 0 | 0 | | /xxxxxxxxxx/xxxxxxxx/xxxxx | 13 | 20530.154 | 13 | 0 | 0 | 0 |
Per ulteriori opzioni di utilizzo, visualizzare il messaggio di aiuto di ngxtop utilizzando il seguente comando.
$ ngxtop -h
Repository GitHub di ngxtop: https://github.com/lebinh/ngxtop
Questo è tutto per ora! In questo articolo, abbiamo spiegato come installare e utilizzare ngxtop nei sistemi Linux. Se hai domande o pensieri aggiuntivi da aggiungere a questa guida, utilizza il modulo dei commenti qui sotto. Inoltre, se hai trovato strumenti simili, faccelo sapere e saremo grati.
Source:
https://www.tecmint.com/ngxtop-monitor-nginx-log-files-in-real-time-in-linux/