File tree Expand file tree Collapse file tree 2 files changed +17
-3
lines changed Expand file tree Collapse file tree 2 files changed +17
-3
lines changed Original file line number Diff line number Diff line change
1
+ import sys
1
2
from traceback import print_tb , print_exception
3
+ from .pydumpling import save_dumping
2
4
3
5
4
6
def print_traceback_and_except (dumpling_result ):
@@ -10,3 +12,13 @@ def print_traceback_and_except(dumpling_result):
10
12
print_exception (exc_type , exc_value , exc_tb )
11
13
else :
12
14
print_tb (exc_tb )
15
+
16
+
17
+ def catch_any_exception ():
18
+ original_hook = sys .excepthook
19
+
20
+ def _hook (exc_type , exc_value , exc_tb ):
21
+ save_dumping (exc_info = (exc_type , exc_value , exc_tb ))
22
+ original_hook (exc_type , exc_value , exc_tb ) # call sys original hook
23
+
24
+ sys .excepthook = _hook
Original file line number Diff line number Diff line change 11
11
__version__ = "0.1.4"
12
12
13
13
14
- def save_dumping (filename = None , tb = None ):
14
+ def save_dumping (filename = None , exc_info = None ):
15
15
try :
16
- if tb is None :
16
+ if exc_info is None :
17
17
exc_type , exc_value , exc_tb = sys .exc_info ()
18
+ else :
19
+ exc_type , exc_value , exc_tb = exc_info
18
20
19
21
if filename is None :
20
- filename = "%s: %d.dump" % (
22
+ filename = "%s- %d.dump" % (
21
23
exc_tb .tb_frame .f_code .co_filename , exc_tb .tb_frame .f_lineno )
22
24
23
25
fake_tb = FakeTraceback (exc_tb )
You can’t perform that action at this time.
0 commit comments