ConnectionRetryPolicy 클래스
- 상속
-
azure.core.pipeline.policies._retry.RetryPolicyConnectionRetryPolicy
생성자
ConnectionRetryPolicy(**kwargs)
메서드
configure_retries |
다시 시도 설정을 구성합니다. |
get_backoff_time |
현재 백오프 시간을 반환합니다. |
get_retry_after |
Retry-After 값을 초 단위로 가져옵니다. |
increment |
재시도 카운터를 증분합니다. |
is_exhausted |
재시도가 남았는지 확인합니다. |
is_retry |
메서드/상태 코드를 다시 시도할 수 있는지 확인합니다. 허용되는 총 재시도 횟수, Retry-After 헤더를 준수할지 여부, 이 헤더가 있는지 여부, 반환된 상태 코드가 앞에서 언급한 헤더의 존재 여부에 따라 다시 시도될 상태 코드 목록에 있는지 여부와 같은 허용 목록 및 제어 변수를 기반으로 합니다. 동작은 다음과 같습니다.
|
no_retries |
재시도를 사용하지 않도록 설정합니다. |
parse_retry_after |
Retry-After 구문 분석하고 초 단위로 값을 가져오는 도우미입니다. |
send |
PipelineRequest 개체를 다음 정책으로 보냅니다. 필요한 경우 다시 시도 설정을 사용합니다. 또한 여러 번의 다시 시도에 걸쳐 있는 절대 클라이언트 쪽 시간 제한을 적용합니다. |
sleep |
재시도 사이에 절전 모드로 전환합니다. 이 메서드는 서버의 |
update_context |
파이프라인 컨텍스트에서 재시도 기록을 업데이트. |
configure_retries
다시 시도 설정을 구성합니다.
configure_retries(options: Dict[str, Any]) -> Dict[str, Any]
매개 변수
Name | Description |
---|---|
options
필수
|
컨텍스트에서 인수를 키워드(keyword). |
반환
형식 | Description |
---|---|
다시 시도에 대한 설정 및 기록을 포함하는 받아쓰기입니다. |
get_backoff_time
현재 백오프 시간을 반환합니다.
get_backoff_time(settings: Dict[str, Any]) -> float
매개 변수
Name | Description |
---|---|
settings
필수
|
다시 시도 설정입니다. |
반환
형식 | Description |
---|---|
현재 백오프 값입니다. |
get_retry_after
Retry-After 값을 초 단위로 가져옵니다.
get_retry_after(response: PipelineResponse[Any, AllHttpResponseType]) -> float | None
매개 변수
Name | Description |
---|---|
response
필수
|
PipelineResponse 개체 |
반환
형식 | Description |
---|---|
Retry-After 값(초)입니다. |
increment
재시도 카운터를 증분합니다.
increment(settings: Dict[str, Any], response: PipelineRequest[HTTPRequestType] | PipelineResponse[HTTPRequestType, AllHttpResponseType] | None = None, error: Exception | None = None) -> bool
매개 변수
Name | Description |
---|---|
settings
필수
|
다시 시도 설정입니다. |
response
|
파이프라인 응답 개체입니다. 기본값: None
|
error
|
요청 중에 발생한 오류 또는 응답이 성공적으로 수신된 경우 None입니다. 기본값: None
|
반환
형식 | Description |
---|---|
더 많은 재시도를 사용할 수 있는 경우 재시도를 사용할 수 있는지 여부 True이고, 그렇지 않으면 False입니다. |
is_exhausted
재시도가 남았는지 확인합니다.
is_exhausted(settings: Dict[str, Any]) -> bool
매개 변수
Name | Description |
---|---|
settings
필수
|
다시 시도 설정 |
반환
형식 | Description |
---|---|
False이면 다시 시도합니다. True이면 다시 시도합니다. |
is_retry
메서드/상태 코드를 다시 시도할 수 있는지 확인합니다.
허용되는 총 재시도 횟수, Retry-After 헤더를 준수할지 여부, 이 헤더가 있는지 여부, 반환된 상태 코드가 앞에서 언급한 헤더의 존재 여부에 따라 다시 시도될 상태 코드 목록에 있는지 여부와 같은 허용 목록 및 제어 변수를 기반으로 합니다.
동작은 다음과 같습니다.
-
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
매개 변수
Name | Description |
---|---|
settings
필수
|
다시 시도 설정입니다. |
response
필수
|
PipelineResponse 개체 |
반환
형식 | Description |
---|---|
true이면 메서드/상태 코드를 다시 시도할 수 있습니다. False이면 다시 시도할 수 없습니다. |
no_retries
재시도를 사용하지 않도록 설정합니다.
no_retries() -> ClsRetryPolicy
반환
형식 | Description |
---|---|
재시도를 사용하지 않도록 설정한 재시도 정책입니다. |
parse_retry_after
Retry-After 구문 분석하고 초 단위로 값을 가져오는 도우미입니다.
parse_retry_after(retry_after: str) -> float
매개 변수
Name | Description |
---|---|
retry_after
필수
|
Retry-After 헤더 |
반환
형식 | Description |
---|---|
Retry-After 값(초)입니다. |
send
PipelineRequest 개체를 다음 정책으로 보냅니다. 필요한 경우 다시 시도 설정을 사용합니다. 또한 여러 번의 다시 시도에 걸쳐 있는 절대 클라이언트 쪽 시간 제한을 적용합니다.
send(request)
매개 변수
Name | Description |
---|---|
request
필수
|
PipelineRequest 개체 |
반환
형식 | Description |
---|---|
PipelineResponse를 반환하거나 최대 재시도를 초과하면 오류가 발생합니다. |
예외
형식 | Description |
---|---|
최대 재시도를 초과했습니다. |
|
지정된 시간 제한이 초과되었습니다. |
|
인증에 실패했습니다. |
sleep
재시도 사이에 절전 모드로 전환합니다.
이 메서드는 서버의 Retry-After
응답 헤더를 준수하고 요청된 시간을 절전 모드로 설정합니다. 이 값이 없으면 지수 백오프를 사용합니다. 기본적으로 백오프 요소는 0이고 이 메서드는 즉시 반환됩니다.
sleep(settings: Dict[str, Any], transport: HttpTransport[HTTPRequestType, HTTPResponseType], response: PipelineResponse[HTTPRequestType, HTTPResponseType] | None = None) -> None
매개 변수
Name | Description |
---|---|
settings
필수
|
다시 시도 설정입니다. |
transport
필수
|
HTTP 전송 형식입니다. |
response
|
PipelineResponse 개체입니다. 기본값: None
|
update_context
파이프라인 컨텍스트에서 재시도 기록을 업데이트.
update_context(context: PipelineContext, retry_settings: Dict[str, Any]) -> None
매개 변수
Name | Description |
---|---|
context
필수
|
파이프라인 컨텍스트입니다. |
retry_settings
필수
|
다시 시도 설정입니다. |
특성
BACKOFF_MAX
최대 백오프 시간입니다.
BACKOFF_MAX = 120
next
다음 정책 또는 전송(정책으로 래핑됨)에 대한 포인터입니다. 파이프라인을 만들 때 설정됩니다.
next: HTTPPolicy[HTTPRequestType, HTTPResponseType]
Azure SDK for Python