linuxx 发表于 2016-12-26 10:01:32

nginx中php-fpm的status查看

  查看php-fpm的status
  说明:php-fpm和nginx一样内建了一个状态页,对于想了解php-fpm的状态以及监控php-fpm非常有帮助
   
  第一步:开启php-fpm配置文件中的pm.status_path,默认是没有开启,去掉前面的;即可开启
  pm.status_path = /status
   
  第二步:在nginx中需要查看php-fpm状态的server中添加重定向的location(location除了url之外,因为后面使用该url来访问查看状态,其他的fastcgi配置可以自增减,只要能保证nginx能与php-fpm连接即可)
  location ~ /status {
     root           /data/web/;
     fastcgi_pass   fzjh;  #地址和端口与php_fpm中设置的一致,这里使用了upstream名称
     fastcgi_index  index.php;
     fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
     include        fastcgi_params;
  }
   
  第三步:重启nginx和php-fpm
   
  查看方式:可在浏览器中输入以下url或者在linux下curl + url 查看
  查看状态的连接:假设第二步中的location是设置在一个叫www.tp.com的域名中,那么访问url是:www.tp.com/status
  查看对应的有效进程使用url:www.tp.com/status?full
  查看的数据用html方式显示:www.tp.com/status?html
  查看的数据用json方式显示:www.tp.com/status?json
   
  www.tp.com/statusde 查看的状态字段含义如下:
  
 
  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,缓慢请求的数量
   
   
  查看对应的有效进程使用url:www.tp.com/status?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 - 上一个请求使用的内存
页: [1]
查看完整版本: nginx中php-fpm的status查看