Zabbix监控Nginx和fpm(网站并发数)自定义key

监控nginx,主要讲解监控并发数:
1: nginx编译参数:
--prefix=/usr/local/nginx --with-http_stub_status_module

zabbix编译参数的查看:
/usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.8.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module

2: nginx配置新增

location /status {
allow 127.0.0.1;
deny all;
stub_status on;
access_log off;
}
重启nginx:
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

3: 测试下看看能不能获取nginx状态
curl 127.0.0.1/status

4: 写脚本获取nginx的状态
监控脚本(/usr/local/zabbix/check_nginx.sh):

#!/bin/sh
#20170603 nginx status
#Active connections: 1
#server accepts handled requests
#1035268066 1035268066 1035136592
#Reading: 0 Writing: 1 Waiting: 0
while getopts "o:" opt
do
case $opt in
o ) option=$OPTARG;;
? )
echo 'parameter is wrong!'
exit 1;;
esac
done
if [ ! "${option}" ];then
echo "parameter is null"
exit 1
fi

if [[ ${option} == "active" ]];then
curl -s 127.0.0.1/status |grep '^Active connections' |awk '{print $NF}'
elif [[ ${option} == "accepts" ]];then
curl -s 127.0.0.1/status |awk 'NR==3'|awk '{print $1}'
fi

5: zabbix配置(/usr/local/zabbix/etc/zabbix_agentd.conf.d/nginx.conf):
UserParameter=nginx.status[*],sh /usr/local/zabbix/check_nginx.sh -o $1
重启zabbix agentd(pkill zabbix_agentd; sleep 3; /usr/local/zabbix/sbin/zabbix_agentd )

6: zabbix网页配置:
nginx.status[accepts] ×××(每秒差值)

监控fpm,主要讲解监控动态并发数:
1: /usr/local/php/etc/php-fpm.conf fpm配置新增:
pm.status_path = /php_fpm_status
fpm需要重启。

2: nginx配置新增:

location /php_fpm_status
{
allow 127.0.0.1;
deny all;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
nginx需要reload

3: 测试看看能不能获取到fpm的状态
curl 127.0.0.1/php_fpm_status
pool: www
process manager: static
start time: 02/Jun/2017:17:45:05 +0800
start since: 58677
accepted conn: 10753843
listen queue: 0
max listen queue: 0
listen queue len: 0
idle processes: 249
active processes: 1
total processes: 250
max active processes: 251
max children reached: 0
slow requests: 426

4: 写脚本获取fpm的状态
监控脚本(/usr/local/zabbix/check_fpm.sh):

#!/bin/sh
#20170603 fpm status
#curl 127.0.0.1/php_fpm_status
#pool: www
#process manager: static
#start time: 02/Jun/2017:17:45:05 +0800
#start since: 59022
#accepted conn: 10768453
#listen queue: 0
#max listen queue: 0
#listen queue len: 0
#idle processes: 249
#active processes: 1
#total processes: 250
#max active processes: 251
#max children reached: 0
#slow requests: 426
while getopts "o:" opt
do
case $opt in
o ) option=$OPTARG;;
? )
echo 'parameter is wrong!'
exit 1;;
esac
done
if [ ! "${option}" ];then
echo "parameter is null"
exit 1
fi

if [[ ${option} == "conn" ]];then
curl -s 127.0.0.1/php_fpm_status |grep '^accepted conn'|awk '{print $NF}'
elif [[ ${option} == "idle" ]];then
curl -s 127.0.0.1/php_fpm_status |grep '^idle processes'|awk '{print $NF}'
elif [[ ${option} == "active" ]];then
curl -s 127.0.0.1/php_fpm_status |grep '^active processes'|awk '{print $NF}'
fi

5: zabbix配置(vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/fpm.conf):

UserParameter=fpm.status[*],sh /usr/local/zabbix/check_fpm.sh -o $1
重启zabbix agent。pkill zabbix_agentd; sleep 3; /usr/local/zabbix/sbin/zabbix_agentd

6: zabbix网页配置:
fpm.status[conn]

更多Zabbix相关教程集合: 

Ubuntu 16.04服务器上安装Zabbix 3.2  https://www.linuxidc.com/Linux/2017-07/145519.htm
CentOS 7 LNMP环境搭建Zabbix3.0  https://www.linuxidc.com/Linux/2017-02/140134.htm
Ubuntu 16.04安装部署监控系统Zabbix2.4  https://www.linuxidc.com/Linux/2017-03/141436.htm
Zabbix监控安装部署及警报配置  https://www.linuxidc.com/Linux/2017-03/141611.htm
Zabbix触发器表达式详解 https://www.linuxidc.com/Linux/2017-03/141921.htm
Ubuntu 16.04下安装部署Zabbix3.0  https://www.linuxidc.com/Linux/2017-02/140395.htm
CentOS 7 下 Zabbix 3.0安装详解 https://www.linuxidc.com/Linux/2017-03/141716.htm
Zabbix 3.2.6 通过Orabbix监控Oracle数据库  https://www.linuxidc.com/Linux/2017-10/147224.htm
Zabbix3.4添加Web监测功能 https://www.linuxidc.com/Linux/2018-06/152769.htm
Zabbix告警发送邮件时附带性能图 https://www.linuxidc.com/Linux/2018-05/152194.htm
Zabbix3.0编译升级过程记录 https://www.linuxidc.com/Linux/2018-05/152193.htm
Debian 9.2安装Zabbix 3.4.2 https://www.linuxidc.com/Linux/2018-03/151338.htm

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/dccca0dbbd62cac408056a941efcac30.html