pub struct HealthCheck {
pub command: Vec<String>,
pub interval: Option<i64>,
pub retries: Option<i64>,
pub start_period: Option<i64>,
pub timeout: Option<i64>,
}
Expand description
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.
Fields§
§command: Vec<String>
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.
interval: Option<i64>
The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
retries: Option<i64>
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.
start_period: Option<i64>
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.
timeout: Option<i64>
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.
Trait Implementations§
Source§impl Clone for HealthCheck
impl Clone for HealthCheck
Source§fn clone(&self) -> HealthCheck
fn clone(&self) -> HealthCheck
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more