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.



10330
10331
10332
# File 'generated/google/apis/compute_alpha/classes.rb', line 10330

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)


10292
10293
10294
# File 'generated/google/apis/compute_alpha/classes.rb', line 10292

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



10300
10301
10302
# File 'generated/google/apis/compute_alpha/classes.rb', line 10300

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>)


10328
10329
10330
# File 'generated/google/apis/compute_alpha/classes.rb', line 10328

def retry_conditions
  @retry_conditions
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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