class Aws::ECS::Types::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:

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.

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:

[1]: docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html [2]: docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html

@note When making an API call, you may pass HealthCheck

data as a hash:

    {
      command: ["String"], # required
      interval: 1,
      timeout: 1,
      retries: 1,
      start_period: 1,
    }

@!attribute [rw] 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.

When you use the Amazon Web Services Management Console JSON panel,
the Command Line Interface, or the APIs, you should enclose the list
of commands in brackets, as shown below.

`[ "CMD-SHELL", "curl -f http://localhost/ || exit 1" ]`

You do not need to include the brackets when you use the Amazon Web
Services Management Consoleas shown below.

` "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][1] section of the [Docker Remote API][2].

[1]: https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate
[2]: https://docs.docker.com/engine/api/v1.35/
@return [Array<String>]

@!attribute [rw] 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.
@return [Integer]

@!attribute [rw] 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.
@return [Integer]

@!attribute [rw] 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.
@return [Integer]

@!attribute [rw] start_period

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.

<note markdown="1"> 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.

 </note>
@return [Integer]

@see docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/HealthCheck AWS API Documentation

Constants

SENSITIVE