pyroscope

Collect continuous runtime profiles from applications to identify performance hotspots.

213|18|Updated Mar 17, 2026
One-click install
npx skills add https://github.com/grafana/skills --skill pyroscope-grafana
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pyroscope
Source: https://github.com/grafana/skills/tree/main/skills/grafana-lgtm/pyroscope
Command: npx skills add https://github.com/grafana/skills --skill pyroscope-grafana

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Pyroscope helps teams discover, inspect, and resolve runtime performance issues by collecting continuous profiling data across services and languages so that hotspots can be attributed to code and optimized efficiently.

Core Features & Use Cases

  • Multi-language instrumentation: SDKs and eBPF Alloy auto-instrumentation for Go, Java, Python, Node.js, Ruby, .NET, Rust, and native apps.
  • Profile analysis & queries: Use ProfileQL and flame-graph visualization to compare profiles, filter by labels, and correlate CPU/memory usage with traces.
  • Deployment & integrations: Guidance for Pyroscope server configuration, Grafana Cloud Profiles integration, and trace-profile linking for end-to-end performance debugging.
  • Use Case: Automatically collect CPU profiles from a production service with Alloy, analyze flame graphs to find the slowest functions, and link spans to profiles to confirm root causes.

Quick Start

Enable Alloy eBPF auto-instrumentation on the host or install the Pyroscope SDK in your app to send profiles to your Pyroscope server and then open Grafana to inspect flame graphs and ProfileQL queries.

Frequently Asked Questions about pyroscope

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I collect continuous runtime profiles to find performance hotspots in production?

To collect continuous runtime profiles, enable Alloy eBPF auto-instrumentation on the host or install the Pyroscope SDK in your app to send profiles to a server, then inspect flame graphs in Grafana to identify hotspots.

What languages and environments are supported for continuous profiling?

Continuous profiling supports Go, Java, Python, Node.js, Ruby, .NET, Rust, and native apps through SDKs, alongside eBPF Alloy auto-instrumentation for host-level profiling without code changes.

Can I link tracing spans with flame graphs to debug CPU or memory usage?

Yes, trace-profile linking correlates tracing spans with flame graphs to confirm the root cause of CPU or memory usage issues, enabling end-to-end performance debugging across services.

How do I filter and compare runtime profiles using ProfileQL?

ProfileQL is a query format used to filter profiles by labels and compare them, allowing you to isolate specific service attributes and analyze performance variations across different runtime contexts.

Does Grafana Cloud Profiles integration require network access to the profiling endpoint?

Yes, Grafana Cloud Profiles integration requires network access to the profiling endpoint to transmit collected runtime profile data from your services to the cloud for visualization and analysis.