pyroscope - 连续分析平台!

Created at: 2020-12-31 13:47:19
Language: Go
License: Apache-2.0

高温计

去测试状态 JS 测试状态 去报告 Apache 2 许可证 FOSSA 状态 最新发布  docker GoDoc

网站 文档 演示 示例 Slack

用其他语言阅读本文。

中文 (Simplified)

什么是热像仪?

Pyroscope 是一个开源的连续分析平台。它将帮助你:

  • 查找代码中的性能问题和瓶颈
  • 解决 CPU 使用率高的问题
  • 了解应用程序的调用树
  • 跟踪随时间的变化

🔥 Pyroscope 现场演示 🔥

热像仪 GIF 演示

特征

  • 可以存储来自多个应用程序的多年分析数据
  • 你可以一次查看多年的数据或放大特定事件
  • 低 CPU 开销
  • 高效压缩,低磁盘空间需求
  • 活泼的用户界面

分两步在本地添加 Pyroscope 服务器:

Pyroscope 支持所有主要架构,并且非常易于安装。例如,这里是你在 mac 上安装的方式:

# install pyroscope
brew install pyroscope-io/brew/pyroscope

# start pyroscope server:
pyroscope server

通过 Pyroscope 代理(特定于语言)将数据发送到服务器

有关如何将 Pyroscope 代理添加到你的代码的更多文档,请参阅我们网站上的代理文档

示例代码

我们还有关于如何一起运行服务器和代理的特定于语言的示例(使用 Docker)

部署图

部署图

文档

有关如何将 Pyroscope 与其他编程语言一起使用、在 Linux 上安装它或在生产环境中使用它的更多信息,请查看我们的文档:

下载

你可以从我们的下载页面 下载适用于 macOS、linux 和 Docker 的最新版本的pyroscope 。

支持的集成

  • [x] 红宝石(通过
    rbspy
  • [x] Python(通过
    py-spy
  • [x] 去(通过
    pprof
  • [x] Linux eBPF(
    profile.py
    来自
    bcc-tools
  • [x] PHP(通过
    phpspy
  • [x] .NET(通过
    dotnet trace
  • [x] Java(通过
    async-profiler
  • [ ] 节点(寻求贡献者)

让我们知道你希望在我们的问题我们的 slack 中看到哪些其他集成。

捐赠

由于许多人的出色工作,Pyroscope 成为可能,包括但不限于:

  • Brendan Gregg——火焰图的发明者
  • Julia Evans — rbspy 的创建者 — Ruby 采样分析器
  • Vladimir Agafonkin——flamebearer 的创造者——快速火焰图渲染器
  • Ben Frederickson — py-spy 的创建者 — Python 采样分析器
  • Adam Saponara — phpspy 的创建者 — PHP 采样分析器
  • Alexei Starovoitov、Brendan Gregg 和许多其他使 Linux 内核中基于 BPF 的分析成为可能的人

贡献

要开始贡献,请查看我们的贡献指南

感谢 Pyroscope 的贡献者!