针对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





![[原创]zabbix 监控面板由英文版到中文版汉化方法_西数超哥博客](https://www.ysidc.top/wp-content/uploads/2018/12/02bab8f6d33cced3f539058fb8ad03d5-480x300.jpg)
![[原创]zabbix 如何添加主机监控(11)_西数超哥博客](https://www.ysidc.top/wp-content/uploads/2018/12/18cbefed97bf340739e92e969c3a6edd-480x300.jpg)




