ホームページ >バックエンド開発 >Python チュートリアル >Pythonで実装方法のコールスタックログを記録するにはどうすればよいですか?

Pythonで実装方法のコールスタックログを記録するにはどうすればよいですか?

伊谢尔伦
伊谢尔伦オリジナル
2017-06-28 13:48:491617ブラウズ

この記事では、Pythonの詳細なコールスタックログを記録する方法を主に紹介します。これには、Pythonコールスタックログに関連するテクニックが含まれており、必要な場合はそれを参照してください。 Python で詳細なコールスタックを記録する方法。皆さんの参考に共有してください。具体的な実装方法は以下の通りです:

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()

Output:

aaa1.py(59da4d0f1fd8995571be7ca42afbd6ee:27)->aaa1.py(main:24)->aaa1.py(bar:21) )->aaa1.py(foo:18)->こんにちは世界

以上がPythonで実装方法のコールスタックログを記録するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。