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.



18343
18344
18345
# File 'lib/google/apis/compute_beta/classes.rb', line 18343

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)


18240
18241
18242
# File 'lib/google/apis/compute_beta/classes.rb', line 18240

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)


18246
18247
18248
# File 'lib/google/apis/compute_beta/classes.rb', line 18246

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)


18258
18259
18260
# File 'lib/google/apis/compute_beta/classes.rb', line 18258

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)


18273
18274
18275
# File 'lib/google/apis/compute_beta/classes.rb', line 18273

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)


18280
18281
18282
# File 'lib/google/apis/compute_beta/classes.rb', line 18280

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)


18287
18288
18289
# File 'lib/google/apis/compute_beta/classes.rb', line 18287

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)


18302
18303
18304
# File 'lib/google/apis/compute_beta/classes.rb', line 18302

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)


18313
18314
18315
# File 'lib/google/apis/compute_beta/classes.rb', line 18313

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)


18322
18323
18324
# File 'lib/google/apis/compute_beta/classes.rb', line 18322

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)


18331
18332
18333
# File 'lib/google/apis/compute_beta/classes.rb', line 18331

def region
  @region
end

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

Returns:

  • (String)


18336
18337
18338
# File 'lib/google/apis/compute_beta/classes.rb', line 18336

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)


18341
18342
18343
# File 'lib/google/apis/compute_beta/classes.rb', line 18341

def self_link_with_id
  @self_link_with_id
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



18348
18349
18350
18351
18352
18353
18354
18355
18356
18357
18358
18359
18360
18361
# File 'lib/google/apis/compute_beta/classes.rb', line 18348

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