51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

如何使用监控宝监控php-fpm状态?

上次我们介绍如何开启php-fpm状态页了,这对于php-fpm的参数调整有很高的参考价值。我们可以使用监控宝的自定义监控来保存php-fpm的状态,来达到了解网站各时候php的请求情况。在开始之前,请确保已经开启php-fpm的status。
一、创建收集数据脚本
新建脚本/home/sh/monitor_fpm.sh,并添加到cronjob,每五分钟运行一次。脚本代码为:

  1. fpm_status=$(curl -s http://www.centos.bz/fpm_status)
  2. start_since_now=$(echo "$fpm_status" | awk -F':' '/start since/{gsub(/ /,"",$2);print $2}')
  3. listen_queue=$(echo "$fpm_status" | awk -F':' '/^listen queue:/{gsub(/ /,"",$2);print $2}')
  4. idle_processes=$(echo "$fpm_status" | awk -F':' '/idle processes/{gsub(/ /,"",$2);print $2}')
  5. active_processes=$(echo "$fpm_status" | awk -F':' '/^active processes:/{gsub(/ /,"",$2);print $2}')
  6. total_processes=$(echo "$fpm_status" | awk -F':' '/total processes/{gsub(/ /,"",$2);print $2}')
  7. accepted_conn_now=$(echo "$fpm_status" | awk -F':' '/accepted conn/{gsub(/ /,"",$2);print $2}')
  8. max_listen_queue=$(echo "$fpm_status" | awk -F':' '/max listen queue/{gsub(/ /,"",$2);print $2}')
  9. max_active_processes=$(echo "$fpm_status" | awk -F':' '/max active processes/{gsub(/ /,"",$2);print $2}')
  10. max_children_reached=$(echo "$fpm_status" | awk -F':' '/max children reached/{gsub(/ /,"",$2);print $2}')
  11. if [ -f "/tmp/accepted_conn78" ];then
  12. accepted_conn_pre=$(cat /tmp/accepted_conn78)
  13. ((accepted_conn_inc=$accepted_conn_now - $accepted_conn_pre))
  14. [[ $accepted_conn_inc -lt 0 ]] && accepted_conn_inc=0
  15. else
  16. accepted_conn_inc=0
  17. fi
  18. echo $accepted_conn_now > /tmp/accepted_conn78
  19. if [ -f "/tmp/start_since78" ];then
  20. start_since_pre=$(cat /tmp/start_since78)
  21. ((start_since_inc=$start_since_now - $start_since_pre))
  22. [[ $start_since_inc -lt 0 ]] && per_request=0 || ((per_request=$accepted_conn_inc/$start_since_inc))
  23. else
  24. per_request=0
  25. fi
  26. echo $start_since_now > /tmp/start_since78
  27. echo "<pre>
  28. accepted_conn:$accepted_conn_inc
  29. listen_queue:$listen_queue
  30. idle_processes:$idle_processes
  31. active_processes:$active_processes
  32. total_processes:$total_processes
  33. per_request:$per_request
  34. max_listen_queue:$max_listen_queue
  35. max_active_processes:$max_active_processes
  36. max_children_reached:$max_children_reached
  37. </pre>" > /home/www.centos.bz/web/php_status.html

二、到监控宝添加自定义监控
1、点击网站头部的创建监控项目,拉到底部,选择创建自定义监控,再点击创建自定义监控规则,
2、基本信息填写
如何使用监控宝监控php-fpm状态?_https://www.tiejiang.org_Linux安全运维_第1张
3、规则指标添加
如何使用监控宝监控php-fpm状态?_https://www.tiejiang.org_Linux安全运维_第2张
3、添加php请求图
如何使用监控宝监控php-fpm状态?_https://www.tiejiang.org_Linux安全运维_第3张
4、添加php进程图
如何使用监控宝监控php-fpm状态?_https://www.tiejiang.org_Linux安全运维_第4张
5、添加php最大值图
如何使用监控宝监控php-fpm状态?_https://www.tiejiang.org_Linux安全运维_第5张
6、点击完成,输入监控fpm的页面
如何使用监控宝监控php-fpm状态?_https://www.tiejiang.org_Linux安全运维_第6张
完成了以上步骤之后,过一段时间就可以看到php-fpm的状态统计信息了。
如图:
如何使用监控宝监控php-fpm状态?_https://www.tiejiang.org_Linux安全运维_第7张

赞(4)
未经允许不得转载:工具盒子 » 如何使用监控宝监控php-fpm状态?