Class CfnScalingPolicy
java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.CfnElement
software.amazon.awscdk.CfnRefElement
software.amazon.awscdk.CfnResource
software.amazon.awscdk.services.autoscaling.CfnScalingPolicy
- All Implemented Interfaces:
IInspectable
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
,software.constructs.IDependable
@Generated(value="jsii-pacmak/1.103.1 (build bef2dea)",
date="2024-10-11T15:55:53.667Z")
@Stability(Stable)
public class CfnScalingPolicy
extends CfnResource
implements IInspectable
The
AWS::AutoScaling::ScalingPolicy
resource specifies an Amazon EC2 Auto Scaling scaling policy so that the Auto Scaling group can scale the number of instances available for your application.
For more information about using scaling policies to scale your Auto Scaling group automatically, see Dynamic scaling and Predictive scaling in the Amazon EC2 Auto Scaling User Guide .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.autoscaling.*; CfnScalingPolicy cfnScalingPolicy = CfnScalingPolicy.Builder.create(this, "MyCfnScalingPolicy") .autoScalingGroupName("autoScalingGroupName") // the properties below are optional .adjustmentType("adjustmentType") .cooldown("cooldown") .estimatedInstanceWarmup(123) .metricAggregationType("metricAggregationType") .minAdjustmentMagnitude(123) .policyType("policyType") .predictiveScalingConfiguration(PredictiveScalingConfigurationProperty.builder() .metricSpecifications(List.of(PredictiveScalingMetricSpecificationProperty.builder() .targetValue(123) // the properties below are optional .customizedCapacityMetricSpecification(PredictiveScalingCustomizedCapacityMetricProperty.builder() .metricDataQueries(List.of(MetricDataQueryProperty.builder() .id("id") // the properties below are optional .expression("expression") .label("label") .metricStat(MetricStatProperty.builder() .metric(MetricProperty.builder() .metricName("metricName") .namespace("namespace") // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .name("name") .value("value") .build())) .build()) .stat("stat") // the properties below are optional .unit("unit") .build()) .returnData(false) .build())) .build()) .customizedLoadMetricSpecification(PredictiveScalingCustomizedLoadMetricProperty.builder() .metricDataQueries(List.of(MetricDataQueryProperty.builder() .id("id") // the properties below are optional .expression("expression") .label("label") .metricStat(MetricStatProperty.builder() .metric(MetricProperty.builder() .metricName("metricName") .namespace("namespace") // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .name("name") .value("value") .build())) .build()) .stat("stat") // the properties below are optional .unit("unit") .build()) .returnData(false) .build())) .build()) .customizedScalingMetricSpecification(PredictiveScalingCustomizedScalingMetricProperty.builder() .metricDataQueries(List.of(MetricDataQueryProperty.builder() .id("id") // the properties below are optional .expression("expression") .label("label") .metricStat(MetricStatProperty.builder() .metric(MetricProperty.builder() .metricName("metricName") .namespace("namespace") // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .name("name") .value("value") .build())) .build()) .stat("stat") // the properties below are optional .unit("unit") .build()) .returnData(false) .build())) .build()) .predefinedLoadMetricSpecification(PredictiveScalingPredefinedLoadMetricProperty.builder() .predefinedMetricType("predefinedMetricType") // the properties below are optional .resourceLabel("resourceLabel") .build()) .predefinedMetricPairSpecification(PredictiveScalingPredefinedMetricPairProperty.builder() .predefinedMetricType("predefinedMetricType") // the properties below are optional .resourceLabel("resourceLabel") .build()) .predefinedScalingMetricSpecification(PredictiveScalingPredefinedScalingMetricProperty.builder() .predefinedMetricType("predefinedMetricType") // the properties below are optional .resourceLabel("resourceLabel") .build()) .build())) // the properties below are optional .maxCapacityBreachBehavior("maxCapacityBreachBehavior") .maxCapacityBuffer(123) .mode("mode") .schedulingBufferTime(123) .build()) .scalingAdjustment(123) .stepAdjustments(List.of(StepAdjustmentProperty.builder() .scalingAdjustment(123) // the properties below are optional .metricIntervalLowerBound(123) .metricIntervalUpperBound(123) .build())) .targetTrackingConfiguration(TargetTrackingConfigurationProperty.builder() .targetValue(123) // the properties below are optional .customizedMetricSpecification(CustomizedMetricSpecificationProperty.builder() .dimensions(List.of(MetricDimensionProperty.builder() .name("name") .value("value") .build())) .metricName("metricName") .metrics(List.of(TargetTrackingMetricDataQueryProperty.builder() .id("id") // the properties below are optional .expression("expression") .label("label") .metricStat(TargetTrackingMetricStatProperty.builder() .metric(MetricProperty.builder() .metricName("metricName") .namespace("namespace") // the properties below are optional .dimensions(List.of(MetricDimensionProperty.builder() .name("name") .value("value") .build())) .build()) .stat("stat") // the properties below are optional .unit("unit") .build()) .returnData(false) .build())) .namespace("namespace") .statistic("statistic") .unit("unit") .build()) .disableScaleIn(false) .predefinedMetricSpecification(PredefinedMetricSpecificationProperty.builder() .predefinedMetricType("predefinedMetricType") // the properties below are optional .resourceLabel("resourceLabel") .build()) .build()) .build();
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
A fluent builder forCfnScalingPolicy
.static interface
Contains customized metric specification information for a target tracking scaling policy for Amazon EC2 Auto Scaling.static interface
The metric data to return.static interface
MetricDimension
specifies a name/value pair that is part of the identity of a CloudWatch metric for theDimensions
property of the AWS::AutoScaling::ScalingPolicy CustomizedMetricSpecification property type.static interface
Represents a specific metric.static interface
MetricStat
is a property of the AWS::AutoScaling::ScalingPolicy MetricDataQuery property type.static interface
Contains predefined metric specification information for a target tracking scaling policy for Amazon EC2 Auto Scaling.static interface
PredictiveScalingConfiguration
is a property of the AWS::AutoScaling::ScalingPolicy resource that specifies a predictive scaling policy for Amazon EC2 Auto Scaling.static interface
Contains capacity metric information for theCustomizedCapacityMetricSpecification
property of the AWS::AutoScaling::ScalingPolicy PredictiveScalingMetricSpecification property type.static interface
Contains load metric information for theCustomizedLoadMetricSpecification
property of the AWS::AutoScaling::ScalingPolicy PredictiveScalingMetricSpecification property type.static interface
Contains scaling metric information for theCustomizedScalingMetricSpecification
property of the AWS::AutoScaling::ScalingPolicy PredictiveScalingMetricSpecification property type.static interface
A structure that specifies a metric specification for theMetricSpecifications
property of the AWS::AutoScaling::ScalingPolicy PredictiveScalingConfiguration property type.static interface
Contains load metric information for thePredefinedLoadMetricSpecification
property of the AWS::AutoScaling::ScalingPolicy PredictiveScalingMetricSpecification property type.static interface
Contains metric pair information for thePredefinedMetricPairSpecification
property of the AWS::AutoScaling::ScalingPolicy PredictiveScalingMetricSpecification property type.static interface
Contains scaling metric information for thePredefinedScalingMetricSpecification
property of the AWS::AutoScaling::ScalingPolicy PredictiveScalingMetricSpecification property type.static interface
StepAdjustment
specifies a step adjustment for theStepAdjustments
property of the AWS::AutoScaling::ScalingPolicy resource.static interface
TargetTrackingConfiguration
is a property of the AWS::AutoScaling::ScalingPolicy resource that specifies a target tracking scaling policy configuration for Amazon EC2 Auto Scaling.static interface
The metric data to return.static interface
This structure defines the CloudWatch metric to return, along with the statistic and unit.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The CloudFormation resource type name for this resource class. -
Constructor Summary
ModifierConstructorDescriptionprotected
CfnScalingPolicy
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
CfnScalingPolicy
(software.amazon.jsii.JsiiObjectRef objRef) CfnScalingPolicy
(software.constructs.Construct scope, String id, CfnScalingPolicyProps props) -
Method Summary
Modifier and TypeMethodDescriptionSpecifies how the scaling adjustment is interpreted (for example, an absolute number or a percentage).Returns the ARN of a scaling policy.Returns the name of a scaling policy.The name of the Auto Scaling group.A cooldown period, in seconds, that applies to a specific simple scaling policy.Not needed if the default instance warmup is defined for the group..The aggregation type for the CloudWatch metrics.The minimum value to scale by when the adjustment type isPercentChangeInCapacity
.One of the following policy types:.A predictive scaling policy.The amount by which to scale, based on the specified adjustment type.A set of adjustments that enable you to scale based on the size of the alarm breach.A target tracking scaling policy.void
inspect
(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties
(Map<String, Object> props) void
setAdjustmentType
(String value) Specifies how the scaling adjustment is interpreted (for example, an absolute number or a percentage).void
setAutoScalingGroupName
(String value) The name of the Auto Scaling group.void
setCooldown
(String value) A cooldown period, in seconds, that applies to a specific simple scaling policy.void
setEstimatedInstanceWarmup
(Number value) Not needed if the default instance warmup is defined for the group..void
setMetricAggregationType
(String value) The aggregation type for the CloudWatch metrics.void
setMinAdjustmentMagnitude
(Number value) The minimum value to scale by when the adjustment type isPercentChangeInCapacity
.void
setPolicyType
(String value) One of the following policy types:.void
A predictive scaling policy.void
A predictive scaling policy.void
setScalingAdjustment
(Number value) The amount by which to scale, based on the specified adjustment type.void
setStepAdjustments
(List<Object> value) A set of adjustments that enable you to scale based on the size of the alarm breach.void
setStepAdjustments
(IResolvable value) A set of adjustments that enable you to scale based on the size of the alarm breach.void
A target tracking scaling policy.void
A target tracking scaling policy.Methods inherited from class software.amazon.awscdk.CfnResource
addDeletionOverride, addDependency, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, getUpdatedProperties, isCfnResource, obtainDependencies, obtainResourceDependencies, removeDependency, replaceDependency, shouldSynthesize, toString, validateProperties
Methods inherited from class software.amazon.awscdk.CfnRefElement
getRef
Methods inherited from class software.amazon.awscdk.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
Methods inherited from class software.constructs.Construct
getNode, isConstruct
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnScalingPolicy
protected CfnScalingPolicy(software.amazon.jsii.JsiiObjectRef objRef) -
CfnScalingPolicy
protected CfnScalingPolicy(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnScalingPolicy
@Stability(Stable) public CfnScalingPolicy(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnScalingPolicyProps props) - Parameters:
scope
- Scope in which this resource is defined. This parameter is required.id
- Construct identifier for this resource (unique in its scope). This parameter is required.props
- Resource properties. This parameter is required.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspect
in interfaceIInspectable
- Parameters:
inspector
- tree inspector to collect and process attributes. This parameter is required.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderProperties
in classCfnResource
- Parameters:
props
- This parameter is required.
-
getAttrArn
Returns the ARN of a scaling policy. -
getAttrPolicyName
Returns the name of a scaling policy. -
getCfnProperties
- Overrides:
getCfnProperties
in classCfnResource
-
getAutoScalingGroupName
The name of the Auto Scaling group. -
setAutoScalingGroupName
The name of the Auto Scaling group. -
getAdjustmentType
Specifies how the scaling adjustment is interpreted (for example, an absolute number or a percentage). -
setAdjustmentType
Specifies how the scaling adjustment is interpreted (for example, an absolute number or a percentage). -
getCooldown
A cooldown period, in seconds, that applies to a specific simple scaling policy. -
setCooldown
A cooldown period, in seconds, that applies to a specific simple scaling policy. -
getEstimatedInstanceWarmup
Not needed if the default instance warmup is defined for the group.. -
setEstimatedInstanceWarmup
Not needed if the default instance warmup is defined for the group.. -
getMetricAggregationType
The aggregation type for the CloudWatch metrics. -
setMetricAggregationType
The aggregation type for the CloudWatch metrics. -
getMinAdjustmentMagnitude
The minimum value to scale by when the adjustment type isPercentChangeInCapacity
. -
setMinAdjustmentMagnitude
The minimum value to scale by when the adjustment type isPercentChangeInCapacity
. -
getPolicyType
One of the following policy types:. -
setPolicyType
One of the following policy types:. -
getPredictiveScalingConfiguration
A predictive scaling policy.Provides support for predefined and custom metrics.
-
setPredictiveScalingConfiguration
A predictive scaling policy.Provides support for predefined and custom metrics.
-
setPredictiveScalingConfiguration
@Stability(Stable) public void setPredictiveScalingConfiguration(@Nullable CfnScalingPolicy.PredictiveScalingConfigurationProperty value) A predictive scaling policy.Provides support for predefined and custom metrics.
-
getScalingAdjustment
The amount by which to scale, based on the specified adjustment type. -
setScalingAdjustment
The amount by which to scale, based on the specified adjustment type. -
getStepAdjustments
A set of adjustments that enable you to scale based on the size of the alarm breach. -
setStepAdjustments
A set of adjustments that enable you to scale based on the size of the alarm breach. -
setStepAdjustments
A set of adjustments that enable you to scale based on the size of the alarm breach. -
getTargetTrackingConfiguration
A target tracking scaling policy.Provides support for predefined or custom metrics.
-
setTargetTrackingConfiguration
A target tracking scaling policy.Provides support for predefined or custom metrics.
-
setTargetTrackingConfiguration
@Stability(Stable) public void setTargetTrackingConfiguration(@Nullable CfnScalingPolicy.TargetTrackingConfigurationProperty value) A target tracking scaling policy.Provides support for predefined or custom metrics.
-