转自链接:https://my.oschina.net/766/blog/265451

摘要: php-fpm和nginx一样内建了一个状态页,对于想了解php-fpm的状态以及监控php-fpm非常有帮助。为了后续的zabbix监控,我们需要先了解php-fpm状态页是怎么回事。 1. 启用php-fpm状态功能 # cat /usr/local/php-5.5.10/etc/php-fpm.conf | grep status_path pm.status_path = /status 默认情况下为/status,当然也可以改成其他的,例如/ttlsa_status等等。

php-fpm和nginx一样内建了一个状态页,对于想了解php-fpm的状态以及监控php-fpm非常有帮助。为了后续的zabbix监控,我们需要先了解php-fpm状态页是怎么回事。

1. 启用php-fpm状态功能

# cat/usr/local/php-5.5.10/etc/php-fpm.conf | grep status_path pm.status_path = /status

默认情况下为/status,当然也可以改成其他的,例如/ttlsa_status等等。

2. nginx配置

在默认主机里面加上location或者你希望能访问到的主机里面。

server{listen*:80default_server;server_name_;location~ ^/(status|ping)${includefastcgi_params;fastcgi_pass127.0.0.1:9000;fastcgi_paramSCRIPT_FILENAME$fastcgi_script_name;     } }

3. 重启nginx/php-fpm

请依照你的环境重启你的nginx和php-fpm

# service nginx restart# service php-fpm restart

4. 打开status页面

# curl http://127.0.0.1/status

pool:www process manager:

dynamic start time:14/May/2014:22:40:15+0800start since:58508accepted conn:33listenqueue:0max listenqueue:8listenqueuelen:0idle processes:2active processes:1total processes:3max active processes:5max children reached:0slow requests:2091

5. php-fpm status详解

pool – fpm池子名称,大多数为www

process manager – 进程管理方式,值:static, dynamic or ondemand. dynamic

start 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,缓慢请求的数量

6. php-fpm其他参数

php-fpm状态页比较个性化的一个地方是它可以带参数,可以带参数json、xml、html并且前面三个参数可以分别和full做一个组合。

6.1 json

# curl http://127.0.0.1/status?json {"pool":"www","process manager":"dynamic","start time":1400078415,"start since":59624,"accepted conn":27,"listen queue":0,"max listen queue":8,"listen queue len":0,"idle processes":2,"active processes":1,"total processes":3,"max active processes":5,"max children reached":0,"slow requests":2145}

6.2 xml

# curl http://127.0.0.1/status?xmlwwwdynamic14000784155964036080213502145

6.3 html

# curl http://127.0.0.1/status?htmlPHP-FPM Status Pagepoolwwwprocess managerdynamicstart time14/May/2014:22:40:15 +0800start since59662accepted conn8listen queue0max listen queue8listen queue len0idle processes2active processes1total processes3max active processes5max children reached0slow requests2147

6.4 full

# curl http://127.0.0.1/status?fullpool:                 www process manager:      dynamic starttime:14/May/2014:22:40:15+0800start since:59695accepted conn:1listenqueue:0maxlistenqueue:8listenqueue len:0idle processes:2active processes:1total processes:3max active processes:5max children reached:0slow requests:2148************************ pid:29050state:                Idle starttime:15/May/2014:15:09:32+0800start since:338requests:62request duration:1025585request method:       GET request URI:/index.php

content length:       0

user:                 -

script:               /data/site/www.ttlsa.com/index.phplastrequest cpu:45.83lastrequest memory:24903680.....省略几个PID....

6.5 full详解

pid – 进程PID,可以单独kill这个进程. You can use this PID to kill a long running process.

state – 当前进程的状态 (Idle, Running, …)

start time – 进程启动的日期

start since – 当前进程运行时长

requests – 当前进程处理了多少个请求

request duration – 请求时长(微妙)

request method – 请求方法 (GET, POST, …)

request URI – 请求URI

content length – 请求内容长度 (仅用于 POST)

user – 用户 (PHP_AUTH_USER) (or ‘-’ 如果没设置)

script – PHP脚本 (or ‘-’ if not set)

last request cpu – 最后一个请求CPU使用率。

last request memorythe - 上一个请求使用的内存

7. 完成

php-fpm状态页非常使用,使用zabbix或者nagios监控可以考虑使用xml或者默认方式。用web的话,推荐使用html,表格会比较清晰。

