2019-09-10 00:54:28 +00:00
|
|
|
# Created By: Virgil Dupras
|
|
|
|
# Created On: 2011-04-19
|
|
|
|
# Copyright 2015 Hardcoded Software (http://www.hardcoded.net)
|
2020-01-01 02:16:27 +00:00
|
|
|
#
|
|
|
|
# This software is licensed under the "GPLv3" License as described in the "LICENSE" file,
|
|
|
|
# which should be included with this package. The terms are also available at
|
2019-09-10 00:54:28 +00:00
|
|
|
# http://www.gnu.org/licenses/gpl-3.0.html
|
|
|
|
|
|
|
|
import sys
|
|
|
|
import traceback
|
|
|
|
|
2020-01-01 02:16:27 +00:00
|
|
|
|
2019-09-10 00:54:28 +00:00
|
|
|
# Taken from http://bzimmer.ziclix.com/2008/12/17/python-thread-dumps/
|
|
|
|
def stacktraces():
|
|
|
|
code = []
|
2021-08-21 21:56:27 +00:00
|
|
|
for thread_id, stack in sys._current_frames().items():
|
|
|
|
code.append("\n# ThreadID: %s" % thread_id)
|
2019-09-10 00:54:28 +00:00
|
|
|
for filename, lineno, name, line in traceback.extract_stack(stack):
|
|
|
|
code.append('File: "%s", line %d, in %s' % (filename, lineno, name))
|
|
|
|
if line:
|
|
|
|
code.append(" %s" % (line.strip()))
|
2020-01-01 02:16:27 +00:00
|
|
|
|
|
|
|
return "\n".join(code)
|