Ngxtop ist ein kostenloses Open-Source, einfaches, flexibles, vollständig konfigurierbares und benutzerfreundliches Echtzeit-Überwachungstool ähnlich wie top für den nginx-Server. Es sammelt Daten, indem es das nginx-Zugriffsprotokoll analysiert (der Standardort ist immer /var/log/nginx/access.log) und zeigt nützliche Metriken Ihres nginx-Servers an, um Ihnen zu helfen, Ihren Webserver in Echtzeit im Auge zu behalten. Es ermöglicht auch das Analysieren von Apache-Protokollen von einem Remote-Server.
So installieren und verwenden Sie Ngxtop in Linux
Um Ngxtop zu installieren, müssen Sie zunächst PIP in Linux installieren. Sobald Sie pip auf Ihrem System installiert haben, können Sie Ngxtop mit folgendem Befehl installieren.
$ sudo pip install ngxtop
Überwachen von Nginx-Serveranfragen
Jetzt, da Sie Ngxtop installiert haben, ist der einfachste Weg, es ohne Argumente auszuführen. Dadurch wird das /var/log/nginx/access.log analysiert und standardmäßig im Follow-Modus ausgeführt (beobachten neuer Zeilen, während sie in das Zugriffsprotokoll geschrieben werden).
$ sudo ngxtop
Beispiel-Ausgabe
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 |
Um zu beenden, drücken Sie [Strg + C].
Analysieren eines anderen Zugriffsprotokolls
Sie können ein anderes Zugriffsprotokoll analysieren, z. B. für eine bestimmte Website oder Web-App, indem Sie die -l
-Flag wie gezeigt verwenden.
$ sudo ngxtop -l /var/log/nginx/site1/access.log
Auflisten der Top-Quell-IPs der Clients
Der folgende Befehl listet alle Top-Quell-IPs der Clients auf, die auf die Website zugreifen.
$ 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 |
Verwenden Sie ein bestimmtes Protokollformat
Um ein Protokollformat gemäß der Anweisung im log_format-Direktive zu verwenden, verwenden Sie die Option -f
wie gezeigt.
$ sudo ngxtop -f main -l /var/log/nginx/site1/access.log
Apache-Protokoll von Remote-Server analysieren
Um eine Apache-Protokolldatei von einem Remote-Server mit einem gängigen Format zu analysieren, verwenden Sie einen Befehl ähnlich dem folgenden (geben Sie Ihren Benutzernamen und die IP-Adresse des Remote-Servers an).
$ ssh user@remote_server tail -f /var/log/apache2/access.log | ngxtop -f common
Beispiel-Ausgabe
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 |
Für weitere Verwendungsoptionen sehen Sie die ngxtop-Hilfemeldung mit dem folgenden Befehl an.
$ ngxtop -h
ngxtop Github-Repository: https://github.com/lebinh/ngxtop
Das war’s für jetzt! In diesem Artikel haben wir erklärt, wie man ngxtop in Linux-Systemen installiert und verwendet. Wenn Sie Fragen haben oder zusätzliche Gedanken zu diesem Leitfaden hinzufügen möchten, verwenden Sie das Kommentarformular unten. Außerdem, wenn Sie auf ähnliche Tools gestoßen sind, lassen Sie es uns auch wissen, wir werden dankbar sein.
Source:
https://www.tecmint.com/ngxtop-monitor-nginx-log-files-in-real-time-in-linux/