我正在将 Python 异常消息打印到日志文件中logging.error:
logging.error
import logging try: 1/0 except ZeroDivisionError as e: logging.error(e) # ERROR:root:division by zero
是否可以打印有关异常和生成它的代码的更多详细信息,而不仅仅是异常字符串?行号或堆栈跟踪之类的东西会很棒。
logger.exception将在错误消息旁边输出堆栈跟踪。
logger.exception
例如:
import logging try: 1/0 except ZeroDivisionError: logging.exception("message")
输出:
ERROR:root:message Traceback (most recent call last): File "<stdin>", line 2, in <module> ZeroDivisionError: integer division or modulo by zero
“请注意,在Python 3中,您必须在部件logging.exception内部except调用该方法。如果您在任意位置调用此方法,您可能会遇到一个奇怪的异常。文档对此提出了警告。”
logging.exception
except