@Generated(value="software.amazon.awssdk:codegen") public final class HealthCheck extends Object implements SdkPojo, Serializable, ToCopyableBuilder<HealthCheck.Builder,HealthCheck>
An object representing a container health check. Health check parameters that are specified in a container definition override any Docker health checks that exist in the container image (such as those specified in a parent image or from the image's Dockerfile).
You can view the health status of both individual containers and a task with the DescribeTasks API operation or when viewing the task details in the console.
The following describes the possible healthStatus
values for a container:
HEALTHY
-The container health check has passed successfully.
UNHEALTHY
-The container health check has failed.
UNKNOWN
-The container health check is being evaluated or there is no container health check defined.
The following describes the possible healthStatus
values for a task. The container health check status
of nonessential containers do not have an effect on the health status of a task.
HEALTHY
-All essential containers within the task have passed their health checks.
UNHEALTHY
-One or more essential containers have failed their health check.
UNKNOWN
-The essential containers within the task are still having their health checks evaluated or there
are no container health checks defined.
If a task is run manually, and not as part of a service, the task will continue its lifecycle regardless of its health status. For tasks that are part of a service, if the task reports as unhealthy then the task will be stopped and the service scheduler will replace it.
The following are notes about container health check support:
Container health checks require version 1.17.0 or greater of the Amazon ECS container agent. For more information, see Updating the Amazon ECS Container Agent.
Container health checks are supported for Fargate tasks if you are using platform version 1.1.0 or greater. For more information, see AWS Fargate Platform Versions.
Container health checks are not supported for tasks that are part of a service that is configured to use a Classic Load Balancer.
Modifier and Type | Class and Description |
---|---|
static interface |
HealthCheck.Builder |
Modifier and Type | Method and Description |
---|---|
static HealthCheck.Builder |
builder() |
List<String> |
command()
A string array representing the command that the container runs to determine if it is healthy.
|
boolean |
equals(Object obj) |
boolean |
equalsBySdkFields(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
boolean |
hasCommand()
Returns true if the Command property was specified by the sender (it may be empty), or false if the sender did
not specify the value (it will be empty).
|
int |
hashCode() |
Integer |
interval()
The time period in seconds between each health check execution.
|
Integer |
retries()
The number of times to retry a failed health check before the container is considered unhealthy.
|
List<SdkField<?>> |
sdkFields() |
static Class<? extends HealthCheck.Builder> |
serializableBuilderClass() |
Integer |
startPeriod()
The optional grace period within which to provide containers time to bootstrap before failed health checks count
towards the maximum number of retries.
|
Integer |
timeout()
The time period in seconds to wait for a health check to succeed before it is considered a failure.
|
HealthCheck.Builder |
toBuilder() |
String |
toString()
Returns a string representation of this object.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
copy
public boolean hasCommand()
public List<String> command()
A string array representing the command that the container runs to determine if it is healthy. The string array
must start with CMD
to execute the command arguments directly, or CMD-SHELL
to run the
command with the container's default shell. For example:
[ "CMD-SHELL", "curl -f http://localhost/ || exit 1" ]
An exit code of 0 indicates success, and non-zero exit code indicates failure. For more information, see
HealthCheck
in the Create a container section of the
Docker Remote API.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
You can use hasCommand()
to see if a value was sent in this field.
CMD
to execute the command arguments directly, or
CMD-SHELL
to run the command with the container's default shell. For example:
[ "CMD-SHELL", "curl -f http://localhost/ || exit 1" ]
An exit code of 0 indicates success, and non-zero exit code indicates failure. For more information, see
HealthCheck
in the Create a container section
of the Docker Remote API.
public Integer interval()
The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
public Integer timeout()
The time period in seconds to wait for a health check to succeed before it is considered a failure. You may specify between 2 and 60 seconds. The default value is 5.
public Integer retries()
The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is 3.
public Integer startPeriod()
The optional grace period within which to provide containers time to bootstrap before failed health checks count
towards the maximum number of retries. You may specify between 0 and 300 seconds. The startPeriod
is
disabled by default.
If a health check succeeds within the startPeriod
, then the container is considered healthy and any
subsequent failures count toward the maximum number of retries.
startPeriod
is disabled by default.
If a health check succeeds within the startPeriod
, then the container is considered healthy
and any subsequent failures count toward the maximum number of retries.
public HealthCheck.Builder toBuilder()
toBuilder
in interface ToCopyableBuilder<HealthCheck.Builder,HealthCheck>
public static HealthCheck.Builder builder()
public static Class<? extends HealthCheck.Builder> serializableBuilderClass()
public boolean equalsBySdkFields(Object obj)
equalsBySdkFields
in interface SdkPojo
public String toString()
Copyright © 2020. All rights reserved.