微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

教你用php-fpm的status查看详细信息

PHP-fpm的status可以查看汇总信息和详细信息


Nginx.conf 配置文件

server {
    listen       80;
    server_name  localhost;

    index index.PHP index.html;
    root  /home/tinywan/zabbix;

    location / {
        try_files $uri $uri/ /index.PHP?$args;
    }

    location ~ \.PHP$ {
        fastcgi_pass   unix:/var/run/PHP7.0.9-fpm.sock;
        fastcgi_index  index.PHP;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

    location /Nginx_status {
          stub_status on;
          access_log off;
          allow 127.0.0.1;
          ##allow 192.168.249.0/24;
          deny all;
    }

    location ~ /PHP_fpm-status$ {
            allow 127.0.0.1;
            #deny all;
            fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
            include fastcgi_params;
            fastcgi_pass unix:/var/run/PHP7.0.9-fpm.sock;
    }
}

启用PHP-fpm状态功能

tinywan@tinywan:/opt/PHP-7.0.9$ cat /opt/PHP-7.0.9/etc/PHP-fpm.d/www.conf | grep status_path
;pm.status_path = /status

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

vim /opt/PHP-7.0.9/etc/PHP-fpm.d/www.conf
pm.status_path = /PHP_fpm-status           #去掉了前面的;注释符,并更名为PHP_fpm-status

修改PHP-fpm.conf后,使用service PHP-fpm reload重新加载配置文件

tinywan@tinywan:/opt/PHP-7.0.9$ sudo /opt/PHP-7.0.9/sbin/PHP-fpm
tinywan@tinywan:/opt/PHP-7.0.9$ ps -aux | grep PHP-fpm
root       2769  4.1  0.1 212532 14676 ?        Ss   09:50   0:00 PHP-fpm: master process (/opt/PHP-7.0.9/etc/PHP-fpm.conf)
tinywan    2770  3.2  0.1 212532 11084 ?        S    09:50   0:00 PHP-fpm: pool www
tinywan    2771  5.9  0.1 212532 11084 ?        S    09:50   0:00 PHP-fpm: pool www
tinywan    2773  0.0  0.0  15984   944 pts/21   S+   09:50   0:00 grep --color=auto PHP-fpm

使用curl指令查看PHP-fpm的status

tinywan@tinywan:/usr/local/Nginx$ curl localhost/PHP_fpm-status
pool:                 www
process manager:      dynamic
start time:           13/May/2017:09:50:43 +0800
start since:          986
accepted conn:        2
listen queue:         0
max listen queue:     0
listen queue len:     0
idle processes:       1
active processes:     1
total processes:      2
max active processes: 1
max children reached: 0
slow requests:        0

PHP-fpm的status可以查看汇总信息和详细信息,详细信息比汇总信息要多出每一个PHP-fpm进程的相关信息,同时支持多种格式输出,如xml、html和json,认情况下分别使用如果指令即可:

json格式

tinywan@tinywan:~$ curl localhost/PHP_fpm-status?json
{pool:www,process manager:dynamic,start time:1494640243,

start since:1609,accepted conn:13,listen queue:0,max listen queue:0,

listen queue len:0,idle processes:1,active processes:1,total processes:2,

max active processes:1,max children reached:0,slow requests:0}

xml格式

tinywan@tinywan:~$ curl localhost/PHP_fpm-status?xml
<?xml version=1.0 ?>
<status>
<pool>www</pool>
<process-manager>dynamic</process-manager>
<start-time>1494640243</start-time>
<start-since>1692</start-since>
<accepted-conn>15</accepted-conn>
<listen-queue>0</listen-queue>
<max-listen-queue>0</max-listen-queue>
<listen-queue-len>0</listen-queue-len>
<idle-processes>1</idle-processes>
<active-processes>1</active-processes>
<total-processes>2</total-processes>
<max-active-processes>1</max-active-processes>
<max-children-reached>0</max-children-reached>
<slow-requests>0</slow-requests>
</status>

所有格式:

Examples for summary status page:
http://127.0.0.1/PHP_fpm-status
http://127.0.0.1/PHP_fpm-status?json
http://127.0.0.1/PHP_fpm-status?html
http://127.0.0.1/PHP_fpm-status?xml

Example for detailed status page:
http://127.0.0.1/PHP_fpm-status?full
http://127.0.0.1/PHP_fpm-status?json&full
http://127.0.0.1/PHP_fpm-status?html&full
http://127.0.0.1/PHP_fpm-status?xml&full

浏览器访问xml文件截图

PHP-fpm status的含义

字段含义
poolPHP-fpm pool的名称,大多数情况下为www
process manager进程管理方式,现今大多都为dynamic,不要使用static
start timePHP-fpm上次启动的时间
start sincePHP-fpm已运行了多少秒
accepted connpool接收到的请求数
listen queue处于等待状态中的连接数,如果不为0,需要增加PHP-fpm进程数
max listen queuePHP-fpm启动到现在处于等待连接的最大数量
listen queue len处于等待连接队列的套接字大小
idle processes处于空闲状态的进程数
active processes处于活动状态的进程数
total processess进程总数
max active processPHP-fpm启动到现在最多有几个进程处于活动状态
max children reached当pm试图启动更多的children进程时,却达到了进程数的限制,达到一次记录一次,如果不为0,需要增加PHP-fpm pool进程的最大数
slow requests当启用了PHP-fpm slow-log功能时,如果出现PHP-fpm慢请求这个计数器会增加,一般不当的MySQL查询会触发这个值

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