import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateHealthCheckRequest, CreateHealthCheckResponse } from "../models/models_0"; import type { Route53ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../Route53Client"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link CreateHealthCheckCommand}. */ export interface CreateHealthCheckCommandInput extends CreateHealthCheckRequest { } /** * @public * * The output of {@link CreateHealthCheckCommand}. */ export interface CreateHealthCheckCommandOutput extends CreateHealthCheckResponse, __MetadataBearer { } declare const CreateHealthCheckCommand_base: { new (input: CreateHealthCheckCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: CreateHealthCheckCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Creates a new health check.

*

For information about adding health checks to resource record sets, see HealthCheckId in ChangeResourceRecordSets.

*

* ELB Load Balancers *

*

If you're registering EC2 instances with an Elastic Load Balancing (ELB) load * balancer, do not create Amazon Route 53 health checks for the EC2 instances. When you * register an EC2 instance with a load balancer, you configure settings for an ELB health * check, which performs a similar function to a Route 53 health check.

*

* Private Hosted Zones *

*

You can associate health checks with failover resource record sets in a private hosted * zone. Note the following:

* * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { Route53Client, CreateHealthCheckCommand } from "@aws-sdk/client-route-53"; // ES Modules import * // const { Route53Client, CreateHealthCheckCommand } = require("@aws-sdk/client-route-53"); // CommonJS import * // import type { Route53ClientConfig } from "@aws-sdk/client-route-53"; * const config = {}; // type is Route53ClientConfig * const client = new Route53Client(config); * const input = { // CreateHealthCheckRequest * CallerReference: "STRING_VALUE", // required * HealthCheckConfig: { // HealthCheckConfig * IPAddress: "STRING_VALUE", * Port: Number("int"), * Type: "HTTP" || "HTTPS" || "HTTP_STR_MATCH" || "HTTPS_STR_MATCH" || "TCP" || "CALCULATED" || "CLOUDWATCH_METRIC" || "RECOVERY_CONTROL", // required * ResourcePath: "STRING_VALUE", * FullyQualifiedDomainName: "STRING_VALUE", * SearchString: "STRING_VALUE", * RequestInterval: Number("int"), * FailureThreshold: Number("int"), * MeasureLatency: true || false, * Inverted: true || false, * Disabled: true || false, * HealthThreshold: Number("int"), * ChildHealthChecks: [ // ChildHealthCheckList * "STRING_VALUE", * ], * EnableSNI: true || false, * Regions: [ // HealthCheckRegionList * "us-east-1" || "us-west-1" || "us-west-2" || "eu-west-1" || "ap-southeast-1" || "ap-southeast-2" || "ap-northeast-1" || "sa-east-1", * ], * AlarmIdentifier: { // AlarmIdentifier * Region: "us-east-1" || "us-east-2" || "us-west-1" || "us-west-2" || "ca-central-1" || "eu-central-1" || "eu-central-2" || "eu-west-1" || "eu-west-2" || "eu-west-3" || "ap-east-1" || "me-south-1" || "me-central-1" || "ap-south-1" || "ap-south-2" || "ap-southeast-1" || "ap-southeast-2" || "ap-southeast-3" || "ap-northeast-1" || "ap-northeast-2" || "ap-northeast-3" || "eu-north-1" || "sa-east-1" || "cn-northwest-1" || "cn-north-1" || "af-south-1" || "eu-south-1" || "eu-south-2" || "us-gov-west-1" || "us-gov-east-1" || "us-iso-east-1" || "us-iso-west-1" || "us-isob-east-1" || "ap-southeast-4" || "il-central-1" || "ca-west-1" || "ap-southeast-5" || "mx-central-1" || "us-isof-south-1" || "us-isof-east-1" || "ap-southeast-7" || "ap-east-2" || "eu-isoe-west-1" || "ap-southeast-6" || "us-isob-west-1" || "eusc-de-east-1", // required * Name: "STRING_VALUE", // required * }, * InsufficientDataHealthStatus: "Healthy" || "Unhealthy" || "LastKnownStatus", * RoutingControlArn: "STRING_VALUE", * }, * }; * const command = new CreateHealthCheckCommand(input); * const response = await client.send(command); * // { // CreateHealthCheckResponse * // HealthCheck: { // HealthCheck * // Id: "STRING_VALUE", // required * // CallerReference: "STRING_VALUE", // required * // LinkedService: { // LinkedService * // ServicePrincipal: "STRING_VALUE", * // Description: "STRING_VALUE", * // }, * // HealthCheckConfig: { // HealthCheckConfig * // IPAddress: "STRING_VALUE", * // Port: Number("int"), * // Type: "HTTP" || "HTTPS" || "HTTP_STR_MATCH" || "HTTPS_STR_MATCH" || "TCP" || "CALCULATED" || "CLOUDWATCH_METRIC" || "RECOVERY_CONTROL", // required * // ResourcePath: "STRING_VALUE", * // FullyQualifiedDomainName: "STRING_VALUE", * // SearchString: "STRING_VALUE", * // RequestInterval: Number("int"), * // FailureThreshold: Number("int"), * // MeasureLatency: true || false, * // Inverted: true || false, * // Disabled: true || false, * // HealthThreshold: Number("int"), * // ChildHealthChecks: [ // ChildHealthCheckList * // "STRING_VALUE", * // ], * // EnableSNI: true || false, * // Regions: [ // HealthCheckRegionList * // "us-east-1" || "us-west-1" || "us-west-2" || "eu-west-1" || "ap-southeast-1" || "ap-southeast-2" || "ap-northeast-1" || "sa-east-1", * // ], * // AlarmIdentifier: { // AlarmIdentifier * // Region: "us-east-1" || "us-east-2" || "us-west-1" || "us-west-2" || "ca-central-1" || "eu-central-1" || "eu-central-2" || "eu-west-1" || "eu-west-2" || "eu-west-3" || "ap-east-1" || "me-south-1" || "me-central-1" || "ap-south-1" || "ap-south-2" || "ap-southeast-1" || "ap-southeast-2" || "ap-southeast-3" || "ap-northeast-1" || "ap-northeast-2" || "ap-northeast-3" || "eu-north-1" || "sa-east-1" || "cn-northwest-1" || "cn-north-1" || "af-south-1" || "eu-south-1" || "eu-south-2" || "us-gov-west-1" || "us-gov-east-1" || "us-iso-east-1" || "us-iso-west-1" || "us-isob-east-1" || "ap-southeast-4" || "il-central-1" || "ca-west-1" || "ap-southeast-5" || "mx-central-1" || "us-isof-south-1" || "us-isof-east-1" || "ap-southeast-7" || "ap-east-2" || "eu-isoe-west-1" || "ap-southeast-6" || "us-isob-west-1" || "eusc-de-east-1", // required * // Name: "STRING_VALUE", // required * // }, * // InsufficientDataHealthStatus: "Healthy" || "Unhealthy" || "LastKnownStatus", * // RoutingControlArn: "STRING_VALUE", * // }, * // HealthCheckVersion: Number("long"), // required * // CloudWatchAlarmConfiguration: { // CloudWatchAlarmConfiguration * // EvaluationPeriods: Number("int"), // required * // Threshold: Number("double"), // required * // ComparisonOperator: "GreaterThanOrEqualToThreshold" || "GreaterThanThreshold" || "LessThanThreshold" || "LessThanOrEqualToThreshold", // required * // Period: Number("int"), // required * // MetricName: "STRING_VALUE", // required * // Namespace: "STRING_VALUE", // required * // Statistic: "Average" || "Sum" || "SampleCount" || "Maximum" || "Minimum", // required * // Dimensions: [ // DimensionList * // { // Dimension * // Name: "STRING_VALUE", // required * // Value: "STRING_VALUE", // required * // }, * // ], * // }, * // }, * // Location: "STRING_VALUE", // required * // }; * * ``` * * @param CreateHealthCheckCommandInput - {@link CreateHealthCheckCommandInput} * @returns {@link CreateHealthCheckCommandOutput} * @see {@link CreateHealthCheckCommandInput} for command's `input` shape. * @see {@link CreateHealthCheckCommandOutput} for command's `response` shape. * @see {@link Route53ClientResolvedConfig | config} for Route53Client's `config` shape. * * @throws {@link HealthCheckAlreadyExists} (client fault) *

The health check you're attempting to create already exists. Amazon Route 53 returns * this error when you submit a request that has the following values:

* * * @throws {@link InvalidInput} (client fault) *

The input is not valid.

* * @throws {@link TooManyHealthChecks} (client fault) *

This health check can't be created because the current account has reached the limit * on the number of active health checks.

*

For information about default limits, see Limits in the * Amazon Route 53 Developer Guide.

*

For information about how to get the current limit for an account, see GetAccountLimit. To request a higher limit, create a case with the Amazon Web Services Support * Center.

*

You have reached the maximum number of active health checks for an Amazon Web Services account. To request a higher limit, create a case with the Amazon Web Services Support * Center.

* * @throws {@link Route53ServiceException} *

Base exception class for all service exceptions from Route53 service.

* * * @public */ export declare class CreateHealthCheckCommand extends CreateHealthCheckCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateHealthCheckRequest; output: CreateHealthCheckResponse; }; sdk: { input: CreateHealthCheckCommandInput; output: CreateHealthCheckCommandOutput; }; }; }