Kubernetes CPU Profiling

Always-on CPU Profiling, without the overhead

Get detailed CPU profiles and stacktraces automatically for all containers. Function-level visibility with zero setup.

Out-of-the-box

97Hz Sampling

Multi-Language

Stacktraces

Always-On

Zero Overhead

Visualize CPU usage with flame graphs

Understand exactly where your CPU time is spent with interactive flame graphs showing function-level detail.

  • Interactive flame graphs for visual analysis
  • Aggregate profiles across all pods and time periods
  • Drill down to specific functions and call stacks

Multi-Language Support

Native profiling for all major languages

Python
Python
Go
Go
Rust
Rust
C++
C++
C
C
+
and more...

Zero Setup Required

Install once, profile everything. No code changes, no restarts, no configuration.

  • Automatic profiling for all containers in cluster
  • No SDK integration or code changes needed
  • Works with containers you don't control
  • 1 minute install via Helm chart

AI-Powered Performance Analysis

AI automatically analyzes your CPU profiles to identify bottlenecks and optimization opportunities.

  • Automatic bottleneck detection in your code
  • AI-generated optimization suggestions
  • 97Hz always-on sampling with 0.5% overhead
  • Investigate past issues retroactively
  • Compare performance across releases
Always-on CPU profiling dashboard

Cost Effective

Save on Your Observability Costs

Metoro gives you profiling for free as part of APM. No additional cost for CPU profiling.

Example monthly cost comparison - APM + CPU Profiling

Based on typical start-up usage

Hosts

Avg per month

Containers

Avg per month

Profiles

GB / Month
Datadog
$960/month
Grafana Cloud
$725/month
Metoro
$400/month

* Approximate cost. Precise costs depend on the specific use case and any discounts.

** Updated July 2025. Datadog Enterprise APM required for profiling. Assumes monthly billing.

Ready to optimize performance?

Start profiling your Kubernetes applications immediately with zero configuration.

SUPPORT

Frequently Asked Questions About K8s CPU Profiling

Everything you need to know about the product and billing. Can't find the answer you're looking for? Ask us on our Slack Community.

A CPU profile is a list of stacktraces and time spent at each stack trace. Metoro aggregates these lists together to show you exactly which functions your program is spending time in.

Metoro runs a sampling profiler at 97Hz to understand exactly which container is running on each CPU on a host. This allows us to collect stacktraces of any program currently on the CPU, giving you detailed insights into where CPU time is being spent.

Metoro currently supports CPU profiling for C, C++, Rust, Golang, and Python. For other languages, we show their native runtime methods, though CPU time won't be attributed to the interpreted function itself.

Running the sampling profiler has minimal overhead, typically less than 0.5% of total CPU usage. This ensures that our profiling solution doesn't significantly impact your application's performance.

You can view CPU profiles for each service in its respective service page under the Profiling tab. This provides an aggregated view of all profiles taken across all pods associated with the service in your selected time period. You can filter by specific container in the pod or by cluster.

CPU profiling focuses on understanding how CPU time is spent in your application, whereas other types of profiling, such as memory profiling, focus on understanding how memory is allocated and used. CPU profiling is particularly useful for identifying performance bottlenecks and optimizing application performance.