Greater control over distributed profiling with on-demand sub-profiles processing

By Thomas di Luccio, on Oct 25, 2023

We’ve always strived to make Blackfire the most intuitive, efficient, and powerful continuous observability solution on the market. We provide our users with a fully integrated tool handling the collection and processing of raw observability data and generating actionable insights and metrics from that data.

We side with developers by helping them seamlessly integrate observability into their development and deployment processes. Blackfire minimizes resource consumption and facilitates long-lasting performance optimizations.

Today, we’re thrilled to announce an exciting new feature that gives you more control over distributed profiling: on-demand distributed profile processing.

Understanding the sub-profile challenge

Distributed profiling is designed to help understand the behavior of applications using microservices. It allows you to profile any service your application interacts with, as long as Blackfire Probe is enabled on that service.

The Blackfire profiler triggers sub-profiles for every HTTP request the main script makes. This is incredibly useful when the bottleneck you are looking for might be hidden in one of these web services and API calls.

On-demand distributed profile processing

Yet, distributed profiling might lead to a sub-profile overflow when your app relies on too-many web services. To avoid a deluge of unwanted sub-profiles, only the first 5 sub-profiles are processed in priority, leaving the others pending. While this decision was made to maintain the system’s efficiency, we also understand that, on some occasions, it could mean missing out on information.

That’s why your profile’s “Propagation” tab now features a call-to-action (CTA) that empowers you to manually request more sub-profiles to be processed. This means if you wish to delve deeper into the subsequent HTTP requests after the initial five, you can! By giving you this control, we aim to strike the balance between automated efficiency and user-controlled detail.

Join the conversation and shape the future!

We believe that the best innovations are driven by community insights. That’s why we’re inviting you, our valued readers, to be an active part of Blackfire’s evolution.

Have a feature in mind or a suggestion to make Blackfire an even better continuous observability solution? We want to hear from you! Continue the conversation on dev.to, Reddit, Twitter, and Discord.

To better observability and beyond!

Thomas di Luccio

Thomas is a Developer Relations Engineer at Platform.sh for Blackfire.io. He likes nothing more than understanding the users' needs and helping them find practical and empowering solutions. He’ll support you as a day-to-day user.