Class: Google::Apis::ComputeAlpha::HttpRetryPolicy

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb

Overview

The retry policy associates with HttpRouteRule

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ HttpRetryPolicy

Returns a new instance of HttpRetryPolicy.



10375
10376
10377
# File 'generated/google/apis/compute_alpha/classes.rb', line 10375

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#num_retriesFixnum

Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1. Corresponds to the JSON property numRetries

Returns:

  • (Fixnum)


10337
10338
10339
# File 'generated/google/apis/compute_alpha/classes.rb', line 10337

def num_retries
  @num_retries
end

#per_try_timeoutGoogle::Apis::ComputeAlpha::Duration

A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". Range is approximately 10, 000 years. Corresponds to the JSON property perTryTimeout



10345
10346
10347
# File 'generated/google/apis/compute_alpha/classes.rb', line 10345

def per_try_timeout
  @per_try_timeout
end

#retry_conditionsArray<String>

Specfies one or more conditions when this retry rule applies. Valid values are:

  • 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams.
  • gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. -
  • connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts.
  • retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409.
  • refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry.
  • cancelledLoadbalancer will retry if the gRPC status code in the response header is set to cancelled
  • deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded
  • resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted
  • unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable Corresponds to the JSON property retryConditions

Returns:

  • (Array<String>)


10373
10374
10375
# File 'generated/google/apis/compute_alpha/classes.rb', line 10373

def retry_conditions
  @retry_conditions
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



10380
10381
10382
10383
10384
# File 'generated/google/apis/compute_alpha/classes.rb', line 10380

def update!(**args)
  @num_retries = args[:num_retries] if args.key?(:num_retries)
  @per_try_timeout = args[:per_try_timeout] if args.key?(:per_try_timeout)
  @retry_conditions = args[:retry_conditions] if args.key?(:retry_conditions)
end