奥斯汀基于文本的顶级用户界面

austin-tui的Python项目详细描述



Austin TUI

Austin

GitHub Actions: TestsTravis CIPyPILICENSE

SynopsisInstallationUsageCompatibilityContribute

Buy Me A Coffee

概要

pythonttui是一个类似于top的基于文本的Austin用户界面,是用 纯Python。最初计划作为一个示例应用程序来展示奥斯汀的用途, 由于非常受欢迎,它被提升为一个成熟的项目。在

Austin TUI

标题显示正在分析的应用程序的信息, 与它的PID一样,用于调用它的命令行以及 它正在使用的CPU和内存量,以系统监视器样式显示。在

安装

Austin TUI可以直接从PyPI安装

pip install austin-tui --upgrade

NOTE为了使TUI正常工作,Austin2二进制文件必须位于 PATH环境变量。参见Austin installation说明 了解如何在平台上轻松安装Austin。在

使用

一旦安装了Austin和Austin TUI,就可以开始使用它们了 马上就来。如果您想启动并分析Python脚本,可以说 myscript.py,你能做到的

^{pr2}$

或者,如果myscript.py是可执行脚本

austin-tui myscript.py

与Austin一样,TUI也可以附加到正在运行的Python应用程序。分析 例如,运行中的WSGI服务器的所有进程的帧堆栈 进程的父进程和do保持

sudo austin-tui -Cp <pid>

-C选项将指示Austin查找Python子进程,而您 将能够通过箭头键导航。在

The TUI is based on python-curses. The version included with the standard Windows installations of Python is broken so it won't work out of the box. A solution is to install the the wheel of the port to Windows from this page. Wheel files can be installed directly with pip, as described in the linked page.

全模式

默认情况下,austintui为每个堆栈显示最后一次看到的堆栈的统计信息 刷新UI时的进程和线程(大约每秒钟一次)。这是 类似于top对系统上所有正在运行的进程的操作。在

Austin TUI - Default mode

如果要查看所有收集的统计信息,以及帧堆栈 表示为根树,可以按F进入Full模式。这个 最后一次看到的堆栈将被突出显示,以便您也可以获得该信息 在此模式下可用。在

Austin TUI - Full mode

保存统计信息

浏览一个正在运行的Python应用程序是很好的,但是在很多情况下,您可能会想要 保存收集的数据以供进一步的脱机分析(例如,您可以 希望将其表示为火焰图)。在任何时候,只要你想倾倒 将收集到的数据放到一个文件中,可以按S键和一个包含所有 将在工作目录中为您生成示例,前缀为 austin_后面跟一个时间戳。TUI将通知成功 右下角的操作。在

Austin TUI - Save notification

兼容性

AustinTui已经用Python3.6-3.9进行了测试,并且已经知道可以在 LinuxMacOSWindows。在

由于Austin TUI使用Austin收集样本,因此此处也适用同样的注释:

Due to the System Integrity Protection introduced in MacOS with El Capitan, Austin cannot profile Python processes that use an executable located in the /bin folder, even with sudo. Hence, either run the interpreter from a virtual environment or use a Python interpreter that is installed in, e.g., /Applications or via brew with the default prefix (/usr/local). Even in these cases, though, the use of sudo is required.

贡献

如果你喜欢Austin TUI并且你觉得它很有用,有很多方法可以让你 贡献。在

如果你想帮助开发,那就看看开放的问题 看看你面前的contributing guidelines 打开拉取请求。在

您也可以通过成为 发起人和/或buying me a coffee 在BMC上或是在 PayPal.Me。在

Buy Me A Coffee

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JFrame中的Java多线程   java Servlet异常映射   java无法从输出流读取   swing Java带来的小程序GUI问题   java什么原因导致错误“'void'类型此处不允许”以及如何修复它?   Java选择器select(长)与selectNow的区别   java自定义arraylist<mygames>获得不同   java Icepdf注释让页面消失   java反向整数数组   java I在生成同步“无法解析配置的所有依赖项”时遇到此错误:app:debugRuntimeClasspath   多个虚拟机上的java线程访问单个DB实例上的表,有时会导致性能低下和异常   swing更改Java中的默认按钮,使其看起来“更好”   java慢速MQ主题订阅。并行化不能提高性能   java运行Boggle Solver需要一个多小时。我的代码怎么了?   数据库中的java循环与应用程序中的java循环   正则表达式匹配${123…456}并在Java中提取2个数字?   java如何制作我们软件的试用版   Java内存参数计算   从另一个类调用方法时出现java问题