Linux運維必備:命令行中實時監控 Nginx 神器

下面的指南將教你如何安裝和使用 ngxtop。本軟件是一款免費、開源、靈活、實時的 Nginx 網絡服務器監控工具。它的工作原理是程序解析 Nginx 訪問日誌並打印有關請求計數、URI 和狀態代碼等頂級功能的信息。這是系統管理員或高級用戶的最愛,他們想要一個輕量級工具來監控對他們的 Nginx Web 服務器的請求。

必要條件
Ubuntu Server 20.04或以上版本。

Nginx服務器更新到穩定或主線。

Root訪問權限或具有sudo權限的帳戶。

更新到最新的系統。

已安裝Python 3和PIP 3。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update && sudo apt upgrade -y
linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install python3 python3-pip

ngxtop 的安裝

安裝 python 和 pip 後,我們現在可以繼續安裝 ngxtop。輸入以下命令。

linuxmi@linuxmi:~/www.linuxmi.com$ pip3 install ngxtop
Collecting ngxtop
Downloading ngxtop-0.0.3-py2.py3-none-any.whl (11 kB)
Collecting docopt
Downloading docopt-0.6.2.tar.gz (25 kB)
Requirement already satisfied: pyparsing in /usr/lib/python3/dist-packages (from ngxtop) (2.4.6)
Collecting tabulate
Downloading tabulate-0.8.9-py3-none-any.whl (25 kB)
Building wheels for collected packages: docopt
Building wheel for docopt (setup.py) ... done
Created wheel for docopt: filename=docopt-0.6.2-py2.py3-none-any.whl size=13704 sha256=e4e951599acce8f67d071eb659a1f5e65c2c016a4e3dce3b0f62038b63f74a70
Stored in directory: /home/linuxmi/.cache/pip/wheels/56/ea/58/ead137b087d9e326852a851351d1debf4ada529b6ac0ec4e8c
Successfully built docopt
Installing collected packages: docopt, tabulate, ngxtop
Successfully installed docopt-0.6.2 ngxtop-0.0.3 tabulate-0.8.9

安裝後,確認版本。

linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop --version

示例輸出:

xstat 0.1

如何使用 ngxtop

現在,不帶任何參數運行 ngxtop 命令將顯示請求計數的摘要、請求的 URI、狀態代碼的請求數。

linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop

輸出如下:

接下來,如果您想查看到 Nginx 服務器的top遠程連接列表,請鍵入以下內容。

linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop top remote_addr

輸出如下:

如果你想看到4xx或5xx響應和HTTP參考附件,你可以輸入以下命令:

linuxmi@linuxmi:~/www.linuxmi.com$ ngxtop -i 'status >= 400' print request status http_referer

輸出如下:

這些只是一些例子。可以在下面找到完整的組合列表。

用法:
ngxtop 選項
ngxtop 信息

選項:
-l , --access-log 要解析的訪問日誌文件。
-f , --log-format 日誌格式,如 log_format 指令中指定的那樣。
--no-follow ngxtop 默認行爲是忽略日誌中的當前行
並且只在新行寫入訪問日誌時注意它們。
使用此標誌告訴 ngxtop 處理訪問日誌的當前內容。

-t , --interval 在跟隨模式下運行時報告間隔 [默認值:2.0]
-g , --group-by 按變量分組 [默認:request_path]
-w ,--have 子句 [默認:1]
-o , --order-by 默認查詢的輸出順序 [默認:計數]
-n , --limit 限制 top 命令的報告中包含的記錄數 [默認值:10]
-a ..., --a ... 將 exp(必須是聚合 exp:sum、avg、min、max 等)添加到輸出中
-v, --verbose 更詳細的輸出
-d, --debug 打印每一行和解析的記錄
-h, --help 打印此幫助消息。
--version 打印版本信息。

高級/實驗選項:
-c , --config 允許 ngxtop 解析 nginx 配置文件的日誌格式和位置。
-i , --filter filter in, 滿足給定表達式的記錄被處理。
-p , --pre-filter in-filter 表達式以檢查預解析階段。

總結

您已經學習瞭如何在 Ubuntu(一個操作系統)上爲您的 Nginx 服務器安裝 ngxtop。請注意,這是用於從日誌中搜索特定統計信息的輕量級、快速和乾淨的基本監控。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章