如何在python中的if语句中记录手动引发的异常

2024-09-02 05:25:19 发布

您现在位置:Python中文网/ 问答频道 /正文

简单地说,我有一段代码如下所示:

if some_condition_that_evals_to_True:
    raise ValueError("Error message")

我要做的是插入一个日志记录语句来记录整个异常,但这样做只会保存记录器消息:

^{pr2}$

有人知道如何保存包括ValueError在内的整个错误消息吗?在

编辑:

以下是我试图重现的:

if some_condition_that_evals_to_True:
    try:
        raise ValueError("Error with value")
    except ValueError:
        logger.exception("Logging Error with Value")
        raise 

我想用另一种方式来回答这个问题:我想用一种更圆滑的方式来表达我的行为?在


Tags: to代码true消息ifthatwith方式
1条回答
网友
1楼 · 发布于 2024-09-02 05:25:19

使用logging module时,请尝试stack_info关键字参数:

import logging
logging.basicConfig(filename='example.log',level=logging.DEBUG)
if True:
    logging.error('Error Message', stack_info=True)
    raise ValueError('Custom Error Message')

运行此命令将显示以下内容:

^{pr2}$

相关问题 更多 >