View a markdown version of this page

AWS::EC2::ApplicationStatusCheck - AWS CloudFormation

This is the new CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.

AWS::EC2::ApplicationStatusCheck

Creates an application status check for monitoring the health of applications running on your instances. You can configure the protocol, port, path, and thresholds for the health check. The following rules apply:

  • You can create a maximum of 50 application status checks for each account.

  • You must associate the check with instances or tags using AssociateApplicationStatusCheck before health checks start.

  • You must set the Timeout value to less than the Interval value.

  • You must start the Path with a forward slash (/). Default: /.

  • You can specify Aggregation as included or excluded. If you do not specify a value, it defaults to included, which means the check contributes to the instance-level application status.

  • You can use the following default values: Interval is 60 seconds, Timeout is 6 seconds, FailureThreshold is 2, SuccessThreshold is 2, StatusCodeMatcher is 200, InitializationGracePeriodSeconds is 300 seconds.

  • You can tag the application status check during creation. For more information, see Tag your Amazon EC2 resources.

Syntax

To declare this entity in your CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::EC2::ApplicationStatusCheck", "Properties" : { "Aggregation" : String, "DeviceIndex" : Integer, "FailureThreshold" : Integer, "HealthCheckPaths" : [ HealthCheckPath, ... ], "InitializationGracePeriodSeconds" : Integer, "Interval" : Integer, "IpScope" : String, "IpVersion" : String, "Path" : String, "Port" : Integer, "Protocol" : String, "StatusCodeMatcher" : String, "SuccessThreshold" : Integer, "Tags" : [ Tag, ... ], "Timeout" : Integer } }

YAML

Type: AWS::EC2::ApplicationStatusCheck Properties: Aggregation: String DeviceIndex: Integer FailureThreshold: Integer HealthCheckPaths: - HealthCheckPath InitializationGracePeriodSeconds: Integer Interval: Integer IpScope: String IpVersion: String Path: String Port: Integer Protocol: String StatusCodeMatcher: String SuccessThreshold: Integer Tags: - Tag Timeout: Integer

Properties

Aggregation

The aggregation setting for the application status check. When set to included, the result of this check contributes to the instance-level application status. When set to excluded, the check runs independently and does not affect the instance-level status.

Required: No

Type: String

Allowed values: included | excluded

Update requires: No interruption

DeviceIndex

The index of the network device used for the health check. The value is greater than or equal to 0.

Required: No

Type: Integer

Update requires: No interruption

FailureThreshold

The number of consecutive failed health checks before the application status is considered impaired. The value must be greater than 0.

Required: No

Type: Integer

Update requires: No interruption

HealthCheckPaths

The health check paths for the application status check.

Required: No

Type: Array of HealthCheckPath

Update requires: No interruption

InitializationGracePeriodSeconds

The number of seconds to wait before starting health checks after an instance is launched. Valid values: 1 to 600.

Required: No

Type: Integer

Minimum: -1

Maximum: 600

Update requires: No interruption

Interval

The interval, in seconds, between health checks. Valid value: 60.

Required: No

Type: Integer

Update requires: Replacement

IpScope

The IP scope used for the health check.

Required: No

Type: String

Allowed values: private

Update requires: Replacement

IpVersion

The IP version used for the health check.

Required: No

Type: String

Allowed values: ipv4 | ipv6

Update requires: No interruption

Path

The URL path used for the health check HTTP request.

Required: No

Type: String

Update requires: No interruption

Port

The port used for the health check.

Required: Yes

Type: Integer

Minimum: 1

Maximum: 65535

Update requires: No interruption

Protocol

The protocol used for the health check.

Required: Yes

Type: String

Allowed values: http | https

Update requires: No interruption

StatusCodeMatcher

The comma-separated list of individual HTTP status codes or ranges that indicate a successful health check response.

Required: No

Type: String

Update requires: No interruption

SuccessThreshold

The number of consecutive successful health checks before the application status is considered healthy. The value must be greater than 0.

Required: No

Type: Integer

Update requires: No interruption

Tags

The tags assigned to the application status check.

Required: No

Type: Array of Tag

Update requires: No interruption

Timeout

The amount of time, in seconds, to wait for a health check response. Valid values: 1 to 30.

Required: No

Type: Integer

Update requires: No interruption

Return values

Ref

Fn::GetAtt

ApplicationStatusCheckId

The ID of the application status check.

Arn

Property description not available.

CreationTime

The date and time when the application status check was created.