在 Ubuntu 上监控 php-fpm 可以从 进程状态、性能、日志、系统资源 等多个层面来做。下面按常用程度给你一个完整方案。

systemctl status php-fpm# 或(Ubuntu 常见)
systemctl status php8.1-fpm
启动 / 重启 / 停止:
sudo systemctl start php8.1-fpmsudo systemctl restart php8.1-fpm
sudo systemctl stop php8.1-fpm
这是最常用、最专业的监控方式。
编辑 php-fpm pool 配置:
sudo vim /etc/php/8.1/fpm/pool.d/www.conf取消或添加:
pm.status_path = /statuslocation = /status {fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
allow 127.0.0.1;
deny all;
}
重载:
sudo systemctl reload nginxsudo systemctl reload php8.1-fpm
curl http://127.0.0.1/status输出示例:
pool: wwwprocess manager: dynamic
start time: 01/Jan/2026:10:00:00 +0800
start since: 3600
accepted conn: 12345
listen queue: 0
active processes: 5
idle processes: 10
total processes: 15
关键指标解释
ps aux | grep php-fpmwatch -n 1 "ps aux | grep php-fpm | wc -l"ss -x | grep phptop# 或
htop
查找 php-fpm
ps -eo pid,user,%cpu,%mem,cmd --sort=-%mem | grep php-fpmtail -f /var/log/php8.1-fpm.log在 www.conf 开启:
request_slowlog_timeout = 5sslowlog = /var/log/php-fpm/slow.log
查看:
tail -f /var/log/php-fpm/slow.log适合大规模监控
bash <(curl -Ss https://my-netdata.io/kickstart.sh)自动监控:
企业级方案
systemctl status php8.1-fpmcurl http://127.0.0.1/status
tail -f /var/log/php8.1-fpm.log
ps aux | grep php-fpm
如果你愿意,我可以:
只要告诉我你的 Ubuntu 版本 + php 版本 + 使用 Nginx 还是 Apache 即可。