西数超哥博客
运维经验教程分享

通过zabbix 创建自定义模板监控phpfpm运行状态

针对php运行的网站,还是有必要针对php做一个简单的监控,以做到一个简单的系统资源占用 了解以及异常报警。
由于自己的21运维博客是php运行的,于是花了几分钟做了一个很小的php监控模板并简单写了一个shell脚本做采集监控,这里简单说明下这个自定义模板的功能:
1,监控php-fpm的端口监听,即php-fpm是否正常工作。设置触发器,挂掉就报警。
2,监控php-fpm的cpu资源占用率
3,监控php-fpm的内存资源占用率
4,监控php-fpm的物理内存占用总量
5,监控php-fpm的进程数量
其他需要监控的php参数 比如日志、报错、phpinfo里边的参数等等,以后可以自己添加,这里不做设置。
1,下载模板导入zabbix控制台,并将需要的主机添加这个模板,服务器重装过,这里更新成了zabbix 3.4。
下载地址:http://download.21yunwei.com/zabbix/php-fpm/template_zbx_phpfpm.tar.gz
2,设置采集shell脚本,这里我还是放到 了/home/21yunwei/phpfpm_zbx.sh中,path后续用于设置agent配置文件,脚本内容如下:

#!/bin/bash
#monitor php-fpm by zabbix
#author:21yunwei

case $1  in
"status") 
	netstat  -tnlp  | grep   php-fpm >/dev/null   2>&1 ;status=$?
	echo $status
;;
"num")
	num=` ps aux | grep  'bphp-fpmb' |grep   -Ev "master|root" |wc -l`
	echo $num
;;
"cpurate")
	cpurate=`ps  aux | grep  'bphp-fpmb' |grep   -Ev "master|root"|awk  '{cpu+=$3}END{print cpu}'` 
	echo $cpurate
;;
"rssmem")
	rssmem=`ps  aux | grep  'bphp-fpmb' |grep   -Ev "master|root" |awk  '{rss+=$6}END{print int(rss/1024)}'`
	echo $rssmem	
;;
"memrate")
        memrate=`ps  aux | grep  'bphp-fpmb' |grep   -Ev "master|root"|awk  '{mem+=$4}END{print mem}'`
        echo $memrate
;;
*)
	echo "argu error"
;;
esac

chmod a+x /home/21yunwei/phpfpm_zbx.sh 添加可执行权限,否则因为权限不足监控项不可用,采集不到数据。
3,修改zabbix_agentd.conf文件:

#php-fpm status
UserParameter=php-fpm.status[*],/home/yunwei/phpfpm_zbx.sh  $1

重启agent客户端,查看监控结果,这里以模板里边的php当前运行状态图形为展示:

转载请注明:西数超哥博客www.ysidc.top» 通过zabbix 创建自定义模板监控phpfpm运行状态

https://www.ysidc.top 西数超哥博客,数据库,西数超哥,虚拟主机,域名注册,域名,云服务器,云主机,云建站,ysidc.top

赞(0)
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除。本站原创内容未经允许不得转载:西数超哥博客 » 通过zabbix 创建自定义模板监控phpfpm运行状态