Repolode
grafana

grafana/pyroscope

持续性能剖析平台,采集运行中应用的 CPU、内存和 I/O 剖析数据,可定位到具体代码行。

可替代:Datadog Continuous Profiler

Star
11,703
Fork
827
未关闭 Issue
419
最近提交
13小时前

这是什么?

Grafana Pyroscope 是一个持续性能剖析平台,用于发现应用中的性能瓶颈。它随时间记录 CPU、内存和 I/O 的使用情况,便于排查线上故障,也便于观察长期趋势,最终可定位到消耗资源的具体代码行。

数据可通过 Go、Java、Python、Ruby、Node.js、.NET、Rust 等语言 SDK 推送,也可经 Grafana Alloy 以拉取或推送方式接入,还支持来自 OpenTelemetry 生态(如 eBPF 剖析器)的 OTLP 数据。查看结果使用 Grafana Profiles Drilldown,无需编写查询即可浏览火焰图并进行对比分析。

2.0 版本的新架构直接将剖析数据写入对象存储,无需内存中的 ingester 或本地磁盘。服务端可通过 Docker、Homebrew 或发布的二进制文件启动,默认监听 4040 端口。

核心功能

  • 01采集运行中应用的 CPU、内存和 I/O 剖析数据。
  • 02提供 Go、Java、Python、Ruby、Node.js、.NET、Rust 的语言 SDK。
  • 03支持通过 Grafana Alloy 和 OpenTelemetry 的 OTLP 接入数据。
  • 04在 Grafana Profiles Drilldown 中无需查询即可查看火焰图。
  • 05v2 架构下剖析数据直接写入对象存储。

适用场景

  • 定位生产环境慢服务中占用 CPU 最多的函数。
  • 跨版本追踪内存分配的增长情况。
  • 故障期间借助代码行级细节排查延迟问题。
  • 通过历史剖析数据对比,发现性能退化。

快速上手

  1. 1

    使用 Docker 在本地运行 Pyroscope 服务器

    docker run -it -p 4040:4040 grafana/pyroscope
  2. 2

    或通过 Homebrew 安装并启动服务

    brew install pyroscope-io/brew/pyroscope
  3. 3

    启动 Homebrew 服务

    brew services start pyroscope

使用前须知

  • 采用 AGPL-3.0 许可证,属于强传染性开源许可证,对网络服务有附加义务。
  • Kubernetes、系统软件包或生产环境部署需要查阅另外的文档并付出额外配置工作。

收录于专题

标签

常见问题

pyroscope 是什么?
持续性能剖析平台,采集运行中应用的 CPU、内存和 I/O 剖析数据,可定位到具体代码行。 Grafana Pyroscope 是一个持续性能剖析平台,用于发现应用中的性能瓶颈。它随时间记录 CPU、内存和 I/O 的使用情况,便于排查线上故障,也便于观察长期趋势,最终可定位到消耗资源的具体代码行。
pyroscope 可以免费使用吗?用的什么许可证?
pyroscope 以 AGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
pyroscope 还在维护吗?
活跃维护中。pyroscope 最近一次提交是在 2026年10月24日。
pyroscope 适合用来做什么?
定位生产环境慢服务中占用 CPU 最多的函数。 跨版本追踪内存分配的增长情况。 故障期间借助代码行级细节排查延迟问题。 通过历史剖析数据对比,发现性能退化。
pyroscope 怎么安装和运行?
使用 Docker 在本地运行 Pyroscope 服务器: docker run -it -p 4040:4040 grafana/pyroscope 或通过 Homebrew 安装并启动服务: brew install pyroscope-io/brew/pyroscope 启动 Homebrew 服务: brew services start pyroscope
在哪里获取 pyroscope?
源代码和安装说明在 GitHub 上:https://github.com/grafana/pyroscope

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目