Zabbix 监控Nginx连接的状态

简介:

一、为nginx开启status状态

在server中添加如下代码,xxx.xxx.xxx.xxx填写你的监控服务器地址。

1
2
3
4
5
6
7
location  /nginx_status {  
       stub_status on;  
       access_log off;  
       allow 127.0.0.1;  
       allow xxx.xxx.xxx.xxx;  
       deny all;  
}


二、写监控脚本

大家可以根据要监控的主机地址及端口进行调节脚本。

# vim /usr/local/zabbix/scripts/nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/bash
HOST= "10.0.0.10"
PORT= "80"
function  active {
   /usr/bin/curl  "http://$HOST:$PORT/nginx_status/"  2> /dev/null grep  'Active'  awk  '{print $NF}'
   }
function  reading {
   /usr/bin/curl  "http://$HOST:$PORT/nginx_status/"  2> /dev/null grep  'Reading'  awk  '{print $2}'
        }
function  writing {
   /usr/bin/curl  "http://$HOST:$PORT/nginx_status/"  2> /dev/null grep  'Writing'  awk  '{print $4}'
        }
function  waiting {
   /usr/bin/curl  "http://$HOST:$PORT/nginx_status/"  2> /dev/null grep  'Waiting'  awk  '{print $6}'
        }
function  accepts {
   /usr/bin/curl  "http://$HOST:$PORT/nginx_status/"  2> /dev/null awk  NR==3 |  awk  '{print $1}'
        }
function  handled {
   /usr/bin/curl  "http://$HOST:$PORT/nginx_status/"  2> /dev/null awk  NR==3 |  awk  '{print $2}'
        }
function  requests {
   /usr/bin/curl  "http://$HOST:$PORT/nginx_status/"  2> /dev/null awk  NR==3 |  awk  '{print $3}'
        }
# Run the requested function
$1

三、配置Key

# vim /etc/zabbix/zabbix_agentd.conf

1
2
# monitor nginx status
UserParameter=nginx[*], /usr/local/zabbix/scripts/nginx  $1

四、导入模版

模版在我的附件中,导入即可直接使用。

五、结果查看

wKiom1YoT1CRa0PlAAXIRcVspfI739.jpg


wKioL1YoT3zQOwG9AAXmo-fhpQA234.jpg


wKiom1YoT1Ggm6BAAAWHk16zOUU873.jpg


六、状态参数讲解

1
2
3
4
Active connections: 11921
server accepts handled requests
  11989 11989 11991
Reading: 0 Writing: 7 Waiting: 42

active connections – 活跃的连接数量
server accepts handled requests — 总共处理了11989个连接 , 成功创建11989次握手, 总共处理了11991个请求
reading — 读取客户端的连接数.
writing — 响应数据到客户端的数量
waiting — 开启 keep-alive 的情况下,这个值等于 active – (reading+writing), 意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接.

    所以,在访问效率高,请求很快被处理完毕的情况下,Waiting数比较多是正常的.如果reading +writing数较多,则说明并发访问量。


     本文转自 wzlinux 51CTO博客,原文链接:http://blog.51cto.com/wzlinux/1704954,如需转载请自行联系原作者



相关文章
|
3月前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
4月前
|
数据采集 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
77 4
|
4月前
|
监控 关系型数据库 机器人
小白带你学习linux的监控平台zabbix
小白带你学习linux的监控平台zabbix
137 0
|
6月前
|
监控 关系型数据库 MySQL
企业实战(8)CentOS 6.8安装Zabbix-agent 5.0监控主机性能与Mysql数据库
企业实战(8)CentOS 6.8安装Zabbix-agent 5.0监控主机性能与Mysql数据库
|
1月前
|
数据采集 监控 数据库
请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
【2月更文挑战第25天】请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
25 2
|
6月前
|
监控
zabbix如何添加自定义监控项
zabbix如何添加自定义监控项
263 0
|
2月前
|
监控 Cloud Native 关系型数据库
使用 Grafana 统一监控展示 - 对接 Zabbix
使用 Grafana 统一监控展示 - 对接 Zabbix
|
4月前
|
监控 Docker 容器
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
244 0
|
4月前
|
监控 Java
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
90 0
|
19天前
|
监控 关系型数据库 应用服务中间件
zabbix自定义监控、钉钉、邮箱报警
zabbix自定义监控、钉钉、邮箱报警,实验准备,安装,添加监控对象,添加自定义监控项,监控mariadb,监控NGINX,钉钉报警设置,邮件报警
136 0

推荐镜像

更多