Class: Google::Apis::ComputeAlpha::HealthCheck

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

Overview

Represents a health check resource. Google Compute Engine has two health check resources:

  • Regional
  • Global These health check resources can be used for load balancing and for autohealing VMs in a managed instance group (MIG). Load balancing Health check requirements vary depending on the type of load balancer. For details about the type of health check supported for each load balancer and corresponding backend type, see Health checks overview: Load balancer guide. Autohealing in MIGs The health checks that you use for autohealing VMs in a MIG can be either regional or global. For more information, see Set up an application health check and autohealing. For more information, seeHealth checks overview.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ HealthCheck

Returns a new instance of HealthCheck.



20893
20894
20895
# File 'lib/google/apis/compute_alpha/classes.rb', line 20893

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

Instance Attribute Details

#check_interval_secFixnum

How often (in seconds) to send a health check. The default value is 5 seconds. Corresponds to the JSON property checkIntervalSec

Returns:

  • (Fixnum)


20747
20748
20749
# File 'lib/google/apis/compute_alpha/classes.rb', line 20747

def check_interval_sec
  @check_interval_sec
end

#creation_timestampString

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

Returns:

  • (String)


20753
20754
20755
# File 'lib/google/apis/compute_alpha/classes.rb', line 20753

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)


20759
20760
20761
# File 'lib/google/apis/compute_alpha/classes.rb', line 20759

def description
  @description
end

#grpc_health_checkGoogle::Apis::ComputeAlpha::GrpcHealthCheck

Corresponds to the JSON property grpcHealthCheck



20764
20765
20766
# File 'lib/google/apis/compute_alpha/classes.rb', line 20764

def grpc_health_check
  @grpc_health_check
end

#grpc_tls_health_checkGoogle::Apis::ComputeAlpha::GrpctlsHealthCheck

Corresponds to the JSON property grpcTlsHealthCheck



20769
20770
20771
# File 'lib/google/apis/compute_alpha/classes.rb', line 20769

def grpc_tls_health_check
  @grpc_tls_health_check
end

#healthy_thresholdFixnum

A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2. Corresponds to the JSON property healthyThreshold

Returns:

  • (Fixnum)


20775
20776
20777
# File 'lib/google/apis/compute_alpha/classes.rb', line 20775

def healthy_threshold
  @healthy_threshold
end

#http2_health_checkGoogle::Apis::ComputeAlpha::Http2HealthCheck

Corresponds to the JSON property http2HealthCheck



20780
20781
20782
# File 'lib/google/apis/compute_alpha/classes.rb', line 20780

def http2_health_check
  @http2_health_check
end

#http_health_checkGoogle::Apis::ComputeAlpha::HttpHealthCheck

Corresponds to the JSON property httpHealthCheck



20785
20786
20787
# File 'lib/google/apis/compute_alpha/classes.rb', line 20785

def http_health_check
  @http_health_check
end

#https_health_checkGoogle::Apis::ComputeAlpha::HttpsHealthCheck

Corresponds to the JSON property httpsHealthCheck



20790
20791
20792
# File 'lib/google/apis/compute_alpha/classes.rb', line 20790

def https_health_check
  @https_health_check
end

#idFixnum

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

Returns:

  • (Fixnum)


20796
20797
20798
# File 'lib/google/apis/compute_alpha/classes.rb', line 20796

def id
  @id
end

#kindString

Output only. Type of the resource. Corresponds to the JSON property kind

Returns:

  • (String)


20801
20802
20803
# File 'lib/google/apis/compute_alpha/classes.rb', line 20801

def kind
  @kind
end

#log_configGoogle::Apis::ComputeAlpha::HealthCheckLogConfig

Configuration of logging on a health check. If logging is enabled, logs will be exported to Stackdriver. Corresponds to the JSON property logConfig



20807
20808
20809
# File 'lib/google/apis/compute_alpha/classes.rb', line 20807

def log_config
  @log_config
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. For example, a name that is 1-63 characters long, matches the regular expression [a-z]([-a-z0-9]*[a-z0-9])?, and otherwise complies with RFC1035. This regular expression describes a name where the first character is a lowercase letter, and all following characters are a dash, lowercase letter, or digit, except the last character, which isn't a dash. Corresponds to the JSON property name

Returns:

  • (String)


20818
20819
20820
# File 'lib/google/apis/compute_alpha/classes.rb', line 20818

def name
  @name
end

#regionString

Output only. [Output Only] Region where the health check resides. Not applicable to global health checks. Corresponds to the JSON property region

