ConnectionRetryPolicy Classe
- Ereditarietà
-
azure.core.pipeline.policies._retry.RetryPolicyConnectionRetryPolicy
Costruttore
ConnectionRetryPolicy(**kwargs)
Metodi
configure_retries |
Configura le impostazioni di ripetizione dei tentativi. |
get_backoff_time |
Restituisce il tempo di backoff corrente. |
get_retry_after |
Ottenere il valore di Retry-After in secondi. |
increment |
Incrementare i contatori dei tentativi. |
is_exhausted |
Verifica se vengono eseguiti tentativi. |
is_retry |
Verifica se il codice metodo/stato è riprovabile. In base alle variabili consentite e di controllo, ad esempio il numero di tentativi totali da consentire, se rispettare l'intestazione Retry-After, se questa intestazione è presente e se il codice di stato restituito è nell'elenco dei codici di stato da ripetere sulla presenza dell'intestazione precedente. Il comportamento è:
|
no_retries |
Disabilitare i tentativi. |
parse_retry_after |
Helper per analizzare Retry-After e ottenere il valore in secondi. |
send |
Invia l'oggetto PipelineRequest al criterio successivo. Usa le impostazioni di ripetizione dei tentativi, se necessario. Applica anche un timeout lato client assoluto che si estende su più tentativi di ripetizione. |
sleep |
Sospensione tra tentativi di ripetizione. Questo metodo rispetta l'intestazione di risposta di |
update_context |
Aggiornamenti cronologia dei tentativi nel contesto della pipeline. |
configure_retries
Configura le impostazioni di ripetizione dei tentativi.
configure_retries(options: Dict[str, Any]) -> Dict[str, Any]
Parametri
Nome | Descrizione |
---|---|
options
Necessario
|
argomenti delle parole chiave dal contesto. |
Restituisce
Tipo | Descrizione |
---|---|
Un dict contenente impostazioni e cronologia per i tentativi. |
get_backoff_time
Restituisce il tempo di backoff corrente.
get_backoff_time(settings: Dict[str, Any]) -> float
Parametri
Nome | Descrizione |
---|---|
settings
Necessario
|
Impostazioni di ripetizione dei tentativi. |
Restituisce
Tipo | Descrizione |
---|---|
Valore di backoff corrente. |
get_retry_after
Ottenere il valore di Retry-After in secondi.
get_retry_after(response: PipelineResponse[Any, AllHttpResponseType]) -> float | None
Parametri
Nome | Descrizione |
---|---|
response
Necessario
|
Oggetto PipelineResponse |
Restituisce
Tipo | Descrizione |
---|---|
Valore di Retry-After in secondi. |
increment
Incrementare i contatori dei tentativi.
increment(settings: Dict[str, Any], response: PipelineRequest[HTTPRequestType] | PipelineResponse[HTTPRequestType, AllHttpResponseType] | None = None, error: Exception | None = None) -> bool
Parametri
Nome | Descrizione |
---|---|
settings
Necessario
|
Impostazioni di ripetizione dei tentativi. |
response
|
Oggetto di risposta della pipeline. valore predefinito: None
|
error
|
Errore durante la richiesta o Nessuna se la risposta è stata ricevuta correttamente. valore predefinito: None
|
Restituisce
Tipo | Descrizione |
---|---|
Se è disponibile un tentativo di ripetizione dei tentativi True se sono disponibili altri tentativi, False in caso contrario, False |
is_exhausted
Verifica se vengono eseguiti tentativi.
is_exhausted(settings: Dict[str, Any]) -> bool
Parametri
Nome | Descrizione |
---|---|
settings
Necessario
|
impostazioni di ripetizione dei tentativi |
Restituisce
Tipo | Descrizione |
---|---|
False se hanno più tentativi. True se i tentativi sono esauriti. |
is_retry
Verifica se il codice metodo/stato è riprovabile.
In base alle variabili consentite e di controllo, ad esempio il numero di tentativi totali da consentire, se rispettare l'intestazione Retry-After, se questa intestazione è presente e se il codice di stato restituito è nell'elenco dei codici di stato da ripetere sulla presenza dell'intestazione precedente.
Il 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
Parametri
Nome | Descrizione |
---|---|
settings
Necessario
|
Impostazioni di ripetizione dei tentativi. |
response
Necessario
|
Oggetto PipelineResponse |
Restituisce
Tipo | Descrizione |
---|---|
True se il codice metodo/stato è riprovabile. False se non è possibile riprovare. |
no_retries
Disabilitare i tentativi.
no_retries() -> ClsRetryPolicy
Restituisce
Tipo | Descrizione |
---|---|
Criteri di ripetizione dei tentativi con tentativi disabilitati. |
parse_retry_after
Helper per analizzare Retry-After e ottenere il valore in secondi.
parse_retry_after(retry_after: str) -> float
Parametri
Nome | Descrizione |
---|---|
retry_after
Necessario
|
intestazione Retry-After |
Restituisce
Tipo | Descrizione |
---|---|
Valore di Retry-After in secondi. |
send
Invia l'oggetto PipelineRequest al criterio successivo. Usa le impostazioni di ripetizione dei tentativi, se necessario. Applica anche un timeout lato client assoluto che si estende su più tentativi di ripetizione.
send(request)
Parametri
Nome | Descrizione |
---|---|
request
Necessario
|
Oggetto PipelineRequest |
Restituisce
Tipo | Descrizione |
---|---|
Restituisce l'errore PipelineResponse o genera un errore se sono stati superati i tentativi massimi. |
Eccezioni
Tipo | Descrizione |
---|---|
È stato superato il numero massimo di tentativi. |
|
Superato il timeout specificato. |
|
Autenticazione non riuscita. |
sleep
Sospensione tra tentativi di ripetizione.
Questo metodo rispetta l'intestazione di risposta di Retry-After
un server e dorme la durata dell'ora richiesta. Se non è presente, userà un backoff esponenziale. Per impostazione predefinita, il fattore backoff è 0 e questo metodo restituirà immediatamente.
sleep(settings: Dict[str, Any], transport: HttpTransport[HTTPRequestType, HTTPResponseType], response: PipelineResponse[HTTPRequestType, HTTPResponseType] | None = None) -> None
Parametri
Nome | Descrizione |
---|---|
settings
Necessario
|
Impostazioni di ripetizione dei tentativi. |
transport
Necessario
|
Tipo di trasporto HTTP. |
response
|
Oggetto PipelineResponse. valore predefinito: None
|
update_context
Aggiornamenti cronologia dei tentativi nel contesto della pipeline.
update_context(context: PipelineContext, retry_settings: Dict[str, Any]) -> None
Parametri
Nome | Descrizione |
---|---|
context
Necessario
|
Contesto della pipeline. |
retry_settings
Necessario
|
Impostazioni di ripetizione dei tentativi. |
Attributi
BACKOFF_MAX
Tempo di backoff massimo.
BACKOFF_MAX = 120
next
Puntatore al criterio successivo o a un trasporto (eseguito come criterio). Verrà impostato alla creazione della pipeline.
next: HTTPPolicy[HTTPRequestType, HTTPResponseType]
Azure SDK for Python