仅打印导致异常的原因列表

时间:2018-12-02 22:57:54

标签: python exception-handling

有没有一种方法可以获取导致异常的原因的列表/链 所以我可以只打印该列表,而不必追溯完整的记录 像traceback.print_exception一样?

用例是不要在错误时转储完整的堆栈跟踪,而是列出 导致足够多且更有意义的原因。

类似的东西:

MyError: Error occurred doing XYZ

homeassistant_cli.exceptions.HomeAssistantCliError: Error connecting to http://localhost:8123/api/discovery_info

requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=8123): Max retries exceeded with url: /api/discovery_info (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x106562e80>: Failed to establish a new connection: [Errno 61] Connection refused'))

而不是有时几个线程弹出屏幕。

我尝试遍历python __cause__链,但是看着traceback.print_exception似乎有很多特殊情况要处理。

0 个答案:

没有答案