ConnectionRetryPolicy Classe

Herança
azure.core.pipeline.policies._retry.RetryPolicy
ConnectionRetryPolicy

Construtor

ConnectionRetryPolicy(**kwargs)

Métodos

configure_retries

Configura as definições de repetição.

get_backoff_time

Devolve a hora de trás atual.

get_retry_after

Obtenha o valor de Retry-After em segundos.

increment

Incremente os contadores de repetição.

is_exhausted

Verifica se restam repetições.

is_retry

Verifica se o método/código de estado é reativado.

Com base em listas de permissões e variáveis de controlo, como o número total de repetições a permitir, se deve respeitar o cabeçalho Retry-After, se este cabeçalho está presente e se o código de estado devolvido está na lista de códigos de estado a serem repetidos na presença do cabeçalho mencionado anteriormente.

O comportamento é:

  •   If status_code < 400: don't retry
    
  •   Else if Retry-After present: retry
    
  •   Else: retry based on the safe status code list ([408, 429, 500, 502, 503, 504])
    
no_retries

Desative as repetições.

parse_retry_after

Programa auxiliar para analisar Retry-After e obter valor em segundos.

send

Envia o objeto PipelineRequest para a política seguinte. Utiliza as definições de repetição, se necessário. Também impõe um tempo limite absoluto do lado do cliente que abrange várias tentativas de repetição.

sleep

Suspensão entre tentativas de repetição.

Este método respeitará o cabeçalho de resposta de Retry-After um servidor e suspenderá a duração do tempo pedido. Se isso não estiver presente, utilizará um recuo exponencial. Por predefinição, o fator de backoff é 0 e este método será devolvido imediatamente.

update_context

Atualizações histórico de repetições no contexto do pipeline.

configure_retries

Configura as definições de repetição.

configure_retries(options: Dict[str, Any]) -> Dict[str, Any]

Parâmetros

Name Description
options
Necessário

argumentos de palavra-chave do contexto.

Devoluções

Tipo Description

Um ditado que contém definições e histórico para repetições.

get_backoff_time

Devolve a hora de trás atual.

get_backoff_time(settings: Dict[str, Any]) -> float

Parâmetros

Name Description
settings
Necessário

As definições de repetição.

Devoluções

Tipo Description

O valor de recuo atual.

get_retry_after

Obtenha o valor de Retry-After em segundos.

get_retry_after(response: PipelineResponse[Any, AllHttpResponseType]) -> float | None

Parâmetros

Name Description
response
Necessário

O objeto PipelineResponse

Devoluções

Tipo Description

Valor de Retry-After em segundos.

increment

Incremente os contadores de repetição.

increment(settings: Dict[str, Any], response: PipelineRequest[HTTPRequestType] | PipelineResponse[HTTPRequestType, AllHttpResponseType] | None = None, error: Exception | None = None) -> bool

Parâmetros

Name Description
settings
Necessário

As definições de repetição.

response

Um objeto de resposta do pipeline.

valor predefinido: None
error

Foi encontrado um erro durante o pedido ou Nenhum se a resposta tiver sido recebida com êxito.

valor predefinido: None

Devoluções

Tipo Description

Se alguma tentativa de repetição está disponível Verdadeiro se estiverem disponíveis mais tentativas de repetição, caso contrário Falso

is_exhausted

Verifica se restam repetições.

is_exhausted(settings: Dict[str, Any]) -> bool

Parâmetros

Name Description
settings
Necessário

as definições de repetição

Devoluções

Tipo Description

Falso se tiver mais repetições. Verdadeiro se as repetições forem esgotadas.

is_retry

Verifica se o método/código de estado é reativado.

Com base em listas de permissões e variáveis de controlo, como o número total de repetições a permitir, se deve respeitar o cabeçalho Retry-After, se este cabeçalho está presente e se o código de estado devolvido está na lista de códigos de estado a serem repetidos na presença do cabeçalho mencionado anteriormente.

O comportamento é:

  •   If status_code < 400: don't retry
    
  •   Else if Retry-After present: retry
    
  •   Else: retry based on the safe status code list ([408, 429, 500, 502, 503, 504])
    
is_retry(settings: Dict[str, Any], response: PipelineResponse[HTTPRequestType, AllHttpResponseType]) -> bool

Parâmetros

Name Description
settings
Necessário

As definições de repetição.

response
Necessário

O objeto PipelineResponse

Devoluções

Tipo Description

Verdadeiro se o método/código de estado for reativado. Falso se não for reativado.

no_retries

Desative as repetições.

no_retries() -> ClsRetryPolicy

Devoluções

Tipo Description

Uma política de repetição com repetições desativada.

parse_retry_after

Programa auxiliar para analisar Retry-After e obter valor em segundos.

parse_retry_after(retry_after: str) -> float

Parâmetros

Name Description
retry_after
Necessário
str

cabeçalho Retry-After

Devoluções

Tipo Description

Valor de Retry-After em segundos.

send

Envia o objeto PipelineRequest para a política seguinte. Utiliza as definições de repetição, se necessário. Também impõe um tempo limite absoluto do lado do cliente que abrange várias tentativas de repetição.

send(request)

Parâmetros

Name Description
request
Necessário

O objeto PipelineRequest

Devoluções

Tipo Description

Devolve o PipelineResponse ou gera o erro se as repetições máximas forem excedidas.

Exceções

Tipo Description

Tentativas máximas excedidas.

O tempo limite especificado foi excedido.

Falha na autenticação.

sleep

Suspensão entre tentativas de repetição.

Este método respeitará o cabeçalho de resposta de Retry-After um servidor e suspenderá a duração do tempo pedido. Se isso não estiver presente, utilizará um recuo exponencial. Por predefinição, o fator de backoff é 0 e este método será devolvido imediatamente.

sleep(settings: Dict[str, Any], transport: HttpTransport[HTTPRequestType, HTTPResponseType], response: PipelineResponse[HTTPRequestType, HTTPResponseType] | None = None) -> None

Parâmetros

Name Description
settings
Necessário

As definições de repetição.

transport
Necessário

O tipo de transporte HTTP.

response

O objeto PipelineResponse.

valor predefinido: None

update_context

Atualizações histórico de repetições no contexto do pipeline.

update_context(context: PipelineContext, retry_settings: Dict[str, Any]) -> None

Parâmetros

Name Description
context
Necessário

O contexto do pipeline.

retry_settings
Necessário

As definições de repetição.

Atributos

BACKOFF_MAX

Tempo máximo de recuo.

BACKOFF_MAX = 120

next

Ponteiro para a política seguinte ou um transporte (moldado como uma política). Será definido na criação do pipeline.

next: HTTPPolicy[HTTPRequestType, HTTPResponseType]