Web & Application Servers
    PHP-FPM logo

    PHP-FPM Monitoring

    Monitor PHP-FPM process pools, slow requests, memory usage, and worker states in real time with zero configuration.

    Why monitor PHP-FPM?

    PHP-FPM (FastCGI Process Manager) handles PHP request processing for millions of web applications. Monitoring PHP-FPM is essential to detect slow scripts, manage process pool sizing, prevent memory exhaustion, and maintain application responsiveness.

    Auto-discovery via Xitogent
    Process pool active/idle/total workers
    Slow request detection and tracking
    Memory usage per pool
    Request duration metrics
    Listen queue monitoring
    Multi-pool support
    1-minute metric collection intervals
    Metrics

    What we monitor

    Active Processes

    Currently processing PHP requests.

    Idle Processes

    Workers waiting for requests.

    Slow Requests

    Requests exceeding slow_log threshold.

    Listen Queue

    Requests waiting for a free worker.

    Max Children Reached

    Times process limit was hit.

    Memory per Process

    Average memory per PHP-FPM worker.

    Request Duration

    Average request processing time.

    Total Processes

    Total spawned PHP-FPM workers.

    Triggers & Alerts

    Configurable alert triggers

    Set up custom triggers in your dashboard to get notified the moment PHP-FPM metrics cross your defined thresholds.

    PHP-FPM monitoring trigger configuration dashboard

    Slow Requests

    warning

    Fires when slow request count exceeds threshold.

    Listen Queue

    critical

    Triggers when requests are queuing, indicating insufficient workers.

    Max Children

    critical

    Alerts when process limit is reached repeatedly.

    Memory Usage

    warning

    Fires on high per-process memory usage.

    Active Processes

    warning

    Triggers when all workers are busy.

    01

    Importance of PHP-FPM Monitoring

    PHP powers 77% of websites. Without monitoring, slow scripts, memory leaks, and worker exhaustion can bring applications to a halt.

    • Detect slow PHP scripts before they impact users
    • Right-size process pools based on real data
    • Prevent memory exhaustion from leaky scripts
    • Monitor listen queue to avoid request drops
    PHP-FPM monitoring dashboard
    PHP performance analytics
    02

    Why Choose Xitoring

    Seamless PHP-FPM monitoring with zero-config setup and multi-pool support.

    • One-command install
    • Multi-pool monitoring support
    • Unified dashboard
    • Multi-channel alerting
    • Historical data retention
    Xitoring PHP overview
    Alert configuration
    Before you start

    Prerequisites for PHP-FPM

    Make sure you've got these in place — most installs are a 60-second job once they are.

    • PHP-FPM with pm.status_path = /fpm/status and ping.path = /fpm/ping set in the pool config
    • The status URL accessible from localhost (via Nginx/Apache fastcgi_pass)
    • Read access to PHP-FPM logs and pool config
    Setup Guide

    Get started in minutes

    1

    Install Xitogent on your web server

    Install the lightweight Xitogent monitoring agent on the host running PHP-FPM.

    curl -s https://xitoring.com/install.sh | sudo bash -s -- --key=YOUR_API_KEY
    2

    Enable the PHP-FPM status page

    Set `pm.status_path = /fpm/status` and `ping.path = /fpm/ping` in your pool config (typically `/etc/php/X.Y/fpm/pool.d/www.conf`). Add a fastcgi_pass location block in Nginx (or equivalent for Apache) to expose the path to localhost, then reload PHP-FPM and verify the URL responds.

    # In your PHP-FPM pool config (e.g. /etc/php/8.x/fpm/pool.d/www.conf) pm.status_path = /fpm/status ping.path = /fpm/ping # Then in Nginx, expose them to localhost: location ~ ^/fpm/(status|ping)$ { allow 127.0.0.1; deny all; fastcgi_pass unix:/var/run/php-fpm/www.sock; include fastcgi_params; }
    3

    Enable the PHP-FPM integration

    Use the Xitoring dashboard or CLI to enable the PHP-FPM integration. Xitogent auto-detects every FPM pool on the host and tracks them independently.

    sudo xitogent integrate
    4

    Configure alert thresholds (optional)

    Set custom thresholds for Slow Requests, Listen Queue, or Max Children Reached to catch performance regressions and pool exhaustion before users feel them.

    5

    Verify it's working

    Run this command on the server to confirm Xitogent picked up the integration. Fresh metrics will start streaming to your dashboard within ~30 seconds.

    sudo xitogent status

    Frequently asked questions

    Does this support multiple PHP-FPM pools?
    Yes, Xitogent monitors all configured pools independently.
    Which PHP versions are supported?
    PHP 7.2+ with FPM enabled.
    Will this affect PHP performance?
    No. Status page queries have negligible impact.

    Start monitoring PHP-FPM today

    Set up in under 60 seconds. No credit card required. Full metrics from day one.

    Start Free Trial

    Keep exploring

    Related Integrations