ScalingPolicyArgs

data class ScalingPolicyArgs(val policyName: Output<String>? = null, val policyType: Output<String>? = null, val resourceId: Output<String>? = null, val scalableDimension: Output<String>? = null, val scalingTargetId: Output<String>? = null, val serviceNamespace: Output<String>? = null, val stepScalingPolicyConfiguration: Output<ScalingPolicyStepScalingPolicyConfigurationArgs>? = null, val targetTrackingScalingPolicyConfiguration: Output<ScalingPolicyTargetTrackingScalingPolicyConfigurationArgs>? = null) : ConvertibleToJava<ScalingPolicyArgs>

The `AWS::ApplicationAutoScaling::ScalingPolicy` resource defines a scaling policy that Application Auto Scaling uses to adjust the capacity of a scalable target. For more information, see Target tracking scaling policies and Step scaling policies in the Application Auto Scaling User Guide.

Constructors

Link copied to clipboard
constructor(policyName: Output<String>? = null, policyType: Output<String>? = null, resourceId: Output<String>? = null, scalableDimension: Output<String>? = null, scalingTargetId: Output<String>? = null, serviceNamespace: Output<String>? = null, stepScalingPolicyConfiguration: Output<ScalingPolicyStepScalingPolicyConfigurationArgs>? = null, targetTrackingScalingPolicyConfiguration: Output<ScalingPolicyTargetTrackingScalingPolicyConfigurationArgs>? = null)

Properties

Link copied to clipboard
val policyName: Output<String>? = null

The name of the scaling policy. Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing `AWS::ApplicationAutoScaling::ScalingPolicy` resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.

Link copied to clipboard
val policyType: Output<String>? = null

The scaling policy type. The following policy types are supported: `TargetTrackingScaling`—Not supported for Amazon EMR `StepScaling`—Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.

Link copied to clipboard
val resourceId: Output<String>? = null

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.

Link copied to clipboard
val scalableDimension: Output<String>? = null

The scalable dimension. This string consists of the service namespace, resource type, and scaling property.

Link copied to clipboard
val scalingTargetId: Output<String>? = null

The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the `AWS::ApplicationAutoScaling::ScalableTarget` resource. You must specify either the `ScalingTargetId` property, or the `ResourceId`, `ScalableDimension`, and `ServiceNamespace` properties, but not both.

Link copied to clipboard
val serviceNamespace: Output<String>? = null

The namespace of the AWS service that provides the resource, or a `custom-resource`.

Link copied to clipboard

Functions

Link copied to clipboard
open override fun toJava(): ScalingPolicyArgs