Pyringe是一个python调试器,它可以附加到正在运行的进程,检查它们的状态,甚至在运行时注入python代码。有了pyringe,你可以列出线程,得到tracebacks,检查函数的locals/globals/builtins,所有这些都无需你在编写程序时准备。 Pyringe内部使用了gdb来完成一些重要功能,因此你需要有一个最近编译的gdb(7.4版本以上,并且编译时需要–with-python参数)。 为什么PDB(Python自带的调试器)不适用?PDB非常棒,但是在一些情况下并不适用。 比如当Python自己崩溃,在一些C扩展上卡住了,或者你想在程序运行时检查数据,在以上情况下,PDB(和其他所有在解释器中运行的调试器)几乎无用,没有pyringe你只能使用print语句来调试。Pyringe处理这些情况是相当方便的。 github主页:https://github.com/google/pyringe (非 Google 官方项目,作者在Google的个人项目) |
|