gpt4 book ai didi

python - 使用堆栈跟踪打印异常到文件

转载 作者:太空狗 更新时间:2023-10-29 20:42:03 26 4
gpt4 key购买 nike

我正在尝试将一个简单的日志放入我的脚本中。该日志应该告诉我错误在哪里以及修复脚本所需的尽可能多的信息。

我已经将 print to file str(e) 放入每个 except 中,但它提供了很少的信息来了解出了什么问题。

我怎样才能详细说明?例如,我可以在控制台中看到的整个未捕获异常文本?

try:
#code
except Exception as e:
print_to_file(log.txt,str(e))

最佳答案

试试这个,

import traceback
try:
1/0
except Exception as e:
with open('log.txt', 'a') as f:
f.write(str(e))
f.write(traceback.format_exc())

如果你想要一个更好的解决方案,应该使用 Logger 来管理你的时间戳、文件大小和旋转(做一个记录器处理程序)

这是一个带有记录器、时间戳和旋转的例子

import logging
from logging.handlers import RotatingFileHandler
import traceback

logger = logging.getLogger("Rotating Log")
logger.setLevel(logging.ERROR)
handler = RotatingFileHandler("log.txt", maxBytes=10000, backupCount=5)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)
logger.addHandler(handler)
try:
1/0
except Exception as e:
logger.error(str(e))
logger.error(traceback.format_exc())

关于python - 使用堆栈跟踪打印异常到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31636884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com