ngxtop - Nadgledanje Nginx log fajlova u realnom vremenu u Linuxu


ngxtop je besplatan open source, jednostavan, fleksibilan, potpuno konfigurabilan i lak za korištenje alat za praćenje u realnom vremenu za nginx server. Prikuplja podatke raščlanjivanjem nginx pristupnog dnevnika (podrazumevana lokacija je uvijek /var/log/nginx/access.log) i prikazuje korisne metrike vašeg nginx servera, pomažući vam na taj način da pazite na svoj web server u realnom vremenu. Takođe vam omogućava da raščlanite Apache dnevnike sa udaljenog servera.

Kako instalirati i koristiti Ngxtop u Linuxu

Da biste instalirali ngxtop, prvo morate instalirati PIP u Linuxu, nakon što imate pip instaliran na vašem sistemu, možete instalirati ngxtop koristeći sljedeću naredbu .

sudo pip install ngxtop

Nadgledajte zahtjeve Nginx servera

Sada kada ste instalirali ngxtop, najlakši način da ga pokrenete je bez ikakvih argumenata. Ovo će raščlaniti /var/log/nginx/access.log i pokrenut će se u načinu praćenja (pazite na nove redove kako se upisuju u dnevnik pristupa) prema zadanim postavkama.

sudo ngxtop
Sample Output
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 |

Da izađete, pritisnite [Ctrl + C].

Parse Different Access Log

Možete raščlaniti drugi dnevnik pristupa, na primjer za određenu web stranicu ili web aplikaciju koristeći -l zastavicu kao što je prikazano.

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

Navedite top izvorne IP adrese klijenata

Sljedeća naredba će izlistati sve IP izvorne IP-ove klijenata koji pristupaju stranici.

sudo ngxtop remote_addr -l  /var/log/nginx/site1/access.log
Sample Output
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 |

Koristite poseban format dnevnika

Da biste koristili format dnevnika kako je navedeno u log_format direktivi, koristite opciju -f kao što je prikazano.

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

Parse Apache log sa udaljenog servera

Da raščlanite Apache log datoteku sa udaljenog servera sa uobičajenim formatom, koristite naredbu sličnu sljedećoj (navedite svoje korisničko ime i IP udaljenog servera).

ssh user@remote_server tail -f /var/log/apache2/access.log | ngxtop -f common
Sample Output
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 |

Za više opcija upotrebe pogledajte poruku pomoći ngxtop koristeći sljedeću naredbu.

ngxtop -h  

ngxtop Github spremište: https://github.com/lebinh/ngxtop

To je to za sada! U ovom članku smo objasnili kako instalirati i koristiti ngxtop u Linux sistemima. Ako imate bilo kakvih pitanja ili dodatnih misli koje možete dodati ovom vodiču, koristite obrazac za komentare ispod. Osim toga, ako ste naišli na slične alate, također nas obavijestite i bit ćemo vam zahvalni.