php fpm 开启status,启用php-fpm状态详解相关推荐

  1. 查看oracle监听服务状态,(总结)Oracle监听服务lsnrctl参数及查询状态详解

    lsnrctl命令常用参数详解: lsnrctl start 启动指定的监听器 stop 关闭指定的监听器 status 显示监听器的状态.status命令显示监听器是不是活动的,日志与跟踪文件的位置 ...

  2. Oracle监听服务lsnrctl参数及查询状态详解

    lsnrctl命令常用参数详解: lsnrctl start 启动指定的监听器 stop 关闭指定的监听器 status 显示监听器的状态.status命令显示监听器是不是活动的,日志与跟踪文件的位置 ...

  3. jstack 线程状态详解

    jstack 线程状态详解 jatsck 用法 线程状态 一图以庇之 系统线程状态 (Native Thread Status) jatsck 用法 #jstack -h Usage:jstack [ ...

  4. 【DIRECTX状态详解】

    DIRECT3D状态详解 Microsoft® Direct3D®设备是一个状态机.应用程序设置光照.渲染和变换模块的状态,然后在渲染时传递数据给它们. 本节描述图形流水线用到的所有不同类型的状态. ...

  5. 【ceph】Ceph之PG状态详解--研读笔记

    原文:分布式存储Ceph之PG状态详解 - 简书 Ceph中一些PG相关的状态说明和基本概念说明.故障模拟_pansaky的博客-CSDN博客 1. PG介绍 继上次分享的<Ceph介绍及原理架 ...

  6. 用netstat查看网络状态详解

    --用netstat查看网络状态详解 -----------------------------2014/06/11 一.Linux服务器上11种网络连接状态:                     ...

  7. 1xx、101、100 状态详解

    1xx (临时响应) 临时响应并需要请求者继续执行操作 100 :    继续       服务器返回此代码表示已收到请求一部分,正在等待其余部分   也可以理解为正在加载 101:  切换协议    ...

  8. 转:iOS应用程序生命周期(前后台切换,应用的各种状态)详解

    iOS应用程序生命周期(前后台切换,应用的各种状态)详解 分类: iOS开发进阶2012-10-08 15:35 42691人阅读 评论(30) 收藏 举报 iosapplication任务anima ...

  9. 期刊投稿状态_SCI期刊投稿各种状态详解

    原标题:SCI期刊投稿各种状态详解 网上投稿是现今SCI期刊投稿的重要方式之一,但当你在网上投递一篇SCI期刊的时候如何准确的判断你的投稿是否成功?是否被收录?这就要我们学会去查看SCI期刊投稿的状态 ...

最新文章

  1. ruby gems列表
  2. DeepLearning.AI第一部分第三周、 浅层神经网络(Shallow neural networks)
  3. (jQuery,Highcharts)前端图表系列之一 --Highcharts (转)
  4. npm ERR! Please try running this command again as root/Administrator.
  5. Funter for Mac:支持快速显示和隐藏文件和文件夹
  6. 拓端tecdat|R语言多变量广义正交GARCH(GO-GARCH)模型对股市高维波动率时间序列拟合预测
  7. SSM+Bootstrap+MYSQL演唱会网上订票系统
  8. 谷歌浏览器扩展程序XDM_如何下载和安装扩展程序?
  9. 「玻璃鸟不会归来」读后感
  10. MySQL快速解决“is marked as crashed and should be repaired“故障
  11. EMC设计经典15问
  12. Python异常UnicodeEncodeError: 'gbk' codec can't encode character '\uXXX' in position
  13. 百家号的大用处是什么? 如何购买百家号
  14. 过年不再被逼相亲——我用python给亲戚展示2022的相亲数据
  15. 关于城市旅游的HTML网页设计——中国旅游HTML+CSS+JavaScript 11页 带视频 带轮播
  16. C语言005:常见例题
  17. (十六)admin-boot项目之文件存储上传与下载minio
  18. 学校信息计算机教案百度文库,人教版信息技术教案 八年级下册_百度文库(45页)-原创力文档...
  19. 脑波和眼动连通性分析 python-(2)
  20. vim 中:wq和:wq的不同之处

热门文章

  1. Delphi使用ADOconnection连接mysql数据库时的Connectionstring问题
  2. 【Argoverse 1 Motion Forecasting Dataset】轨迹预测数据集简介
  3. hosts屏蔽网站以及代理越过屏蔽
  4. 后台(11)——Servlet(3)
  5. ES6入门--let的基本使用
  6. secure CRT设置自动保存日志
  7. 解决服务器80端口占用问题
  8. MATLAB text的“关键字”
  9. linux 脚本usleep,Linux的sleep()和usleep()的使用
  10. Windows Terminal美化杂记-Windows Terminal使用与配置