[英]How to force python's VM to print a stack trace?
我正在處理一個python編寫的服務器,它會鎖定並停止工作,包括記錄。 我想知道是否有一個python相當於java的“kill -3”信號,至少打印出當前的堆棧跟蹤。
使用faulthandler模塊。 https://pypi.python.org/pypi/faulthandler/
import faulthandler
faulthandler.register(signal.SIGUSR1)
這在Python的解釋器循環的C級信號處理之外工作,所以它甚至在Python解釋器本身掛起等待其他東西時也能工作。
import signal, traceback
def quit_handler(signum,frame):
traceback.print_stack()
signal.signal(signal.SIGQUIT,quit_handler)
您可以在此問題中找到(僅限Unix)解決方案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.