码迷,mamicode.com
首页 > Web开发 > 详细

zabbix-php-fpm

时间:2020-01-02 20:19:31      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:use   ogr   lis   usr   需要   活动   监控   个人博客   cep   

我叫张贺,贪财好色。一名合格的LINUX运维工程师,专注于LINUX的学习和研究,曾负责某中型企业的网站运维工作,爱好佛学和跑步。
个人博客:传送阵
笔者微信:zhanghe15069028807,非诚勿扰。

zabbix-php-fpm

我们监控php这个应用,同时的首先要要把他的状态页面显示出来,然后我们才能去取当中的值做成键值。

第一步:安装并启动php-fpm

[root@nginx ~]# yum -y install php-fpm php-cli
[root@nginx ~]# systemctl start php-fpm
[root@nginx ~]# systemctl enable php-fpm
/usr/lib/systemd/system/php-fpm.service.
[root@nginx ~]# systemctl status php-fpm  #默认侦听在9000端口
[root@nginx ~]# php -v
PHP 5.4.16 (cli) (built: Nov  1 2019 16:04:20) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

第二步:启用php的状态显示页面

[root@nginx ~]# rpm -qc php-fpm
/etc/logrotate.d/php-fpm
/etc/php-fpm.conf
/etc/php-fpm.d/www.conf
/etc/sysconfig/php-fpm
[root@nginx ~]# vim /etc/php-fpm.d/www.conf 
121 pm.status_path = /php_status
[root@nginx ~]# systemctl restart php-fpm

第三步:在nginx当中开启php的访问

[root@nginx ~]# vim /etc/nginx/nginx.conf
location ~ ^/(php_status|ping)$ {
                root /usr/share/nginx/html;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME documentrootfastcgi_script_name;
                include fastcgi_params;
                }
[root@nginx ~]# systemctl restart nginx
[root@nginx ~]# curl http://127.0.0.1/php_status
pool:                 www
process manager:      dynamic
start time:           02/Jan/2020:19:39:24 +0800
start since:          126
accepted conn:        16
listen queue:         0
max listen queue:     0
listen queue len:     128
idle processes:       4
active processes:     1
total processes:      5
max active processes: 1
max children reached: 0
slow requests:        0

pool php-fpm pool(资源池)的名称,大多数情况下为www

process manager 进程管理方式,现今大多都为dynamic,不要使用static

start time 上次启动的时间

start since 已运行了多少秒

accepted conn pool 接收到的请求数

listen queue 处于等待状态中的连接数,如果不为0,需要增加php-fpm进程数

max listen queue 从php-fpm启动到现在处于等待连接的最大数量

listen queue len 处于等待连接队列的套接字大小

idle processes 处于空闲状态的进程数

active processes 处于活动状态的进程数

total processess 进程总数

max active process 从php-fpm启动到现在最多有几个进程处于活动状态

max children reached 当php-fpm试图启动更多的children进程时,却达到了进程数的限制,达到一次记录一次,如果不为0,需要增加php-fpm pool进程的最大数

slow requests 当启用了php-fpm slow-log功能时,如果出现php-fpm慢请求这个计数器会增加,一般不当的Mysql查询会触发这个值

第四步:去github上下载一个别人早就定义好的模板

[root@nginx ~]#git clone https://github.com/maxvgi/zabbix-templates.git
[root@nginx ~]# ls
zabbix-templates
[root@nginx ~]# cd zabbix-templates/
[root@nginx zabbix-templates]# ls
aerospike      iostat         mysql    nginx             php-fpm                 README.md  ssl-checks
check_backups  linux-sockets  netstat  nginx-background  php-fpm-multiple-pools  redis
[root@nginx zabbix-templates]# cd php-fpm
[root@nginx php-fpm]# ls   #配置文件、脚本、模板
fpm.conf  fpm.sh  fpm.xml

第五步:将fpm.xml导入,并修改宏

技术图片

第六步:将配置文件移动到/etc/zabbix/zabbix_agentd.d

[root@nginx zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d
[root@nginx zabbix_agentd.d]# cat fpm.conf 
UserParameter=php-fpm[*],/etc/zabbix/scripts/fpm.sh "$1" "$2"

第七步:根据配置文件当中的指示,把脚本放置到相应的目录

[root@nginx scripts]# pwd
/etc/zabbix/scripts

//别忘记加执行权限
[root@nginx scripts]# ls
fpm.sh

第八步:重启zabbix-agent

[root@nginx ~]# systemctl restart zabbix-agent

zabbix-php-fpm

标签:use   ogr   lis   usr   需要   活动   监控   个人博客   cep   

原文地址:https://www.cnblogs.com/yizhangheka/p/12141753.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!