Configuring Blackfire Monitoring Requires Monitoring Early Bird

Blackfire Profiler and Blackfire Monitoring use the same software stack. To get up and running, please follow the installation procedure.

Note

Blackfire Monitoring is currently in the Early Bird phase. A subscription to Blackfire Premium or Blackfire Enterprise is required to activate Monitoring.

Read more on our pricing page.

Note

Blackfire Monitoring currently supports PHP 7 and higher on Linux, BSD, macOS and Windows (via Windows Subsystem for Linux). Python support is in Beta.

Activating Monitoring on an Environment

Once you have subscribed to Blackfire Monitoring, you should activate it on the relevant environment:

  • Configure your php.ini file with blackfire.apm_enabled = 1;
  • Go to the Settings tab of your organization and click on “Monitoring” in the index;
  • For each environment, you can Enable or Disable Monitoring

This requires to have admin rights on the environments, or to be the subscription owner.

You can disable Monitoring on an environment any time your need.

Additional settings are available, at the environment level.

Sample Rate

The Sample Rate represents the percentage of your PHP requests which you would like Blackfire to monitor.

Each request which is monitored generates a “Trace”.

As Blackfire Monitoring pricing is based on a quota of Traces, you can balance:

  • changing your Trace Quota and control the subscription costs;
  • changing your Sample Rate and control the monitoring granularity.

Note that this tracing level captures basic performance metrics, such as overall response time and memory usage, and generates close-to-no overhead.

Extended Sample Rate

The Extended Sample Rate represents the percentage of Traces for which Blackfire will collect more in-depth metrics.

Especially, such Extended Traces will include Spans.

A Span is the representation of a function call over time, just like in a profile timeline.

Collecting Spans may generate additional overhead on Extended Traces.

With the Extended Sample Rate, you can balance:

  • the number of end-user requests which may be impacted by the overhead;
  • the possibility for you to collect in-depth performance metrics with “real-world” context.

Span Time Threshold

The Span Time Threshold represents the minimum amount of time spent in a function call so that a Span will be collected for that call.

Spans are displayed on a Transaction view.

With the Span Time Threshold, you can balance:

  • the quantity of Spans which will be collected;
  • the overhead that will be added on the Extended Traces.

Note

Blackfire Monitoring natively supports all PHP applications. For some frameworks, including Symfony, Drupal, Prestashop 1.7+, and Ibexa DXP, Blackfire Monitoring already collects the most significant Spans, while avoiding to add more than 15% overhead (maximum currently measured).