Interface BasicStepScalingPolicyProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Subinterfaces:
StepScalingPolicyProps
All Known Implementing Classes:
BasicStepScalingPolicyProps.Jsii$Proxy, StepScalingPolicyProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:45.192Z") @Stability(Stable) public interface BasicStepScalingPolicyProps extends software.amazon.jsii.JsiiSerializable
Example:

 AutoScalingGroup autoScalingGroup;
 Metric workerUtilizationMetric = Metric.Builder.create()
         .namespace("MyService")
         .metricName("WorkerUtilization")
         .build();
 autoScalingGroup.scaleOnMetric("ScaleToCPU", BasicStepScalingPolicyProps.builder()
         .metric(workerUtilizationMetric)
         .scalingSteps(List.of(ScalingInterval.builder().upper(10).change(-1).build(), ScalingInterval.builder().lower(50).change(+1).build(), ScalingInterval.builder().lower(70).change(+3).build()))
         // Change this to AdjustmentType.PERCENT_CHANGE_IN_CAPACITY to interpret the
         // 'change' numbers before as percentages instead of capacity counts.
         .adjustmentType(AdjustmentType.CHANGE_IN_CAPACITY)
         .build());
 
  • Method Details

    • getMetric

      @Stability(Stable) @NotNull IMetric getMetric()
      Metric to scale on.
    • getScalingSteps

      @Stability(Stable) @NotNull List<ScalingInterval> getScalingSteps()
      The intervals for scaling.

      Maps a range of metric values to a particular scaling behavior.

    • getAdjustmentType

      @Stability(Stable) @Nullable default AdjustmentType getAdjustmentType()
      How the adjustment numbers inside 'intervals' are interpreted.

      Default: ChangeInCapacity

    • getCooldown

      @Stability(Stable) @Nullable default Duration getCooldown()
      Grace period after scaling activity.

      Default: Default cooldown period on your AutoScalingGroup

    • getEstimatedInstanceWarmup

      @Stability(Stable) @Nullable default Duration getEstimatedInstanceWarmup()
      Estimated time until a newly launched instance can send metrics to CloudWatch.

      Default: Same as the cooldown

    • getEvaluationPeriods

      @Stability(Stable) @Nullable default Number getEvaluationPeriods()
      How many evaluation periods of the metric to wait before triggering a scaling action.

      Raising this value can be used to smooth out the metric, at the expense of slower response times.

      Default: 1

    • getMetricAggregationType

      @Stability(Stable) @Nullable default MetricAggregationType getMetricAggregationType()
      Aggregation to apply to all data points over the evaluation periods.

      Only has meaning if evaluationPeriods != 1.

      Default: - The statistic from the metric if applicable (MIN, MAX, AVERAGE), otherwise AVERAGE.

    • getMinAdjustmentMagnitude

      @Stability(Stable) @Nullable default Number getMinAdjustmentMagnitude()
      Minimum absolute number to adjust capacity with as result of percentage scaling.

      Only when using AdjustmentType = PercentChangeInCapacity, this number controls the minimum absolute effect size.

      Default: No minimum scaling effect

    • builder

      @Stability(Stable) static BasicStepScalingPolicyProps.Builder builder()
      Returns:
      a BasicStepScalingPolicyProps.Builder of BasicStepScalingPolicyProps