zabbix监控nginx
nginx status详解
active connections – 活跃的连接数量
server accepts handled requests — 总共处理了11989个连接 , 成功创建11989次握手, 总共处理了11991个请求
reading — 读取客户端的连接数.
writing — 响应数据到客户端的数量
waiting — 开启 keep-alive 的情况下,这个值等于 active – (reading+writing), 意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接.
--------------------------------------------
首先在agent端的nginx.conf中添加下面内容
# vim /usr/local/nginx/conf/nginx.conf
server {
listen 80;
server_name localhost;
location /nginxstatus{
stub_status on;
access_log off;
allow 127.0.0.1;
allow 192.168.1.0/24; ----->zabbix server端的IP地址
deny all;
}
}
然后写监控nginx状态的脚本
# vim /usr/local/zabbix/scripts/nginx.status.sh
#!/bin/bash
function active {
curl "http://127.0.0.1/nginxstatus" 2>/dev/null|awk '/Active/ {print $3}'
}
function reading {
curl "http://127.0.0.1/nginxstatus" 2>/dev/null|awk '/Reading/ {print $2}'
}
function writing {
curl "http://127.0.0.1/nginxstatus" 2>/dev/null|awk '/Writing/ {print $4}'
}
function waiting {
curl "http://127.0.0.1/nginxstatus" 2>/dev/null|awk '/Waiting/ {print $6}'
}
function accepts {
curl "http://127.0.0.1/nginxstatus" 2>/dev/null|awk NR==3|awk '{print $1}'
}
function handled {
curl "http://127.0.0.1/nginxstatus" 2>/dev/null|awk NR==3|awk '{print $2}'
}
function requests {
curl "http://127.0.0.1/nginxstatus" 2>/dev/null|awk NR==3|awk '{print $3}'
}
case "$1" in
active)
active
;;
reading)
reading
;;
writing)
writing
;;
waiting)
waiting
;;
accepts)
accepts
;;
handled)
handled
;;
requests)
requests
;;
*)
echo "Usage: $0 {nginx_site_dicovery}"
echo "Usage: $0 {active [host]|reading [host]|writing [host]|waiting [host]|accepts [host]|handled [host]|requests [host]}"
esac
修改权限
# chmod 755 /usr/local/zabbix/scripts/mysql.status.sh
测试脚本
# /usr/local/zabbix/scripts/nginx.status.sh active
1
修改zabbix agent的配置文件
# vim /usr/local/zabbix/etc/zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/ --->配置文件key的路径
UnsafeUserParameters=1 ---》允许特殊字符
增加nginx key的配置文件
# vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/nginx.status.conf
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.active,/usr/local/zabbix/scripts/nginx.status.sh active
UserParameter=nginx.reading,/usr/local/zabbix/scripts/nginx.status.sh reading
UserParameter=nginx.writing,/usr/local/zabbix/scripts/nginx.status.sh writing
UserParameter=nginx.waiting,/usr/local/zabbix/scripts/nginx.status.sh waiting
然后agent端测试
# /usr/local/zabbix/sbin/zabbix_agentd -t nginx.active
nginx.active [t|1]
重启agent服务
service zabbix_agentd restart
在zabbix添加nginx模板key查看即可
zabbix监控nginx的更多相关文章
- Zabbix 监控 Nginx(四)
简介: 如何使用 Zabbix 监控 Nginx 状态 ? 1.获取 Nginx 状态( HTTP Stub Status ) [root@localhost ~]# /apps/product/ng ...
- Zabbix 监控 Nginx 状态
简介: 如何使用 Zabbix 监控 Nginx 状态 ? 1.获取 Nginx 状态( HTTP Stub Status ) shell > /usr/local/nginx/sbin/ngi ...
- 使用zabbix监控nginx
在zabbix agentd客户端上,查看nginx是否加载了--with-http_stub_status_module.因为zabbix监控nginx是根据 nginx的Stub Status模块 ...
- zabbix监控nginx连接状态(转)
zabbix监控nginx zabbix可以监控nginx的状态,关于一个服务的状态可以查看服务本身的状态(版本号.是否开启),还应该关注服务能力(例如以nginx的负载效果:连接数.请求数和句柄数) ...
- 使用zabbix监控nginx的活动连接数
使用zabbix监控nginx的活动连接数 1.方法简述 zabbix可以自定义很多监控,只要是能通过命令获取到相关的值,就可以在zabbix的监控中增加该对象进行监控,在zabbix中,该对象称之为 ...
- Zabbix监控nginx性能的另外一种方式
Zabbix监控nginx性能的另外一种方式 nginx和php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有用,为了后续的zabbix监控,我们需要先启用nginx ...
- Zabbix应用四:Zabbix监控Nginx
利用Zabbix监控Nginx 一.准备nginx监控模版: 1.1.下载nginx监控模版: 点此下载 1.2.导入模版: Zabbix管理页面,选择'配置'->'模版'->'导入': ...
- zabbix监控nginx的性能
1.nginx配置 需要使用zabbix监控nginx,首先nginx需要配置ngx_status,在nginx的配置文件中加入红框中的配置,然后重启nginx如下图所示: location /ngx ...
- zabbix监控nginx进程
确认nginx有没有安装模块 然后在主站点下添加(二级站点) location /NginxStatus { stub_status on; access_log off; allow 127.0.0 ...
- 【zabbix告警监控】配置zabbix监控nginx服务
zabbix监控nginx,nginx需要添加--with-http_stub_status模块 使用zabbix监控nginx,首先nginx需要配置开启ngx_status.但是我这边nginx安 ...
随机推荐
- SQLAlchemy 对象缓存和刷新
SQLAlchemy 对象缓存和刷新 SQLAlchemy 带有对象缓存机制,在重复查询相同的对象时,直接先查询本地的缓存,而不需要从数据库加载数据. 在每个 model 对象的内部,SQLAlche ...
- thinkphp 对数据库的操作
查看ThinkPHP完全开发手册3.1 首先编辑配置文件 thinkphp这个数据库就不乱改了 昨天新建了一个 confluence(utf8)数据库 所以就用它学习一下吧,因为就只建立了一个数据库, ...
- int和long int的区别
16位系统:long是4字节,int是2字节32位系统:long是4字节,int是4字节64位系统:long是8字节,int是4字节 long long 占8个字节
- freemarker中修改和添加功能中包含checkbox复选框默认选中需求的解决方式
今天做的公司ERP系统上线第一天内部使用的,各种BUG铺天盖地,[虽然只是技术总监一个人在测试……],其中有一个就是其中部门管理页面中的修改和添加功能 一个人做一套ERP总是有点疏漏的,虽然里面的东西 ...
- 使单元格td内部都是超链接
楼主是想要鼠标指针移到单元格时就显示手形,而且点击单元格的任何地方都可以打开链接,来替换原来要鼠标指针移到链接文字时才显示手形,和必须点中链接文字才能打开链接? 试一下: <table> ...
- Java Map操作
Map:键必须是唯一 同步方法:Map m = Collections.synchronizedMap(new TreeMap(...)); Hashtable:基于散列表的实现 允许空键空值 线程安 ...
- hadoop NameNode HA 和ResouceManager HA
官网配置地址: HDFS HA : http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HDFSHighAvai ...
- iOS网络开发之AFNetworking
概述 AFNetworking是一个非常受欢迎的轻量级的iOS.Mac OS X网络通信类库.它建立在NSURLConnection.NSOperation以及其技术的基础上,有着精心设计的模块结构和 ...
- UIControl事件
1.UIControlEventTouchDown 单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候. 2.UIControlEventTouchDownRepeat 多点触摸按下事件,点触计 ...
- How to use JDBC-Authentication of Spring Boot/Spring Security with Flyway
java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.conte ...