Class HealthCheckConfig
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<HealthCheckConfig.Builder,
HealthCheckConfig>
Public DNS and HTTP namespaces only. A complex type that contains settings for an optional health check. If
you specify settings for a health check, Cloud Map associates the health check with the records that you specify in
DnsConfig
.
If you specify a health check configuration, you can specify either HealthCheckCustomConfig
or
HealthCheckConfig
but not both.
Health checks are basic Route 53 health checks that monitor an Amazon Web Services endpoint. For information about pricing for health checks, see Amazon Route 53 Pricing.
Note the following about configuring health checks.
- A and AAAA records
-
If
DnsConfig
includes configurations for bothA
andAAAA
records, Cloud Map creates a health check that uses the IPv4 address to check the health of the resource. If the endpoint tthat's specified by the IPv4 address is unhealthy, Route 53 considers both theA
andAAAA
records to be unhealthy. - CNAME records
-
You can't specify settings for
HealthCheckConfig
when theDNSConfig
includesCNAME
for the value ofType
. If you do, theCreateService
request will fail with anInvalidInput
error. - Request interval
-
A Route 53 health checker in each health-checking Amazon Web Services Region sends a health check request to an endpoint every 30 seconds. On average, your endpoint receives a health check request about every two seconds. However, health checkers don't coordinate with one another. Therefore, you might sometimes see several requests in one second that's followed by a few seconds with no health checks at all.
- Health checking regions
-
Health checkers perform checks from all Route 53 health-checking Regions. For a list of the current Regions, see Regions.
- Alias records
-
When you register an instance, if you include the
AWS_ALIAS_DNS_NAME
attribute, Cloud Map creates a Route 53 alias record. Note the following:-
Route 53 automatically sets
EvaluateTargetHealth
to true for alias records. WhenEvaluateTargetHealth
is true, the alias record inherits the health of the referenced Amazon Web Services resource. such as an ELB load balancer. For more information, see EvaluateTargetHealth. -
If you include
HealthCheckConfig
and then use the service to register an instance that creates an alias record, Route 53 doesn't create the health check.
-
- Charges for health checks
-
Health checks are basic Route 53 health checks that monitor an Amazon Web Services endpoint. For information about pricing for health checks, see Amazon Route 53 Pricing.
- See Also:
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic HealthCheckConfig.Builder
builder()
final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final Integer
The number of consecutive health checks that an endpoint must pass or fail for Route 53 to change the current status of the endpoint from unhealthy to healthy or the other way around.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final int
hashCode()
final String
The path that you want Route 53 to request when performing health checks.static Class
<? extends HealthCheckConfig.Builder> Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.final HealthCheckType
type()
The type of health check that you want to create, which indicates how Route 53 determines whether an endpoint is healthy.final String
The type of health check that you want to create, which indicates how Route 53 determines whether an endpoint is healthy.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
type
The type of health check that you want to create, which indicates how Route 53 determines whether an endpoint is healthy.
You can't change the value of
Type
after you create a health check.You can create the following types of health checks:
-
HTTP: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTP request and waits for an HTTP status code of 200 or greater and less than 400.
-
HTTPS: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTPS request and waits for an HTTP status code of 200 or greater and less than 400.
If you specify HTTPS for the value of
Type
, the endpoint must support TLS v1.0 or later. -
TCP: Route 53 tries to establish a TCP connection.
If you specify
TCP
forType
, don't specify a value forResourcePath
.
For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
If the service returns an enum value that is not available in the current SDK version,
type
will returnHealthCheckType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtypeAsString()
.- Returns:
- The type of health check that you want to create, which indicates how Route 53 determines whether an
endpoint is healthy.
You can't change the value of
Type
after you create a health check.You can create the following types of health checks:
-
HTTP: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTP request and waits for an HTTP status code of 200 or greater and less than 400.
-
HTTPS: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTPS request and waits for an HTTP status code of 200 or greater and less than 400.
If you specify HTTPS for the value of
Type
, the endpoint must support TLS v1.0 or later. -
TCP: Route 53 tries to establish a TCP connection.
If you specify
TCP
forType
, don't specify a value forResourcePath
.
For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
-
- See Also:
-
-
typeAsString
The type of health check that you want to create, which indicates how Route 53 determines whether an endpoint is healthy.
You can't change the value of
Type
after you create a health check.You can create the following types of health checks:
-
HTTP: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTP request and waits for an HTTP status code of 200 or greater and less than 400.
-
HTTPS: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTPS request and waits for an HTTP status code of 200 or greater and less than 400.
If you specify HTTPS for the value of
Type
, the endpoint must support TLS v1.0 or later. -
TCP: Route 53 tries to establish a TCP connection.
If you specify
TCP
forType
, don't specify a value forResourcePath
.
For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
If the service returns an enum value that is not available in the current SDK version,
type
will returnHealthCheckType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtypeAsString()
.- Returns:
- The type of health check that you want to create, which indicates how Route 53 determines whether an
endpoint is healthy.
You can't change the value of
Type
after you create a health check.You can create the following types of health checks:
-
HTTP: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTP request and waits for an HTTP status code of 200 or greater and less than 400.
-
HTTPS: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTPS request and waits for an HTTP status code of 200 or greater and less than 400.
If you specify HTTPS for the value of
Type
, the endpoint must support TLS v1.0 or later. -
TCP: Route 53 tries to establish a TCP connection.
If you specify
TCP
forType
, don't specify a value forResourcePath
.
For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
-
- See Also:
-
-
resourcePath
The path that you want Route 53 to request when performing health checks. The path can be any value that your endpoint returns an HTTP status code of a 2xx or 3xx format for when the endpoint is healthy. An example file is
/docs/route53-health-check.html
. Route 53 automatically adds the DNS name for the service. If you don't specify a value forResourcePath
, the default value is/
.If you specify
TCP
forType
, you must not specify a value forResourcePath
.- Returns:
- The path that you want Route 53 to request when performing health checks. The path can be any value that
your endpoint returns an HTTP status code of a 2xx or 3xx format for when the endpoint is healthy. An
example file is
/docs/route53-health-check.html
. Route 53 automatically adds the DNS name for the service. If you don't specify a value forResourcePath
, the default value is/
.If you specify
TCP
forType
, you must not specify a value forResourcePath
.
-
failureThreshold
The number of consecutive health checks that an endpoint must pass or fail for Route 53 to change the current status of the endpoint from unhealthy to healthy or the other way around. For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
- Returns:
- The number of consecutive health checks that an endpoint must pass or fail for Route 53 to change the current status of the endpoint from unhealthy to healthy or the other way around. For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<HealthCheckConfig.Builder,
HealthCheckConfig> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode() -
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value. -
getValueForField
-
sdkFields
-