zabbix 监控 php-fpm

zabbix监控php-fpm主要是通过nginx配置php-fpm的状态输出页面,在正则取值.要nginx能输出php-fpm的状态首先要先修改php-fpm的配置,没有开启nginx是没有法输出php-fpm status。

1、修改文件php-fpm

vim /application/php-5.5.32/etc/php-fpm.conf文件

2、修改nginx配置文件

vim vim /application/nginx/conf/extra/www.conf,在server 区块下添加一行内容

重启nginx

3、curl 127.0.0.1/php_status 我们可以看到php-fpm 的状态信息

| 字段                     | 含义                                                   |
| ------------------------ | ------------------------------------------------------------ |
| **pool**                 | **php-fpm pool的名称,大多数情况下为www**                    |
| **process manager**      | **进程管理方式,现今大多都为dynamic,不要使用static**        |
| **start time**           | **php-fpm上次启动的时间**                                    |
| **start since**          | **php-fpm已运行了多少秒**                                    |
| **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** | **当pm试图启动更多的children进程时,却达到了进程数的限制,达到一次记录一次,如果不为0,需要增加php-fpm pool进程的最大数** |
| **slow requests**        | **当启用了php-fpm slow-log功能时,如果出现php-fpm慢请求这个计数器会增加,一般不当的Mysql查询会触发这个值** |

4、编写监控脚本和监控文件

vim /server/scripts/php_fpm-status.sh
​
#!/bin/sh
#php-fpm status
case $1 in
ping) #检测php-fpm进程是否存在
/sbin/pidof php-fpm | wc -l
;;
start_since) #提取status中的start since数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==4{print $3}'
;;
conn) #提取status中的accepted conn数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==5{print $3}'
;;
listen_queue) #提取status中的listen queue数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==6{print $3}'
;;
max_listen_queue) #提取status中的max listen queue数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==7{print $4}'
;;
listen_queue_len) #提取status中的listen queue len
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==8{print $4}'
;;
idle_processes) #提取status中的idle processes数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==9{print $3}'
;;
active_processes) #提取status中的active processes数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==10{print $3}'
;;
total_processes) #提取status中的total processess数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==11{print $3}'
;;
max_active_processes) #提取status中的max active processes数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==12{print $4}'
;;
max_children_reached) #提取status中的max children reached数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==13{print $4}'
;;
slow_requests) #提取status中的slow requests数值
/usr/bin/curl 127.0.0.1/php_status 2>/dev/null | awk 'NR==14{print $3}'
;;
*)
echo "Usage: $0 {conn|listen_queue|max_listen_queue|listen_queue_len|idle_processes|active_processess|total_processes|max_active_processes|max_children_reached|slow_requests}"
exit 1
;;
esac
​
vim /etc/zabbix/zabbix_agentd.d/test.conf
​
UserParameter=php_status[*],/bin/sh /server/scripts/php_fpm-status.sh $1

5、重启服务

在服务端测试

6、在web端进行配置

这时候我们再来看最新监控数据,就可以看到我们监控的内容了

配置到这,我们PHP状态监控基本完成,根据需求配置相应的触发器,即可。

你要的模板

链接: https://pan.baidu.com/s/1z0IU82uGId-LH1EryyuwCw 提取码: q6n9

net start zabbix agent 服务没有相应控制功能_zabbix-基础系列(十七)--实战之监控 php-fpm...相关推荐

  1. net start zabbix agent 服务没有相应控制功能_一步到位,服务器监控就是这么简单...

    对于运维的日常工作来说,服务器监控是必须且最基础的一项内容.在企业基础设施运维过程中,管理员必须能够掌握所有服务器的运行状况,以便及时发现问题,尽可能减少故障的发生.通常我们会借助一些监控的软件来获取 ...

  2. zabbix agent 的两种安装方式

    (一)zabbix-agent介绍和工作原理 1 介绍 zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.     zabbix能监视各 ...

  3. Zabbix Agent 主被动模式 坑与技巧

    Zabbix Agent的工作模式可以分为主动模式(Active)和被动模式(Passive),主动模式和被动模式在同一个Zabbix Agent上,是可以共存的,比如让一部分被动模式,另一部分处于主 ...

  4. zabbix server、zabbix agent、zabbix proxy 配置文件详解

    zabbix配置文件种类: ? 1 2 3 zabbix_server配置文件zabbix_server.conf  zabbix_proxy配置文件zabbix_proxy.conf  zabbix ...

  5. Windows系统一键安装zabbix agent

    下载附件里的zabbix_agents_auto_installer.win.rar,解压后修改AutoInstall.bat里的zabbix_server的IP,以管理员身份运行AutoInstal ...

  6. Windows下安装Zabbix agent

    1.网上下载新版的Windows Agent http://www.zabbix.com/downloads/2.2.1/zabbix_agents_2.2.1.win.zip 2. 解压后找到bin ...

  7. zabbix专题:第三章 Zabbix Agent客户端安装详解

    第三章 Zabbix Agent For  本节目录大纲 程序环境 zabbix agent安装配置 (1)安装 (2)配置 (3)启动服务 在zabbix服务器上面添加zabbix-agent服务器 ...

  8. zabbix agent 类型所有key

    原文转自:http://www.ttlsa.com/zabbix/zabbix-agent-types-and-all-keys/ zabbix服务器端通过与zabbix agent通信来获取客户端服 ...

  9. zabbix agent监控主机配置

    zabbix agent监控主机配置 环境说明 系统版本    CentOS 7.2 x86_64 软件版本    zabbix 3.0.18 1.监控zabbix服务器端 1.1 安装zabbix- ...

最新文章

  1. Python使用matplotlib可视化绘图时你可用的颜色有哪些?把色彩可视化出来自己选好了
  2. iOS标准库中常用数据结构和算法之内存池
  3. Oracle数据库基础知识点汇总
  4. Java中的工厂方法模式
  5. 真正的模块化Web应用程序:为什么没有开发标准?
  6. 荷兰牛栏 荷兰售价_荷兰研究小组授予的数据共享项目
  7. html边框塌陷怎么,你不知道的CSS(边框塌陷)?
  8. 如何使用JavaScript获取客户端的IP地址?
  9. 提前浏览win11浏览器什么样
  10. 【字符串】面试题之以逗号分割字符串,形成二维数组
  11. 凌云一周看点 | 什么是云原生数据库;因云而生的云原生网络;大型团队如何从0到1自建SRE体系;空间数据模型之从CAD到BIM...
  12. 学乐高和机器人编程区别
  13. C/C++语言 结构体数组初始化 结构体数组元素全部置0 memset函数将结构体数组初始化
  14. SpringCloud微服务之学生管理
  15. VerilogHDL正弦信号发生器
  16. SSM_JSON格式增删改查
  17. 从0开始搭建自动化测试框架之PO分层架构
  18. 动态修改svg图片颜色
  19. CRNN:文本序列识别
  20. 音乐分享网站(JavaSSH)

热门文章

  1. 洗衣机,数据挖掘的物理模型
  2. 翻币问题pascal程序
  3. esd管 低cj要求_TVS管与ESD保护二极管的区别,联系以及应用
  4. 你需要来自trustedinstaller的权限才能删除_windows10 系统怎么修改文件权限
  5. 20201205 旋转矩阵导数的推导过程
  6. MYSQL多表查询与事务
  7. 《OKR源于英特尔和谷歌的目标管理利器》读书笔记
  8. css【清除浮动】常用方法*********** ******* *****
  9. POJ 2084 Catalan数+高精度
  10. 【转载】c语言中的可变参数编程