说明
php-fpm和nginx一样,内建了个状态页,可以通过该状态页了解监控php-fpm的状态。
1、开启开启 php-fpm 状态页
#找到php的安装目录下的www.conf文件,添加pm.status_path配置项。如:我的php安装目录为/usr/local/php,则www.conf文件位于/usr/local/php7/etc/php-fpm.d目录下,添加以下内容
[root@localhost# cd /usr/local/php/etc/php-fpm.d
[root@localhost php-fpm.d]# vim www.conf
pm.status_path = /php_fpm_status
php_fpm_status名称可自行定义,这里我用php_fpm_status
特别说明:你的服务器配置文件不一定叫 www.conf ,请根据自己的配置设置;也可以直接把 pm.status_path = /php_fpm_status 添加到 php-fpm.conf 中,但是,一定要添加到 php-fpm.conf 文件中的最后,否则重启php-fpm时会出现以下错误:
2、Nginx配置
在nginx的配置文件中添加以下配置。
location = /php_fpm_status {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
特别说明:这里的location最后用=号,如我的配置location = / php_fpm_status,因为=的优先级最高,如果匹配成功后,就不会再匹配其它选项了。
3、重启Nginx、php-fpm使配置生效
[root@localhost php-fpm.d]# nginx -s reload
[root@localhost php-fpm.d]# pkill php-fpm
[root@localhost php-fpm.d]# php-fpm
4、浏览器访问http://192.168.0.117/php_fpm_status,本机IP为192.168.0.117
pm.status_path 参数详解
|----------------------|-----------------------------------------------| | 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,缓慢请求的数量 |
pm.status_path 显示样式
1、json格式
2、xml格式
3、html格式
4、full格式
5、full 显示项
|------------------------|-----------------------------------| | pid | 进程PID,可以单独kill这个进程. | | 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 月
1
- 2023Conda常用命令 Linux最后更新:2024-1-24