ngx_http_stub_status_module模塊
該模塊可以輸出nginx的基本狀態信息 ,這個模塊很重要,zabbix監控nginx就需要這個模塊。可以監控nginx狀態和nginx的連接數,這個模塊不是默認添加的,需要手動添加該模塊。
Nginx中的stub_status模塊主要用於查看Nginx的一些狀態信息,本模塊默認是不會編譯進Nginx的,如果你要使用該模塊,則要在編譯安裝Nginx時指定: ./configure –with-http_stub_status_module
添加ngx_http_stub_status_module模塊
[root@www nginx-1.16.1]# /usr/local/nginx/sbin/nginx -V --拿到之前的兩個編譯參數
--prefix=/usr/local/nginx --add-module=../echo-nginx-module-0.61
nginx version: JFWS/3.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
configure arguments: --prefix=/usr/local/nginx --add-module=../echo-nginx-module-0.61
root@www nginx-1.16.1]#
./configure --prefix=/usr/local/nginx --add-module=../echo-nginx-module-0.61 --with-http_stub_status_module --拿到之前參數編譯這個模塊
[root@www nginx-1.16.1]# make && make install
[root@www nginx-1.16.1]# make upgrade
[root@www nginx-1.16.1]# /usr/local/nginx/sbin/nginx -V --可以看到參數加進去了
nginx version: JFWS/3.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
configure arguments: --prefix=/usr/local/nginx --add-module=../echo-nginx-module-0.61 --with-http_stub_status_module
stub_status模塊用法
提供了查看 Nginx 運行的基本狀態信息,我們只想讓部分 IP 的人可以查看,此時可以配置一個訪問控制:
location /nginx-status {
stub_status;
access_log off;
allow 192.168.179.0/24;
deny all;
}
[root@www nginx-1.16.1]# /usr/local/nginx/sbin/nginx -s reload
[root@www nginx-1.16.1]# curl 192.168.179.99/status --可以看到這些都是nginx的狀態
Active connections: 5
server accepts handled requests
5970806143 5970806143 7560482010
Reading: 0 Writing: 5 Waiting: 0
Active connections: Nginx當前活躍鏈接數
accepts: 接收客戶端連接的總次數
handled: 處理客戶端連接的總次數。一般來說,這個參數值與accepts相同,除非已經達到了一些資源限制(例如worker_connections限制)
requests: 客戶端請求的總次數
Reading: 當前nginx正在讀取請求頭的連接數
Writing: 當前nginx正在寫入響應的連接數
Waiting: 當前正在等待請求的空閒客戶端連接數。一般是在nginx開啓長連接(keep alive)情況下出現。