如何在智能告警平台CA触发测试告警
631
2023-04-03
Zabbix 5.2由浅入深之监控php-fpm
关于php-fpm的内容在互联网上有很多的解释和描述,这里不再赘述,想要了解其原理和使用场景,可以自行搜索,而zabbix本身也是应用了php-fpm,在5.2版本之前需要通过其他手段去监控,5.2版本是推出了官方模板,方便大家使用。
官方自带模板
正文
修改该配置文件
如果需要监控该进程需要开启两个配置,修改完成后重启服务
1.pm.status_path = /status,这个配置在240行(环境不同可能有差异),需要去掉注释(前面的;)
2.ping.path = /ping,这个配置在252行,需要去除掉注释
pm.status_path = /status
ping.path = /ping
修改完成后
####检查配置是否OK#### php-fpm -t ####重新加载配置#### systemctl reload php-fpm
修改Nginx配置
由于此篇监控为Zabbix前端,所以需要在zabbix的nginx配置文件操作,这里需要注意的是fastcgi_pass,由于zabbix官方采用的server和普通不一致(如下第一张图),需要改成图中的路径,否则会出现502
server路径
添加路由
效果图
前端操作
添加模板
宏这里需要注意的是{$PHP_FPM.HOST},{$PHP_FPM.PING.PAGE},{$PHP_FPM.PORT},{$PHP_FPM.STATUS.PAGE}这几个,如果非本地,HOST不能填localhost,而是对应IP,其他也一样,根据自己的实际情况来看待。
宏详情
但实际用上会有一些问题,php-fpm出现down的情况
出现down
原因其实在curl该页面的时候,得到的数据如下图。
如果采用官方模板里的正则表达式,就无法匹配
官方正则表达式
工具测试
需要改成|\n即可
改成这样子
测试正常
数据正常
附录
process manager – 进程管理方式:static, dynamic or ondemand. dynamicstart time – 启动日期,如果reload了php-fpm,时间会更新start since – 运行时长accepted conn – 当前池子接受的请求数listen queue – 请求等待队列,如果这个值不为0,那么要增加FPM的进程数量max listen queue – 请求等待队列最高的数量listen queue len – socket等待队列长度idle processes – 空闲进程数量active processes – 活跃进程数量total processes – 总进程数量max active processes – 最大的活跃进程数量(FPM启动开始算)max children reached - 进程最大数量限制的次数,如果这个数量不为0,那说明你的最大进程数量太小了,请改大一点。slow requests – 启用了php-fpm slow-log,缓慢请求的数量
总结
整体监控下来主要是官方模板对环境的适配有一定的问题,不过找到问题的根因,就很好解决了。
发表评论
暂时没有评论,来抢沙发吧~