Получите количество попыток повторения от клиента boto3 - PullRequest
0 голосов
/ 26 марта 2020

По умолчанию boto3 (AWS Python SDK) реализует стратегию инкрементного повторного отката для (всех?) Клиентов. Это можно настроить с помощью записи retries.max_attempts в Botocore Config . Это хорошо работает для меня во многих сценариях ios. Но у меня нет никаких следов о том, сколько попыток действительно потребовалось, кроме случаев, когда вы можете заметить их в задержках клиента.

Итак, есть ли способ последовательно получить количество повторных попыток, использованных после успешного запроса к клиенту boto3?

Проверка кода выглядит так handler.context.attempt_number сохранил это, но я не знаю, как этого достичь после успешного вызова клиента.

1 Ответ

1 голос
/ 26 марта 2020

Похоже, что ResponseMetada от каждого клиента приходит с такой информацией: -)

Пример минимального кода:

import logging
import boto3

client = boto3.client('s3')
response = client.list_buckets()
logging.info("Retry Attempts: %d", response['ResponseMetadata']['RetryAttempts'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...