Zabbix监控Nginx状态信息

Posted 芹溪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix监控Nginx状态信息相关的知识,希望对你有一定的参考价值。

 首先要检查nginx是否安装了 http_stub_status_module 模块,通过下面的命令可以看到编译参数。yum安装的默认会带有这个模块。

[[email protected] ~]# /data/nginx/sbin/nginx -V
nginx version: nginx/1.10.2
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) 
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/data/nginx-1.10.2 --user=www --group=www --with-http_stub_status_module --with-http_ssl_module

 zabbix客户端

 

配置nginx

1、启用nginx status配置

Nginx 的server配置增加如下的片段

 ......
   server {
        listen       80;
        server_name  www.blog.com;
        location /nginx_status { 
            stub_status on; 
            access_log off; 
            allow 10.0.0.60; 
            deny all; 
        } 
.....

[[email protected] share]# /data/nginx/sbin/nginx -t
nginx: the configuration file /data/nginx-1.10.2/conf/nginx.conf syntax is ok
nginx: configuration file /data/nginx-1.10.2/conf/nginx.conf test is successful
[[email protected] share]# /data/nginx/sbin/nginx -s reload

 ## 在虚拟主机 server {} 中加入上面配置,也可以单独定义一个专门用于监控的虚拟主机。
## deny all , 拒绝除 allow 中的主机之外所有主机访问此 URL ,实现过程中如果遇到 403 ,有可能是你把自己测试的机器拒绝了!

2、测试配置

[[email protected] share]# curl 10.0.0.60/nginx_status
Active connections: 1 
server accepts handled requests
 1 1 1 
Reading: 0 Writing: 1 Waiting: 0 

  ## Active connections: 对后端发起的活动连接数
## Server accepts handled requests: Nginx 总共处理了 1 个连接,成功创建了 1 次握手(没有失败次数),总共处理了 1 个请求
## Reading: Nginx 读取到客户端的 Header 信息数
## Writing: Nginx 返回给客户端的 Header 信息数
## Waiting: 开启 keep-alive 的情况下,这个值等于 active - ( reading + writing ), 意思是 Nginx 已经处理完成,正在等待下一次请求指令的驻留连接
## 在访问效率很高,请求很快被处理完毕的情况下,Waiting 数比较多是正常的。如果 reading + writing 数较多,则说明并发访问量很大,正在处理过程中

3、配置zabbix agentd配置文件

vim  /etc/zabbix/zabbix_agentd.conf
......
 UnsafeUserParameters=1
UserParameter=nginx.accepts,/usr/local/zabbix/scripts/nginx_status.sh accepts 
UserParameter=nginx.handled,/usr/local/zabbix/scripts/nginx_status.sh handled 
UserParameter=nginx.requests,/usr/local/zabbix/scripts/nginx_status.sh requests 
UserParameter=nginx.connections.active,/usr/local/zabbix/scripts/nginx_status.sh active 
UserParameter=nginx.connections.reading,/usr/local/zabbix/scripts/nginx_status.sh reading 
UserParameter=nginx.connections.writing,/usr/local/zabbix/scripts/nginx_status.sh writing 
UserParameter=nginx.connections.waiting,/usr/local/zabbix/scripts/nginx_status.sh waiting
.......

[[email protected] ~]# /etc/init.d/zabbix-agent restart
Shutting down Zabbix agent: [ OK ]
Starting Zabbix agent: [ OK ]

  

以上是关于Zabbix监控Nginx状态信息的主要内容,如果未能解决你的问题,请参考以下文章

zabbix监控nginx状态信息

zabbix监控nginx状态信息

zabbix用户自定义key检测内存信息和监控nginx的状态页

Zabbix4.0监控Nginx1.16.1

Zabbix监控Nginx

zabbix添加nginx监控