Class: Google::Apis::ComputeBeta::HealthAggregationPolicy

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

Overview

Represents a health aggregation policy. A health aggregation policy resource defines a policy to aggregate health. For more information, see Health checks overview.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ HealthAggregationPolicy

Returns a new instance of HealthAggregationPolicy.



17152
17153
17154
# File 'lib/google/apis/compute_beta/classes.rb', line 17152

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

Instance Attribute Details

#creation_timestampString

Output only. [Output Only] Creation timestamp inRFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


17049
17050
17051
# File 'lib/google/apis/compute_beta/classes.rb', line 17049

def creation_timestamp
  @creation_timestamp
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


17055
17056
17057
# File 'lib/google/apis/compute_beta/classes.rb', line 17055

def description
  @description
end

#fingerprintString

Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a HealthAggregationPolicy. An up-to-date fingerprint must be provided in order to patch the HealthAggregationPolicy; Otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the HealthAggregationPolicy. Corresponds to the JSON property fingerprint NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


17067
17068
17069
# File 'lib/google/apis/compute_beta/classes.rb', line 17067

def fingerprint
  @fingerprint
end

#healthy_percent_thresholdFixnum

Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the threshold (as a percentage) of healthy endpoints required in order to consider the aggregated health result HEALTHY. Defaults to 60. Must be in range [0, 100]. Not applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional, and will be set to the default if unspecified. Note that both this threshold and minHealthyThreshold must be satisfied in order for HEALTHY to be the aggregated result. "Endpoints" refers to network endpoints within a Network Endpoint Group or instances within an Instance Group. Corresponds to the JSON property healthyPercentThreshold

Returns:

  • (Fixnum)


17082
17083
17084
# File 'lib/google/apis/compute_beta/classes.rb', line 17082

def healthy_percent_threshold
  @healthy_percent_threshold
end

#idFixnum

Output only. [Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


17089
17090
17091
# File 'lib/google/apis/compute_beta/classes.rb', line 17089

def id
  @id
end

#kindString

Output only. [Output Only] Type of the resource. Alwayscompute# healthAggregationPolicy for health aggregation policies. Corresponds to the JSON property kind

Returns:

  • (String)


17096
17097
17098
# File 'lib/google/apis/compute_beta/classes.rb', line 17096

def kind
  @kind
end

#min_healthy_thresholdFixnum

Can only be set if the policyType field isBACKEND_SERVICE_POLICY. Specifies the minimum number of healthy endpoints required in order to consider the aggregated health result HEALTHY. Defaults to 1. Must be positive. Not applicable if the policyType field isDNB_PUBLIC_IP_POLICY. Can be mutated. This field is optional, and will be set to the default if unspecified. Note that both this threshold and healthyPercentThreshold must be satisfied in order for HEALTHY to be the aggregated result. "Endpoints" refers to network endpoints within a Network Endpoint Group or instances within an Instance Group. Corresponds to the JSON property minHealthyThreshold

Returns:

  • (Fixnum)


17111
17112
17113
# File 'lib/google/apis/compute_beta/classes.rb', line 17111

def min_healthy_threshold
  @min_healthy_threshold
end

#nameString

Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply withRFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


17122
17123
17124
# File 'lib/google/apis/compute_beta/classes.rb', line 17122

def name
  @name
end

#policy_typeString

Specifies the type of the healthAggregationPolicy. The only allowed value for global resources is DNS_PUBLIC_IP_POLICY. The only allowed value for regional resources is BACKEND_SERVICE_POLICY. Must be specified when the healthAggregationPolicy is created, and cannot be mutated. Corresponds to the JSON property policyType

Returns:

  • (String)


17131
17132
17133
# File 'lib/google/apis/compute_beta/classes.rb', line 17131

def policy_type
  @policy_type
end

#regionString

Output only. [Output Only] URL of the region where the health aggregation policy resides. This field applies only to the regional resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. Corresponds to the JSON property region

Returns:

  • (String)


17140
17141
17142
# File 'lib/google/apis/compute_beta/classes.rb', line 17140

def region
  @region
end

Output only. [Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


17145
17146
17147
# File 'lib/google/apis/compute_beta/classes.rb', line 17145

def self_link
  @self_link
end

Output only. [Output Only] Server-defined URL with id for the resource. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


17150
17151
17152
# File 'lib/google/apis/compute_beta/classes.rb', line 17150

def self_link_with_id
  @self_link_with_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



17157
17158
17159
17160
17161
17162
17163
17164
17165
17166
17167
17168
17169
17170
# File 'lib/google/apis/compute_beta/classes.rb', line 17157

def update!(**args)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
  @healthy_percent_threshold = args[:healthy_percent_threshold] if args.key?(:healthy_percent_threshold)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @min_healthy_threshold = args[:min_healthy_threshold] if args.key?(:min_healthy_threshold)
  @name = args[:name] if args.key?(:name)
  @policy_type = args[:policy_type] if args.key?(:policy_type)
  @region = args[:region] if args.key?(:region)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
end