Python如何记录调用堆栈日志实现方法?


本文摘自php中文网,作者伊谢尔伦,侵删。

这篇文章主要介绍了Python记录详细调用堆栈日志的方法,涉及Python调用堆栈日志的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了Python记录详细调用堆栈日志的方法。分享给大家供大家参考。具体实现方法如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

import sys

import os

def detailtrace(info):

  retStr = ""

  curindex=0

  f = sys._getframe()

  f = f.f_back    # first frame is detailtrace, ignore it

  while hasattr(f, "f_code"):

    co = f.f_code

    retStr = "%s(%s:%s)->"%(os.path.basename(co.co_filename),

         co.co_name,

         f.f_lineno) + retStr

    f = f.f_back

  print retStr+info

def foo():

  detailtrace("hello world")

def bar():

  foo()

def main():

  bar()

if name == "main":

  main()

输出:

aaa1.py(<module>:27)->aaa1.py(main:24)->aaa1.py(bar:21)->aaa1.py(foo:18)->hello world

以上就是Python如何记录调用堆栈日志实现方法?的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python安装以后怎么用

怎么卸载Python 3.6?

详解Python中get函数的用法(附代码)

11个Python入门的知识点

Python放射的代码实现

怎么查看Python的安装目录

Python中列表,元组 ,集合 ,字典之间的区别

Python如何计算n的阶乘

Python可以开发什么

Python画月亮的代码是什么?

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...