PHP_FPM module

edit

This functionality is in beta and is subject to change. The design and code is less mature than official GA features and is being provided as-is with no warranties. Beta features are not subject to the support SLA of official GA features.

This module periodically fetches metrics from PHP-FPM servers.

The default metricset is pool.

Module-specific configuration notes

edit

You need to enable the PHP-FPM status page by properly configuring pm.status_path.

Here is a sample nginx configuration to forward requests to the PHP-FPM status page (assuming pm.status_path is configured with default value /status):

nginx
location ~ /status {
     allow 127.0.0.1;
     deny all;
     include fastcgi_params;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     fastcgi_pass 127.0.0.1:9000;
}

Compatibility

edit

The PHP_FPM metricsets were tested with PHP 7.1.1 and are expected to work with all versions >= 5.

Example configuration

edit

The PHP_FPM module supports the standard configuration options that are described in Specify which modules to run. Here is an example configuration:

metricbeat.modules:
- module: php_fpm
  metricsets:
  - pool
  #- process
  enabled: true
  period: 10s
  status_path: "/status"
  hosts: ["localhost:8080"]

This module supports TLS connections when using ssl config field, as described in Specify SSL settings. It also supports the options described in Standard HTTP config options.

Metricsets

edit

The following metricsets are available: