Class PolicyState


  • public final class PolicyState
    extends com.pulumi.resources.ResourceArgs
    • Method Detail

      • adjustmentType

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> adjustmentType()
        Returns:
        Whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.
      • arn

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> arn()
        Returns:
        ARN assigned by AWS to the scaling policy.
      • autoscalingGroupName

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> autoscalingGroupName()
        Returns:
        Name of the autoscaling group.
      • cooldown

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> cooldown()
        Returns:
        Amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
      • enabled

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> enabled()
        Returns:
        Whether the scaling policy is enabled or disabled. Default: `true`. The following argument is only available to "SimpleScaling" and "StepScaling" type policies:
      • estimatedInstanceWarmup

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> estimatedInstanceWarmup()
        Returns:
        Estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.
      • metricAggregationType

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> metricAggregationType()
        Returns:
        Aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".
      • minAdjustmentMagnitude

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> minAdjustmentMagnitude()
        Returns:
        Minimum value to scale by when `adjustment_type` is set to `PercentChangeInCapacity`. The following arguments are only available to "SimpleScaling" type policies:
      • name

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> name()
        Returns:
        Name of the policy.
      • policyType

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> policyType()
        Returns:
        Policy type, either "SimpleScaling", "StepScaling", "TargetTrackingScaling", or "PredictiveScaling". If this value isn't provided, AWS will default to "SimpleScaling."
      • predictiveScalingConfiguration

        public java.util.Optional<com.pulumi.core.Output<PolicyPredictiveScalingConfigurationArgs>> predictiveScalingConfiguration()
        Returns:
        Predictive scaling policy configuration to use with Amazon EC2 Auto Scaling.
      • scalingAdjustment

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> scalingAdjustment()
        Returns:
        Number of members by which to scale, when the adjustment bounds are breached. A positive value scales up. A negative value scales down.
      • stepAdjustments

        public java.util.Optional<com.pulumi.core.Output<java.util.List<PolicyStepAdjustmentArgs>>> stepAdjustments()
        Returns:
        Set of adjustments that manage group scaling. These have the following structure: <!--Start PulumiCodeChooser -->
         
         package generated_program;
         
         import com.pulumi.Context;
         import com.pulumi.Pulumi;
         import com.pulumi.core.Output;
         import com.pulumi.aws.autoscaling.Policy;
         import com.pulumi.aws.autoscaling.PolicyArgs;
         import com.pulumi.aws.autoscaling.inputs.PolicyStepAdjustmentArgs;
         import java.util.List;
         import java.util.ArrayList;
         import java.util.Map;
         import java.io.File;
         import java.nio.file.Files;
         import java.nio.file.Paths;
         
         public class App {
             public static void main(String[] args) {
                 Pulumi.run(App::stack);
             }
         
             public static void stack(Context ctx) {
                 var example = new Policy("example", PolicyArgs.builder()
                     .stepAdjustments(            
                         PolicyStepAdjustmentArgs.builder()
                             .scalingAdjustment(-1)
                             .metricIntervalLowerBound(1)
                             .metricIntervalUpperBound(2)
                             .build(),
                         PolicyStepAdjustmentArgs.builder()
                             .scalingAdjustment(1)
                             .metricIntervalLowerBound(2)
                             .metricIntervalUpperBound(3)
                             .build())
                     .build());
         
             }
         }
         
         
        <!--End PulumiCodeChooser --> The following fields are available in step adjustments:
      • targetTrackingConfiguration

        public java.util.Optional<com.pulumi.core.Output<PolicyTargetTrackingConfigurationArgs>> targetTrackingConfiguration()
        Returns:
        Target tracking policy. These have the following structure: <!--Start PulumiCodeChooser -->
         
         package generated_program;
         
         import com.pulumi.Context;
         import com.pulumi.Pulumi;
         import com.pulumi.core.Output;
         import com.pulumi.aws.autoscaling.Policy;
         import com.pulumi.aws.autoscaling.PolicyArgs;
         import com.pulumi.aws.autoscaling.inputs.PolicyTargetTrackingConfigurationArgs;
         import com.pulumi.aws.autoscaling.inputs.PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs;
         import java.util.List;
         import java.util.ArrayList;
         import java.util.Map;
         import java.io.File;
         import java.nio.file.Files;
         import java.nio.file.Paths;
         
         public class App {
             public static void main(String[] args) {
                 Pulumi.run(App::stack);
             }
         
             public static void stack(Context ctx) {
                 var example = new Policy("example", PolicyArgs.builder()
                     .targetTrackingConfiguration(PolicyTargetTrackingConfigurationArgs.builder()
                         .predefinedMetricSpecification(PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs.builder()
                             .predefinedMetricType("ASGAverageCPUUtilization")
                             .build())
                         .targetValue(40)
                         .build())
                     .build());
         
             }
         }
         
         
        <!--End PulumiCodeChooser --> The following fields are available in target tracking configuration: