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 The following load balancer can use either regional or global health check: * Internal TCP/UDP load balancer The following load balancers require regional health check: * Internal HTTP(S) load balancer * Backend service-based network load balancer Traffic Director and the following load balancers require global health check: * External HTTP( S) load balancer * TCP proxy load balancer * SSL proxy load balancer The following load balancer require legacy HTTP health checks: * Target pool-based network load balancer 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, see Health checks overview.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ HealthCheck

Returns a new instance of HealthCheck.



12810
12811
12812
# File 'lib/google/apis/compute_alpha/classes.rb', line 12810

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)


12678
12679
12680
# File 'lib/google/apis/compute_alpha/classes.rb', line 12678

def check_interval_sec
  @check_interval_sec
end

#creation_timestampString

[Output Only] Creation timestamp in 3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


12683
12684
12685
# File 'lib/google/apis/compute_alpha/classes.rb', line 12683

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)


12689
12690
12691
# File 'lib/google/apis/compute_alpha/classes.rb', line 12689

def description
  @description
end

#grpc_health_checkGoogle::Apis::ComputeAlpha::GrpcHealthCheck

Corresponds to the JSON property grpcHealthCheck



12694
12695
12696
# File 'lib/google/apis/compute_alpha/classes.rb', line 12694

def grpc_health_check
  @grpc_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)


12700
12701
12702
# File 'lib/google/apis/compute_alpha/classes.rb', line 12700

def healthy_threshold
  @healthy_threshold
end

#http2_health_checkGoogle::Apis::ComputeAlpha::Http2HealthCheck

Corresponds to the JSON property http2HealthCheck



12705
12706
12707
# File 'lib/google/apis/compute_alpha/classes.rb', line 12705

def http2_health_check
  @http2_health_check
end

#http_health_checkGoogle::Apis::ComputeAlpha::HttpHealthCheck

Corresponds to the JSON property httpHealthCheck



12710
12711
12712
# File 'lib/google/apis/compute_alpha/classes.rb', line 12710

def http_health_check
  @http_health_check
end

#https_health_checkGoogle::Apis::ComputeAlpha::HttpsHealthCheck

Corresponds to the JSON property httpsHealthCheck



12715
12716
12717
# File 'lib/google/apis/compute_alpha/classes.rb', line 12715

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)


12721
12722
12723
# File 'lib/google/apis/compute_alpha/classes.rb', line 12721

def id
  @id
end

#kindString

Type of the resource. Corresponds to the JSON property kind

Returns:

  • (String)


12726
12727
12728
# File 'lib/google/apis/compute_alpha/classes.rb', line 12726

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



12732
12733
12734
# File 'lib/google/apis/compute_alpha/classes.rb', line 12732

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 with RFC1035. 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)


12743
12744
12745
# File 'lib/google/apis/compute_alpha/classes.rb', line 12743

def name
  @name
end

#regionString

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

Returns:

  • (String)


12749
12750
12751
# File 'lib/google/apis/compute_alpha/classes.rb', line 12749

def region
  @region
end

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

Returns:

  • (String)


12754
12755
12756
# File 'lib/google/apis/compute_alpha/classes.rb', line 12754

def self_link
  @self_link
end

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

Returns:

  • (String)


12759
12760
12761
# File 'lib/google/apis/compute_alpha/classes.rb', line 12759

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


12773
12774
12775
# File 'lib/google/apis/compute_alpha/classes.rb', line 12773

def source_regions
  @source_regions
end

#ssl_health_checkGoogle::Apis::ComputeAlpha::SslHealthCheck

Corresponds to the JSON property sslHealthCheck



12778
12779
12780
# File 'lib/google/apis/compute_alpha/classes.rb', line 12778

def ssl_health_check
  @ssl_health_check
end

#tcp_health_checkGoogle::Apis::ComputeAlpha::TcpHealthCheck

Corresponds to the JSON property tcpHealthCheck



12783
12784
12785
# File 'lib/google/apis/compute_alpha/classes.rb', line 12783

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)


12790
12791
12792
# File 'lib/google/apis/compute_alpha/classes.rb', line 12790

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 match type field. Corresponds to the JSON property type

Returns:

  • (String)


12797
12798
12799
# File 'lib/google/apis/compute_alpha/classes.rb', line 12797

def type
  @type
end

#udp_health_checkGoogle::Apis::ComputeAlpha::UdpHealthCheck

Corresponds to the JSON property udpHealthCheck



12802
12803
12804
# File 'lib/google/apis/compute_alpha/classes.rb', line 12802

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)


12808
12809
12810
# File 'lib/google/apis/compute_alpha/classes.rb', line 12808

def unhealthy_threshold
  @unhealthy_threshold
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
# File 'lib/google/apis/compute_alpha/classes.rb', line 12815

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