我经常不得不处理调试。有时我设置了一个断点,但是我知道为时已晚,我们必须重新开始。而且,在开始调试之前,我准备数据,清除数据库中不必要的记录。所有这些都是为了忘记使用看似无害的方法并重新开始整个过程。事实是您必须使用遗留代码,这有时很难理解,这使情况变得复杂。是否可以更好地理解混乱的代码?但是,如果我们能比编写它的人更快地理解这样的代码呢?认识PyTrace是时间旅行调试跟踪器
与传统调试器的主要区别:- 一次会话录制一次,您可以播放无数次。
- 现在,您不必害怕忘记单击单步执行,您可以随时返回并转到感兴趣的功能。
- 使用`print`没有更多意义。所有变量在每个时间在检查器中可见。
此外,使用内置的火焰图,您可以快速“深入”感兴趣的方法并查看实际发生的情况:
[Command] +单击以放大感兴趣的功能[Shift] +单击该方法,转移片刻,函数即将返回时。热键教程:(以文本形式)在运行时记录的内容:- 局部变量
- 传入和返回值
- 自录制开始以来的时间
- 调用堆栈
同样,在调试器启动时,源文件的内容将被写入重播文件。为了尝试您的项目:
1.安装pip软件包:pip install pycrunch-trace
2.添加装饰器 跟踪 关于感兴趣的方法:from pycrunch_trace.client.api import trace
@trace
def run():
some_code()
3.运行代码!重放将记录在工作目录中。可以使用以下Web应用程序进行查看:app.pytrace.com(数据不会发送到任何地方,所有录制工作都在浏览器本地进行)我通常将@trace
属性添加到Django View方法中。互动演示
我建议通过交互式演示来熟悉所有功能。参考文献
Github:Pip软件包Web应用程序,用于查看记录的会话Web站点:https://pytrace.com/主要功能视频: