我想用logging.exception
或类似的东西记录来自except
块的堆栈信息,但我希望输出转到DEBUG,而不是ERROR。这方面的用例是,我希望在一个流上报告异常发生的事实,并在另一个流中报告堆栈跟踪信息:
import logging
try:
raise RuntimeError('terrible horrible error')
except Exception:
logging.warning('an exception happened')
logging.exception('error occurred here')
这将生成输出:
警告:root:发生异常
错误:root:此处发生错误
Traceback(上次调用(:
文件"C: \用户\。。。\PycharmProjects\project\main.py";,第31行,在<模块>
引发RuntimeError("可怕的错误"(
RuntimeError:可怕的错误
但我希望带有堆栈跟踪的第二条消息转到DEBUG。
有可能吗?
loggging.debug(traceback.format_exc())
我想这就是你想要的?