Returns:

  • (String)


20825
20826
20827
# File 'lib/google/apis/compute_alpha/classes.rb', line 20825

def region
  @region
end

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

Returns:

  • (String)


20830
20831
20832
# File 'lib/google/apis/compute_alpha/classes.rb', line 20830

def self_link
  @self_link
end

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

Returns:

  • (String)


20836
20837
20838
# File 'lib/google/apis/compute_alpha/classes.rb', line 20836

def self_link_with_id
  @self_link_with_id
end

#source_regionsArray<String>

The list of cloud regions from which health checks are performed. If any regions are specified, then exactly 3 regions should be specified. The region names must be valid names of Google Cloud regions. This can only be set for global health check. If this list is non-empty, then there are restrictions on what other health check fields are supported and what other resources can use this health check:

  • SSL, HTTP2, and GRPC protocols are not supported.
  • The TCP request field is not supported.
  • The proxyHeader field for HTTP, HTTPS, and TCP is not supported.
  • The checkIntervalSec field must be at least 30.
  • The health check cannot be used with BackendService nor with managed instance group auto-healing. Corresponds to the JSON property sourceRegions

Returns:

  • (Array<String>)


20855
20856
20857
# File 'lib/google/apis/compute_alpha/classes.rb', line 20855

def source_regions
  @source_regions
end

#ssl_health_checkGoogle::Apis::ComputeAlpha::SslHealthCheck

Corresponds to the JSON property sslHealthCheck



20860
20861
20862
# File 'lib/google/apis/compute_alpha/classes.rb', line 20860

def ssl_health_check
  @ssl_health_check
end

#tcp_health_checkGoogle::Apis::ComputeAlpha::TcpHealthCheck

Corresponds to the JSON property tcpHealthCheck



20865
20866
20867
# File 'lib/google/apis/compute_alpha/classes.rb', line 20865

def tcp_health_check
  @tcp_health_check
end

#timeout_secFixnum

How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec. Corresponds to the JSON property timeoutSec

Returns:

  • (Fixnum)


20872
20873
20874
# File 'lib/google/apis/compute_alpha/classes.rb', line 20872

def timeout_sec
  @timeout_sec
end

#typeString

Specifies the type of the healthCheck, either TCP,SSL, HTTP, HTTPS,HTTP2 or GRPC. Exactly one of the protocol-specific health check fields must be specified, which must matchtype field. Corresponds to the JSON property type

Returns:

  • (String)


20880
20881
20882
# File 'lib/google/apis/compute_alpha/classes.rb', line 20880

def type
  @type
end

#udp_health_checkGoogle::Apis::ComputeAlpha::UdpHealthCheck

Corresponds to the JSON property udpHealthCheck



20885
20886
20887
# File 'lib/google/apis/compute_alpha/classes.rb', line 20885

def udp_health_check
  @udp_health_check
end

#unhealthy_thresholdFixnum

A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2. Corresponds to the JSON property unhealthyThreshold

Returns:

  • (Fixnum)


20891
20892
20893
# File 'lib/google/apis/compute_alpha/classes.rb', line 20891

def unhealthy_threshold
  @unhealthy_threshold
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



20898
20899
20900
20901
20902
20903
20904
20905
20906
20907
20908
20909
20910
20911
20912
20913
20914
20915
20916
20917
20918
20919
20920
20921
20922
# File 'lib/google/apis/compute_alpha/classes.rb', line 20898

def update!(**args)
  @check_interval_sec = args[:check_interval_sec] if args.key?(:check_interval_sec)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @grpc_health_check = args[:grpc_health_check] if args.key?(:grpc_health_check)
  @grpc_tls_health_check = args[:grpc_tls_health_check] if args.key?(:grpc_tls_health_check)
  @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold)
  @http2_health_check = args[:http2_health_check] if args.key?(:http2_health_check)
  @http_health_check = args[:http_health_check] if args.key?(:http_health_check)
  @https_health_check = args[:https_health_check] if args.key?(:https_health_check)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @log_config = args[:log_config] if args.key?(:log_config)
  @name = args[:name] if args.key?(:name)
  @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)
  @source_regions = args[:source_regions] if args.key?(:source_regions)
  @ssl_health_check = args[:ssl_health_check] if args.key?(:ssl_health_check)
  @tcp_health_check = args[:tcp_health_check] if args.key?(:tcp_health_check)
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
  @type = args[:type] if args.key?(:type)
  @udp_health_check = args[:udp_health_check] if args.key?(:udp_health_check)
  @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold)
end