使用Python的'with open()'写日志,如何将异常写入日志?
Using Python's 'with open()' To Write a Log, How Can I Write Exceptions to my Log?
我正在为命令 window 中 运行 的 python 脚本设置日志文件,以便记录脚本的所有输入和输出。我正在使用:
with open("file.txt") as file:
以便在发生异常时它仍然会保存所有已写入的文本。
但是我想知道是否有办法让它也记录异常?基本上是写最后一条消息,然后关闭文件作为退出功能?
关于 open() 本身的文档似乎很少。但我不确定这是否意味着它的使用受到限制。
为什么不显式捕获异常并重新抛出它:
with open("file.txt") as file:
try:
<do_something>
except Exception as e:
file.write(e)
raise
如果异常是通过尝试写入文件生成的,那么挑战就来了。
我正在为命令 window 中 运行 的 python 脚本设置日志文件,以便记录脚本的所有输入和输出。我正在使用:
with open("file.txt") as file:
以便在发生异常时它仍然会保存所有已写入的文本。
但是我想知道是否有办法让它也记录异常?基本上是写最后一条消息,然后关闭文件作为退出功能?
关于 open() 本身的文档似乎很少。但我不确定这是否意味着它的使用受到限制。
为什么不显式捕获异常并重新抛出它:
with open("file.txt") as file:
try:
<do_something>
except Exception as e:
file.write(e)
raise
如果异常是通过尝试写入文件生成的,那么挑战就来了。