повторите логику поверх вызова метода объекта пакета в python

Я использую пакет python azure-keyvault для аутентификации в azure. Я пытаюсь добавить логику повтора к вызову API, показанному ниже.

      import os
from azure.keyvault.secrets import SecretClient
from azure.identity import DefaultAzureCredential

keyVaultName = os.environ["KEY_VAULT_NAME"]
KVUri = f"https://{keyVaultName}.vault.azure.net"

credential = DefaultAzureCredential()
client = SecretClient(vault_url=KVUri, credential=credential)

secretName = input("Input a name for your secret > ")
secretValue = input("Input a value for your secret > ")

print(f"Creating a secret in {keyVaultName} called '{secretName}' with the value '{secretValue}' ...")

client.set_secret(secretName, secretValue)

print(" done.")

print(f"Retrieving your secret from {keyVaultName}.")

retrieved_secret = client.get_secret(secretName)

Я хочу использовать повторную попытку ( https://pypi.org/project/retrying/ ) пакета python, как показано ниже:

      @retry(wait_exponential_multiplier=1000, wait_exponential_max=10000)
def wait_exponential_1000():
    print "Wait 2^x * 1000 milliseconds between each retry, up to 10 seconds, then 10 seconds afterwards"

и мой вопрос, как я могу добавить @retry(...)к вызову метода, например client.get_secret(secretName), куда clientявляется объектом импортированного пакета?

Спасибо

0 ответов

Другие вопросы по тегам