跳转到主要内容

Python异常的人读HTML回溯

项目描述

Python更友好的错误信息

C++等其他语言已经获得了非常有用的错误信息和诊断,并提供了如何解决问题的提示,但Python仍然停留在裸露的堆栈跟踪上,非常令人畏惧,并且往往不太有帮助。

TraceRite TraceRite回溯显示了用户程序终止的位置。

TraceRite隐藏了无关的IPython/notebook内部信息,简洁地显示了发生了什么(程序被中断)以及发生的位置。这可以通过将KeyboardInterrupt消息转换为更合适的内容,如“您已停止程序”,来进一步改进,但上面看到的是默认处理,从未考虑过此类错误。

尽管IPython和Google Colab的开发者已经对其回溯进行了调整以改进,但很明显还有很多工作要做

Colab Google Colab的标准回溯。

即使是经验丰富的程序员,也必须逐字阅读大量文本才能找到错误的相关细节。

在更复杂的情况下,可能会出现许多屏幕的常规回溯,TraceRite生成可滚动的输出,重点关注相关细节,同时在每个可能相关的框架上提供变量检查器

嵌套异常 TraceRite 输出带有嵌套异常。

用法

在您的笔记本开头

%pip install tracerite
%load_ext tracerite

背景

此项目是一个概念验证,展示了以人类可读的方式格式化错误消息的现代方法。使用启发式方法(默认情况下)隐藏(无关)的堆栈帧,并显示问题的实际位置。由于在程序崩溃后无法找到变量的内容,因此每个堆栈帧中集成的变量检查器可以快速揭示源错误中提到的变量的问题。还注意添加相关的细节,例如笔记本输入字段编号和通常不在 Python 追踪回溯中出现的类名,同时隐藏过长的路径和其他杂项。

所有输出都是 HTML 格式,因此仅在 Jupyter 笔记本和其他基于浏览器的系统中工作(这对 Web 开发框架来说应该很有用)。这允许交互式操作,并且比文本控制台有更好的布局。

许可证

公有领域或等效。

需要帮助

我无法自己维护这个项目。如果您喜欢更友好的跟踪回溯的想法,请提供您的开发帮助!欢迎提交拉取请求,但如果您能将整个项目作为自己的项目来承担,那就更好了。

到目前为止,这个项目还没有经过适当的打磨以供发布。然而,它足够有用,以至于我总是在我的笔记本中使用它,并且它确实使 Python 开发体验更加顺畅。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

tracerite-1.1.1.tar.gz (269.5 kB 查看哈希值)

上传时间

构建分布

tracerite-1.1.1-py3-none-any.whl (12.3 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面