Blackfire Documentation

website·Indexed 42 days ago

https://docs.blackfire.io/

Profiling and performance observability tool providing continuous profiling, automated performance testing, and synthetic monitoring. Includes specialized integrations for PHP, Symfony, and Laravel Octane, as well as front-end observability and a comprehensive PHP SDK.

Tokens
77.6K
Snippets
316
Records
671
Agent score
65%

What's inside Blackfire

  1. Overview of Blackfire Profiler for PHP and Python

    The Blackfire profiler is a deterministic tool used to measure how executed code consumes resources at runtime. It collects multidimensional observability data to help developers discover performance bottlenecks and understand code behavior.

    Key characteristics include:

    • Environment Support: Compatible with development, test, staging, and production environments.
    • Zero Code Changes: Requires no modifications to the application code and no removal of instrumentation before production releases.
    • Production Impact: It has no impact on end-users in production; overhead is only generated for the specific developers triggering the profiles.
    • Deterministic Nature: Unlike the probabilistic continuous profiler, the Blackfire profiler is deterministic.
  2. Overview of Blackfire performance management

    Blackfire is a performance management solution centered around a low-overhead profiler. It is designed to fit into the development workflow through three primary pillars:

    1. Profiling & Debugging: A low-overhead profiler used to debug performance issues, identify bottlenecks in existing code, and validate fixes in both development and production environments.
    2. Analysis & Collaboration: A platform that stores historical profile data to enable trend analysis and team collaboration.
    3. Automation & CI/CD: Integrations with testing libraries and CI/CD platforms to automate performance testing, provide fast feedback, and prevent performance regressions.
  3. Overview of Blackfire Performance Testing capabilities

    Blackfire provides a testing suite designed to identify performance bottlenecks and evaluate the impact of code changes before deployment. Key capabilities include:

    • Defining performance expectations for HTTP requests and CLI commands.
    • Automatic evaluation of assertions for every profile generated.
    • Synthetic monitoring to secure critical user journeys.
    • Integration of performance tests within CI/CD pipelines.
  4. Overview of Blackfire Monitoring

    Blackfire monitoring provides a real-time, high-level view of application performance to identify when and where performance issues occur. It is designed to bootstrap investigations by highlighting the impact of transactions and spans, allowing developers to prioritize improvements. While monitoring identifies the 'when and where', the Blackfire Profiler is used to find the root cause at the function or service call level. Key complementary features include alerting and health reports.
  5. Overview of Blackfire Browser Monitoring

    Browser Monitoring allows developers to track real-world performance directly from users' browsers to identify slowdowns and frontend issues across different devices and regions. It is available for users on the Production Plan. The tool is designed to be privacy-first: it does not track individual users, set cookies, or store personally identifiable information (PII), making it GDPR-compliant by default and removing the need for cookie banners.
  6. Overview of Synthetic Monitoring with Blackfire Player

    Synthetic monitoring simulates real user journeys against a live application to verify performance and behavior. By using Blackfire Player, developers can run these scenarios from their own infrastructure (e.g., CI/CD pipelines, pull requests, or scheduled cron jobs), allowing them to monitor applications behind firewalls or VPNs and gate deployments based on performance assertions.
  7. Overview of Blackfire Analytics

    Blackfire Analytics provides insights into user interaction with an application, including top-performing pages, high-traffic transactions, browser usage, and UTM campaign effectiveness. It is designed to help developers prioritize improvements based on real user behavior and traffic patterns. Note: This feature requires a Production Plan.
  8. Overview of Blackfire Continuous Profiling

    Continuous profiling in Blackfire is a real-time performance optimization technique used to monitor web applications. It collects performance data continuously to help developers identify bottlenecks and optimize resource utilization in live environments. This feature requires a Production Plan.
  9. Overview of Blackfire Player

    Blackfire Player is an open-source tool used to define crawling scenarios, set expectations on HTTP responses, and run Blackfire performance assertions. It sits between web crawling (like Guzzle or Goutte) and functional testing (like Behat or Codeception), offering a balance between native features and simplicity for writing custom crawlers.
  10. Overview of Blackfire Front-end Observability

    Blackfire Front-end Observability allows developers to track how users experience a site on real devices and browsers. Unlike backend metrics, it captures client-side performance issues such as JavaScript bloat, third-party script delays, layout shifts, and slow image CDNs. It tracks key performance metrics including TTFB (Time to First Byte), FCP (First Contentful Paint), LCP (Largest Contentful Paint), CLS (Cumulative Layout Shift), and INP (Interaction to Next Paint), segmented by country, browser, and device.
  11. Overview of Blackfire Continuous Profiling

    Continuous Profiling is a lightweight and scalable monitoring technique used to collect data on code behavior (such as CPU and memory usage) in real-time production environments. It allows developers to identify and fix performance bottlenecks based on actual user traffic before they become critical issues. It is designed specifically for production environments where there is sufficient traffic to generate meaningful data.
  12. Overview of Blackfire continuous observability

    Blackfire is a continuous observability solution for developers, architects, and engineering leaders to monitor web application performance in real time. It is designed to help users proactively identify bottlenecks, evaluate the impact of code changes before deployment, and perform root-cause analysis of performance issues. The platform is 'opinionated,' meaning it provides immediate insights out-of-the-box without requiring the manual creation of custom dashboards or telemetry probes.