1 启用php-fpm 状态功能
在php-fpm配置文件里添加 这个功能
vi /usr/local/php/etc/php-fpm.conf
pm.status_path = /status
2. nginx配置
在默认主机里面加上location或者你希望能访问到的主机里面。这里我用的虚拟主机配置
在vhosts这个目录下,建立一个虚拟配置文件 123.conf加入这些
server {
listen *:80 default_server;
server_name _;
location ~ ^/(status|ping)$
{
include fastcgi_params;
fastcgi_pass unix:/tmp/php-fcgi.sock;
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
}
}
注意:/tmp/php-fcgi.sock; 这里填写的内容一定要和你的php-fpm.conf配置文件里的一直,否则会造成502错误
3. 重启nginx/php-fpm
请依照你的环境重启你的nginx和php-fpm
4. 打开status页面 如下内容
[root@web9 vhosts]# curl http://127.0.0.1/status
pool: www
process manager: dynamic
start time: 04/Mar/2016:01:33:26 +0800
start since: 1415
accepted conn: 120
listen queue: 0
max listen queue: 0
listen queue len: 0
idle processes: 19
active processes: 1
total processes: 20
max active processes: 1
max children reached: 0
slow requests: 0
5 编辑客户端里的agentd.conf的配置文件
vi /etc/zabbix/zabbix_agentd.conf (客户端用yum安装的 )
UserParameter=php-fpm.status[*],/usr/bin/curl -s "http://127.0.0.1/status?xml" | grep "<$1>" | awk -F'>|<' '{ print $$3}'
6重启zabbix客户端
7服务端导入php-fpm模板 (如果用2.0的版本会导入失败,我这里用的是2.4)
8确认出图