编程语言
首页 > 编程语言> > 更改python的默认回溯行为包括来自项目路径的更多代码?

更改python的默认回溯行为包括来自项目路径的更多代码?

作者:互联网

我正在运行一个中等大小的django项目,每当发生错误时都会打印回溯,但是Django模块的许多功能都在哪里.

但是我自己的项目代码中的实际罪魁祸首,它只有一行,并且由于回溯深度限制而隐藏了有用的上下文.所以我想通过模块路径而不是调用深度来过滤调用堆栈.

如果你没有看到这个问题,我有an very similar example in Java.我需要的是确保业务逻辑代码在异常中预先显示.

虽然我知道traceback.print_exc(),但你需要在try …中包装每个代码.

是否有可能改变python的默认回溯行为,因此django的调用堆栈更少,我自己的代码是更大的部分?

解决方法:

每当出现未处理的异常时,这就是Python调用来执行打印的功能

sys.excepthook(type, value, traceback)

type:异常类

value:未处理的异常实例

traceback:一个trackeback对象;与sys.last_traceback中存储的内容相同

Read more

标签:python,django,callstack,error-handling,traceback
来源: https://codeday.me/bug/20190628/1313802.html