aws-cdk-lib.aws_autoscalingplans.CfnScalingPlanProps

interface CfnScalingPlanProps

LanguageType name
.NETAmazon.CDK.AWS.AutoScalingPlans.CfnScalingPlanProps
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsautoscalingplans#CfnScalingPlanProps
Javasoftware.amazon.awscdk.services.autoscalingplans.CfnScalingPlanProps
Pythonaws_cdk.aws_autoscalingplans.CfnScalingPlanProps
TypeScript aws-cdk-lib » aws_autoscalingplans » CfnScalingPlanProps

Properties for defining a CfnScalingPlan.

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_autoscalingplans as autoscalingplans } from 'aws-cdk-lib';
const cfnScalingPlanProps: autoscalingplans.CfnScalingPlanProps = {
  applicationSource: {
    cloudFormationStackArn: 'cloudFormationStackArn',
    tagFilters: [{
      key: 'key',

      // the properties below are optional
      values: ['values'],
    }],
  },
  scalingInstructions: [{
    maxCapacity: 123,
    minCapacity: 123,
    resourceId: 'resourceId',
    scalableDimension: 'scalableDimension',
    serviceNamespace: 'serviceNamespace',
    targetTrackingConfigurations: [{
      targetValue: 123,

      // the properties below are optional
      customizedScalingMetricSpecification: {
        metricName: 'metricName',
        namespace: 'namespace',
        statistic: 'statistic',

        // the properties below are optional
        dimensions: [{
          name: 'name',
          value: 'value',
        }],
        unit: 'unit',
      },
      disableScaleIn: false,
      estimatedInstanceWarmup: 123,
      predefinedScalingMetricSpecification: {
        predefinedScalingMetricType: 'predefinedScalingMetricType',

        // the properties below are optional
        resourceLabel: 'resourceLabel',
      },
      scaleInCooldown: 123,
      scaleOutCooldown: 123,
    }],

    // the properties below are optional
    customizedLoadMetricSpecification: {
      metricName: 'metricName',
      namespace: 'namespace',
      statistic: 'statistic',

      // the properties below are optional
      dimensions: [{
        name: 'name',
        value: 'value',
      }],
      unit: 'unit',
    },
    disableDynamicScaling: false,
    predefinedLoadMetricSpecification: {
      predefinedLoadMetricType: 'predefinedLoadMetricType',

      // the properties below are optional
      resourceLabel: 'resourceLabel',
    },
    predictiveScalingMaxCapacityBehavior: 'predictiveScalingMaxCapacityBehavior',
    predictiveScalingMaxCapacityBuffer: 123,
    predictiveScalingMode: 'predictiveScalingMode',
    scalingPolicyUpdateBehavior: 'scalingPolicyUpdateBehavior',
    scheduledActionBufferTime: 123,
  }],
};

Properties

NameTypeDescription
applicationSourceIResolvable | ApplicationSourcePropertyA CloudFormation stack or a set of tags.
scalingInstructionsIResolvable | IResolvable | ScalingInstructionProperty[]The scaling instructions.

applicationSource

Type: IResolvable | ApplicationSourceProperty

A CloudFormation stack or a set of tags.

You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.


scalingInstructions

Type: IResolvable | IResolvable | ScalingInstructionProperty[]

The scaling instructions.