Überwachen Sie Nginx in Echtzeit mit ngxtop

Durch Zufall habe ich ein kleines in Python geschriebenes Tool gefunden, das ngxtop heißt und es Ihnen ermöglicht, einen Nginx-Server in Echtzeit zu überwachen . Aus seinem eigenen Namen lässt sich bereits ableiten, dass es dem obersten Befehl ähneln soll, den wir unter Linux finden und der uns Systemstatistiken bietet.

Ngxtop ist ein Tool, mit dem wir den Server zu einem bestimmten Zeitpunkt überwachen können. Wenn wir den Server überwachen und langfristige Statistiken erhalten möchten, müssen wir auf ein anderes Tool zurückgreifen.

Obwohl es sich um eine einfache Anwendung handelt, müssen Sie über grundlegende Kenntnisse des HTTP-Protokolls verfügen, um die Statistiken interpretieren zu können. Ich empfehle, sich das Tutorial zum HTTP-Protokoll anzuschauen, um zumindest eine grundlegende Vorstellung zu bekommen.

Tool zum Überwachen von Nginx in Echtzeit mit ngxtop.

Dies ist ein wirklich einfaches Tool, da ngxtop nur für die Verarbeitung der Datei access.log und die lesbare Anzeige ihres Inhalts verantwortlich ist.

Die von diesem Tool zurückgegebenen Informationen sind in verschiedenen Spalten angeordnet:

  • Es zeigt uns den request_path , der nichts anderes als der path ist, und in der count Spalte die Anzahl der Anforderungen, die an diese Route request_path .
  • In der Spalte avg_bytes_sent die Anzahl der gesendeten Bytes avg_bytes_sent , die einer Route zugeordnet sind.
  • Schließlich können wir auch überprüfen, wie oft ein HTTP-Statuscode für eine bestimmte Route angezeigt wurde.

Um Ihnen eine Vorstellung zu geben, hinterlasse ich ein Beispiel für die Ausgabe des Befehls ngxtop :

 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 | 

Dies ist natürlich die einfachste Verwendung, aber das Tool bietet eine Vielzahl von Optionen, die Sie durch Ausführen des ngxtop --help .

Einige Beispiele für Informationen, die wir von unserem Nginx-Server mit ngxtop erhalten können.

Wir können eine Liste der IPs abrufen, die die meisten Anfragen auf unserem Server gestellt haben. Dafür verwenden wir den Befehl:
ngxtop top remote_addr

Wir können komplexere Filter durchführen, wie im folgenden Beispiel, in dem wir Anfragen mit dem Statuscode 4xx oder 5xx filtern und außerdem die folgenden Informationen auf dem Bildschirm anzeigen: Anfrage, Statuscode und Referer. In diesem Fall lautet der Befehl, den wir ausführen:
ngxtop -i 'status >= 400' print request status http_referer

Wie installiere ich ngxtop?

Wir müssen in unserem Python 2-Server oder höher mit dem Pip-Paket-Manager installiert haben. Wenn wir diese beiden Anforderungen erfüllen, ist die Installation einfach, wie der Befehl ausgeführt wird:
pip install ngxtop

Zum Schluss sagen wir, dass es ein einfaches, aber sehr nützliches Tool ist, das wir in GitHub finden können . Es ist wahr, dass es auf die Daten beschränkt ist, die in der Datei access.log gesammelt werden, aber es kann uns mehr als eine Eile kosten, also ist es gut, es zu wissen.

See also  Probleme beim Laden von CSS aus Plugins und WordPress-Themes

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *