Optimyze and Elastic have joined forces 🤝

Whole-system Continuous Profiling Platform

Profile everything: All systems, all code, all the time. Improve efficiency. Debug performance regressions. Reduce cloud spend.

Create an account
Prodfiler eliminates performance blind spots and helped me reduce CPU usage of some workloads by more than 80%. The whole-system visibility helped me track performance issues that would otherwise be hidden.
Aviram Hassan
Backend Team Leader at Biocatch

See Prodfiler's key features in action

Prodfiler provides fleet-wide full-system continuous profiling. Understand what lines of code are consuming CPU resources, at all times, and across your entire infrastructure. Identify performance regressions, wasteful computation and other issues.

Prodfiler does not require any application source code change, instrumentation, on-host debug symbols or other intrusive operation. Just deploy the agent and receive profiling data a few minutes later.

Prodfiler supports almost all popular language runtimes. We support native C/C++, Rust and Go code, even without debug symbols, as well PHP, Python, Java, Scala, Ruby and Perl. Support for NodeJS and .NET are coming soon. Prodfiler even supports mixed-language stack traces - Python or Java code calling native code and then calling into the kernel? No problem!

Prodfiler has first-class support for all the major containerisation and orchestration frameworks, whether you are running them on your own platform or on top of a managed Kubernetes platform, such as GKE, AKS or EKS. Of course we also support non-containerised environments!.

Prodfiler builds stack traces that go from the kernel, through userspace native code, all the way into code running in higher level runtimes, enabling unprecedented insight into your system’s behaviour at all levels.

Prodfiler aims to stay within a budget of 1% of CPU usage and less than 250MB of RAM, meaning that for most workloads it can run 24/7 with no noticeable impact on the profiled systems. For workloads where even this CPU budget is too high, Prodfiler can run at randomly selected time intervals to gain insights with an even lower impact on performance.

The Prodfiler UI identifies your most expensive lines of code and functions, providing estimates of their dollar cost and CO2 usage. Featuring responsive and easy to use flame-graphs and call-graphs, you can explore the performance of your entire fleet in one location.

How it works

Get started with Prodfiler by following these easy steps.

Supported Languages & Platforms

Prodfiler currently supports C/C++, Rust, Go, PHP, Python, Java, Scala, Ruby and Perl, with support for .NET and Node.js coming soon. Prodfiler works in both containerised and non-containerised environments, so whether you’re deploying individual Docker containers, or running large Kubernetes clusters on a managed platform we’ve got you covered!

Resources

Learn more about continuous in-production profiling and it's impact on performance and cost!