使用单个文件进行Python日志记录(函数名,文件名,行号)

使用单个文件进行Python日志记录(函数名,文件名,行号),第1张

使用单个文件进行Python日志记录(函数名,文件名,行号)

您在这里有一些边际相关的问题。

我将从最简单的开始:(3)。使用,

logging
您可以将所有调用聚集到一个日志文件或其他输出目标中:它们将按照在处理过程中发生的顺序进行。

接下来:(2)。

locals()
提供当前范围的指示。因此,在没有其他参数的方法中,您将具有
self
范围,该范围包含对当前实例的引用。困扰您的技巧是使用字典作为
%
*** 作员的RHS的字符串格式。
"%(foo)s"% bar
将被替换为
bar["foo"]
is的任何值。

最后,您可以使用一些自省技巧,类似于

pdb
可以记录更多信息的自省技巧:

def autolog(message):    "Automatically log the current function details."    import inspect, logging    # Get the previous frame in the stack, otherwise it would    # be this function!!!    func = inspect.currentframe().f_back.f_pre    # Dump the message + the name of this function to the log.    logging.debug("%s: %s in %s:%i" % (        message,         func.co_name,         func.co_filename,         func.co_firstlineno    ))

这将记录传入的消息,以及(原始)函数名称,出现定义的文件名以及该文件中的行。看一下检查-
检查活动对象
以了解更多详细信息。

正如我在前面的评论中所提到的,您还可以

pdb
随时通过插入行
import pdb;pdb.set_trace()
并重新运行程序来进入交互式调试提示符。这使您可以逐步检查代码,并根据需要检查数据。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5601750.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存