ngxtop - Monitorizează fișierele jurnal Nginx în timp real în Linux


ngxtop este o sursă deschisă gratuită, simplă, flexibilă, complet configurabilă și ușor de utilizat, în timp real, ca instrument de monitorizare pentru serverul nginx. Acesta adună date prin analizarea jurnalului de acces nginx (locația implicită este întotdeauna /var/log/nginx/access.log) și afișează valori utile ale serverului tău nginx, ajutându-te astfel să fii cu ochii pe server web în timp real. De asemenea, vă permite să analizați jurnalele Apache de pe un server la distanță.

Cum se instalează și se utilizează Ngxtop în Linux

Pentru a instala ngxtop, mai întâi trebuie să instalați PIP în Linux, odată ce ați instalat pip pe sistemul dvs., puteți instala ngxtop folosind următoarea comandă .

sudo pip install ngxtop

Monitorizați solicitările serverului Nginx

Acum că ați instalat ngxtop, cel mai simplu mod de a-l rula este fără argumente. Aceasta va analiza /var/log/nginx/access.log și va rula în modul de urmărire (atenție la liniile noi pe măsură ce sunt scrise în jurnalul de acces) în mod implicit.

sudo ngxtop
Ieșire eșantion
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 |

Pentru a ieși, apăsați [Ctrl + C].

Analizați jurnalul de acces diferit

Puteți analiza un alt jurnal de acces, de exemplu pentru un anumit site web sau aplicație web, utilizând indicatorul -l după cum se arată.

sudo ngxtop -l /var/log/nginx/site1/access.log

Listați IP-urile sursă de top ale clienților

Următoarea comandă va lista toate IP-urile sursă de top ale clienților care accesează site-ul.

sudo ngxtop remote_addr -l  /var/log/nginx/site1/access.log
Ieșire eșantion
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 |

Utilizați un format de jurnal special

Pentru a utiliza un format de jurnal, așa cum este specificat în directiva log_format, utilizați opțiunea -f după cum se arată.

sudo ngxtop -f main -l /var/log/nginx/site1/access.log

Analizați jurnalul Apache de la serverul de la distanță

Pentru a analiza fișierul jurnal Apache de pe un server la distanță cu format comun, utilizați o comandă similară următoarei (specificați numele de utilizator și IP-ul serverului la distanță).

ssh user@remote_server tail -f /var/log/apache2/access.log | ngxtop -f common
Ieșire eșantion
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 |

Pentru mai multe opțiuni de utilizare, vizualizați mesajul de ajutor ngxtop folosind următoarea comandă.

ngxtop -h  

Depozitul Github ngxtop: https://github.com/lebinh/ngxtop

Atât deocamdată! În acest articol, am explicat cum să instalați și să utilizați ngxtop în sistemele Linux. Dacă aveți întrebări sau gânduri suplimentare de adăugat la acest ghid, utilizați formularul de comentarii de mai jos. În plus, dacă ați întâlnit instrumente similare, anunțați-ne și noi și vă vom fi recunoscători.