python监控工具 profiler - py-spy、austin

用于 CPython 的帧堆栈采样器

      

      

 

概要 • 安装 • 使用 • 备忘单 • 兼容性 • 为什么选择​编辑Austin  • 示例 • 贡献

给我买杯咖啡


这是我发现的最好的 Python 分析器。它是跨平台的,不需要我更改正在分析的代码,并且它的输出可以直接通过管道传输到flamegraph.pl。我刚刚用它来找出工作中 SQLAlchemy 的严重滥用,这种滥用在每天结束时都会在代码中运行,现在我可以早点回家了。——

gthm on lobste.rs

如果人们正在寻找分析器,Austin 看起来很酷。快来看看吧!

——Michael Kennedy 在Python Bytes 180上

关注​编辑​​编辑


概要

Austin 是一个用纯 C 编写的 CPython Python 框架堆栈采样器。通过读取 CPython 解释器虚拟内存空间来收集样本,以检索有关当前正在运行的线程以及正在执行的框架堆栈的信息。因此,可以使用 Austin 轻松制作强大的统计分析器,这些分析器对目标应用程序的影响最小,并且不需要任何仪器。

奥斯汀的主要特点是:

  • 零仪表;
  • 影响最小;
  • 快速且轻便;
  • 时间和内存分析;
  • 内置对多进程应用程序的支持(例如mod_wsgi)。

将 Austin 变成功能齐全的分析器的最简单方法是与VS Code 扩展一起使用,或将其与FlameGraphSpeedscope结合使用。但是,Austin 的简单输出格式可以传输到任何其他外部或自定义工具中进行进一步处理。例如,查看以下 Python TUI

请参阅Peter Norton 撰写的《开源 Python 分析器调查》 以获得有关 Austin 的总体概述。

继续阅读以获取更多工具创意和示例!


💜
Austin 是一个免费的开源项目。我们投入了大量精力来开发它,以确保最佳性能并与最新的 Python 版本保持同步。如果您觉得它有用,请考虑赞助这个项目
。🙏


安装

Austin 可从PyPI和最流行平台的主要软件存储库安装。查看最新发布页面,了解预编译的二进制文件和安装包。

在所有支持的平台和架构上,Austin 可以通过 PyPI 安装,pip或者pipx通过命令

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>pip install austin-dist
</code></span></span></span></span>

或者

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>pipx install austin-dist
</code></span></span></span></span>

在 Linux 上,可以使用Snap Storeautotools或 snap 进行安装。后者将使用单个命令自动执行方法的步骤。在 Debian 派生的发行版上,可以使用 Aptitude 从官方存储库安装 Austin。Anaconda 用户可以从Conda Forge安装 Austin 。autotools

在 Windows 上,可以使用ChocolateyScoop从命令行轻松安装 Austin 。或者,您可以从最新发布页面下载安装程序 。

在 macOS 上,可以使用Homebrew从命令行轻松安装 Austin。Anaconda用户可以从Conda Forge安装 Austin 。

对于任何其他平台,从源代码编译 Austin 就像克隆存储库并运行 C 编译器一样简单。发布页面有许多预编译的二进制文件,可以解压并使用。

autotools

使用 安装 Austinautotools相当于通常的./configure和手指体操。唯一的依赖项是标准 C 库。在继续以下步骤之前,请确保您的系统上安装了。有关如何执行此操作的详细信息,请参阅您的发行make 版 的文档。make installautotools

git clone --depth=1 https://github.com/P403n1x87/austin.git && cd austin
autoreconf --install
./configure
make
make install
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

强化学习曾小健

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值