xdebug格式的缩进函数跟踪

xtrace的Python项目详细描述


此模块从调用时起将函数跟踪打印到标准输出:

import xtrace
xtrace.start()
...
xtrace.stop()

也可以从命令行调用xtrace作为模块:

python -m xtrace <script.py> [param] ...

或用作独立脚本:

python xtrace.py <script.py> [param] ...

输出格式受xdebug函数跟踪的启发,可能会 与其合并http://xdebug.org/docs/execution_trace以与兼容 php检查工具。但是我没有足够的时间来打磨它,所以感觉 如果你知道如何拉近他们,可以免费发送补丁。

此代码已发布到公共域中。享受吧!

历史记录

  • 0.5 - fix major crash when function in executed script tried to read variables in its global scope
  • 0.4 - added beep function which beeps in DEBUG mode when excited
  • 0.3 - fix AttributeError when running from console (issue #2)
  • 0.2 - added version info, support running from command line, moved main functions into a class to isolate used variables in local namespace
  • 0.1 - initial release

学分

amaury forget d'arc,了解python内部的有价值的信息

调试

查看在标准之上产生的各种内部事件 python提供的数据,启用调试选项:

import xtrace
xtrace.DEBUG = True

这将为每个有趣的事件调用beepfunctiton。随便吧 用自己的方法覆盖它(monkeypatch),以过滤消息、转发等。

已知的python错误

以意外方式影响跟踪输出的python错误:

http://bugs.python.org/issue15005(仅限python 2,linux)
  • 从子进程调用捕获的stdout已损坏 在打印到屏幕的跟踪功能下

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

推荐PyPI第三方库


热门话题
如果SQL server执行计划是流式传输数据,那么调用next()时Java ResultSet对象将如何反应?   java为什么水平滚动条永远不会出现在JTable上?   java如何在Android项目中添加SDK模块   绿脚:爪哇。lang.ClassCastException:无法将障碍物投射到球投射物   xslt需要在Java1.4.2中使用SaxonB(版本9.1.0.8)方面的帮助   java Apache HTTP客户端下载SOAP响应的一部分   为Java 9计划的“过滤传入序列化数据”解决了数据反序列化安全漏洞吗?   java如何使用drools对列表中的元素进行分组   java从匿名类到lambda表达式   Java中是否有不可变的单链表实现?   java动态添加按钮以滚动查看安卓   java GAE:无法为模块http请求设置管理员登录凭据   java如何在Hibernate 5 CriteriaBuilder中使用条件条件获取计数   java如何将JSON+HAL响应解析为POJO   java如何获取计算器程序,对两个以上的数字进行加、减、乘、除   java Thymeleaf+静态资源+@ResponseBody