Get your Parca, we’ll profile – Polar Signals pushes Prometheus for profiles • DEVCLASS

Continuous profiling start-up Polar Signals recently opened its “Prometheus for profiles” Parca project under the Apache 2 license from GitHub. The software is touted as a way to collect data to help teams better understand incidents, point out code paths for optimization to improve performance, and save money along the way.

However, the general goals of Polar Signals go a bit beyond that, as Parca’s name suggests. According to founder Frederic Branczyk, it was chosen as a benchmark for the Arctic Regional Climate Assessment Program, as the hope is that the optimization options unveiled by Parca can help reduce unnecessary use of resources and therefore emissions. of carbon.

Instead of focusing on traces, the Parca observability project follows a continuous sampling profiling approach. This systematic way of capturing aspects of code execution such as CPU or memory usage is meant to reduce overhead small enough that it can be used in production, but also to collect enough data to provide statistically significant information. Profiles are obtained via agents or by pulling targets (pushing to Parca is also an option), then written to storage which is one of the major components of the project.

The second major component of Parca is an eBPF based profiler called Parca Agent. It uses Kubernetes or systemd to automatically discover targets from which to capture CPU profiles (more to come). From there, things work a bit the same as Prometheus, as profile sets are labeled “the same as Prometheus time series” using Kubernetes and systemd metadata, data written can be filtered using tag selectors, and there is a user interface for querying and viewing profiles.

Besides the agent and the server, Parca uses a multidimensional data model, a query language based on a label selector and a query engine designed for profiling data. To gain infrastructure-wide insight into what is happening during code execution, users can merge time ranges from profiles into single reports. Apart from that, there are options to graph profiles over time and dig into peaks, or create differential graphs to find out what caused changes in system behavior.

The similarities to Prometheus aren’t accidental, as many will know Branczyk from his role as maintainer for Prometheus and Thanos. .

Polar Signals sparked some interest earlier this year when the company introduced the observability space into its SaaS Continuous Profiler offering and the pprof profile sharing service. Since many organizations tend to shy away from profiling due to the modifications needed to get started, the company introduced the Perfessor sidecar utility to lower this barrier to entry.

Over the past two months, Polar Signal has also garnered some interest among investors, leading the company to close a $ 4 million funding round that is expected to provide it with the funds to hire additional developers. It will be interesting to see the direction of the business moving forward. If the goal is truly to reduce the use of resources for the greater good, it will probably take more than a profiling tool. After all, common practice in the field tends more to spot unused resources and give them something to do rather than freeing them up for others.

Source link

Steven L. Nielsen

Leave a Reply

Your email address will not be published. Required fields are marked *