【发布时间】:2017-12-24 21:48:49
【问题描述】:
我正在编写一个将档案上传到 AWS Glacier 的小型 Python 应用程序。在上传过程中,我调用了以下方法:
- client.initiate_multipart_upload()
- client.upload_multipart_part()
- client.complete_multipart_upload()
如果连接丢失或请求时间过长,所有这些都有可能引发许多不同的异常。
我正在使用:
except (botocore.exceptions.EndpointConnectionError, client.exceptions.RequestTimeoutException):
尝试捕获它们,在设定的一段时间后重试,并在设定的尝试次数后放弃,但有时我仍然会遇到其他未被捕获的异常。现在我已经改用毯子了
except:
声明,我对此不太满意。我的应用程序在另一个阶段检查 AWS 账户凭证、保管库名称和与 AWS 的连接,因此不需要考虑这些。有没有办法可以捕获在执行这三种方法时可能发生的所有 boto3 和 botocore 异常?
【问题讨论】:
标签: python amazon-web-services boto3 botocore