调试和分析用于记录调用方名称、args+值、执行时间等的函数和类的decorator。消除了大量样板代码。

log_calls的Python项目详细描述


日志调用是一个python 3.3+decorator,可以打印很多有用的信息 关于对修饰函数、方法和属性的调用。装潢师可以 写入stdout,另一个流或文件,或写入记录器。记录通话 提供编写自己的调试消息和轻松“转储”的方法。 变量和表达式与其值配对。它可以装饰个人 函数、方法和属性;但它也可以通过编程方式修饰 整个类和类层次结构的可调用成员,甚至整个模块的可调用成员, 只需要一行代码-这可以大大加快学习新的代码库。

简而言之,日志调用可以避免您编写、重写、复制、粘贴和 调整了很多特别的、仅用于调试的样板代码,它可以让your 没有杂乱的代码基。

对于每个对修饰函数或方法的调用,日志调用可以显示:

  • 呼叫方(实际上,完整的呼叫链返回到另一个日志调用 呼叫者,因此显示的链中没有间隙)
  • 传递给函数或方法的参数,以及使用的任何默认值
  • 使用缩进嵌套调用
  • 呼叫的号码(无论是1st呼叫, 第2个nd,第103个rd,…)
  • 返回值
  • 执行所需的时间
  • 还有更多!

这些和其他功能是可选的和可配置的设置,可以是 通过关键字参数以及en为每个修饰的可调用函数指定 对于一组共享相同设置的可调用函数,masse。你可以检查一下 并使用与 关键字,或者使用一个类似dict的接口,该接口的关键字是关键字。

日志调用还可以收集分析数据和统计信息,在运行时可以访问, 例如:

  • 调用函数的次数
  • 函数所用的总时间
  • 函数的整个调用历史记录(参数、经过的时间、返回值、调用方, 以及更多),以csv格式的文本提供,如果Pandas 作为DataFrame安装。

该包包含另外两个装饰程序:

  • 记录历史,一个精简版的日志调用, 只收集通话记录和统计信息,不输出任何消息;
  • used_unused_keywords允许函数或方法在每次调用时轻松确定, 它的哪些关键字参数实际上是由调用方提供的, 它收到了它们的默认值。

注意:这个包需要cpython实现,因为它做出了假设 关于堆栈帧内部,它可能在其他解释器中无效。

请参阅http://www.pythonhosted.org/log_calls/上的联机文档, 或者在log calls/docs/目录中,查看用法、详细信息、示例和tips und tricks

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

推荐PyPI第三方库


热门话题
java如何将jasper集成到jhipster项目中   java无法忽略lombok注释   关于tomcat日志的java问题   java@Autowired未设置字段>NullPointerException   GUI提交按钮不工作   java气泡和选择排序   java如何编写规则来匹配两个数组?   java如何找出某个字符在字符串中的第一次、第二次或第三次出现?   java通过字符串引用id   javascript在网络视图中加载在线图表   java保留web应用程序中用户更改的日志   在安卓中尝试使用Mandrill SMTP发送电子邮件时出现java错误   用java语言将a2b4c5等字符串转换为AABBCCCCC的程序是什么?   java无需TODO即可删除所有注释   java JMX MBean在应用程序部署时自动注册   java如何使用JSON解析从任何url解析数据   java@transactional注释类使用代理包装,但未创建事务   JavaFx转换和打印