PHP-FPM Monitoring
Know which pool is saturated, right now.
Per-pool workers, listen queue, slow requests, and max-children-reached events. Auto-discovers every pool on the host. Alerts when any pool starts queueing.
Per-pool metrics collected
php.fpm.active_processes
Workers currently handling requests.
php.fpm.idle_processes
Spare workers available for the next request.
php.fpm.listen_queue
Requests waiting for a free worker — non-zero means the pool is under-sized.
php.fpm.max_children_reached
How many times the pool hit pm.max_children. Any non-zero value is an outage risk.
php.fpm.slow_requests
Requests that exceeded request_slowlog_timeout.
php.fpm.accepted_conn
Cumulative requests served per pool.
Required pool config
# /etc/php-fpm.d/www.conf
pm.status_path = /status
ping.path = /ping
request_slowlog_timeout = 5s
slowlog = /var/log/php-fpm/www-slow.log
The agent auto-discovers this and starts reporting within one minute of restart.