php-fpm在ubuntu如何监控

作者:袖梨 2026-08-13

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

php-fpm在ubuntu如何监控

一、确认 php-fpm 运行状态(最基础)

查看 php-fpm 是否运行

systemctl status php-fpm

# 或(Ubuntu 常见)

systemctl status php8.1-fpm

启动 / 重启 / 停止:

sudo systemctl start php8.1-fpm

sudo systemctl restart php8.1-fpm

sudo systemctl stop php8.1-fpm

二、启用 php-fpm status 页面(强烈推荐 )

这是最常用、最专业的监控方式。

启用 status 配置

编辑 php-fpm pool 配置:

sudo vim /etc/php/8.1/fpm/pool.d/www.conf

取消或添加:

pm.status_path = /status

配置 Nginx 访问 status

location = /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 nginx

sudo systemctl reload php8.1-fpm

访问状态

curl http://127.0.0.1/status

输出示例:

pool:                 www

process 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

关键指标解释

三、使用命令行实时监控

查看 php-fpm 进程

ps aux | grep php-fpm

实时查看进程变化

watch -n 1 "ps aux | grep php-fpm | wc -l"

查看 socket 连接

ss -x | grep php

四、系统资源监控(CPU / 内存)

top / htop

top

# 或

htop

查找 php-fpm

查看内存占用

ps -eo pid,user,%cpu,%mem,cmd --sort=-%mem | grep php-fpm

五、日志监控(非常重要 )

php-fpm 错误日志

tail -f /var/log/php8.1-fpm.log

slow log(慢执行)

www.conf 开启:

request_slowlog_timeout = 5s

slowlog = /var/log/php-fpm/slow.log

查看:

tail -f /var/log/php-fpm/slow.log

六、使用第三方工具(生产环境推荐)

1. Prometheus + php-fpm-exporter

适合大规模监控

2. Netdata(最简单)

bash <(curl -Ss https://my-netdata.io/kickstart.sh)

自动监控:

  1. php-fpm status
  2. CPU / 内存
  3. 进程数

3. Zabbix / Grafana

企业级方案

七、常见告警指标建议

八、快速检查清单

systemctl status php8.1-fpm

curl http://127.0.0.1/status

tail -f /var/log/php8.1-fpm.log

ps aux | grep php-fpm

如果你愿意,我可以:

  1. 帮你 配置 Prometheus + Grafana
  2. 根据你的 并发量优化 php-fpm pm 参数
  3. 给你一个 生产环境监控模板

只要告诉我你的 Ubuntu 版本 + php 版本 + 使用 Nginx 还是 Apache 即可。

相关文章

精彩推荐