You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: Aws::ApplicationAutoScaling::Types::TargetTrackingScalingPolicyConfiguration

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-applicationautoscaling/lib/aws-sdk-applicationautoscaling/types.rb

Overview

Note:

When making an API call, you may pass TargetTrackingScalingPolicyConfiguration data as a hash:

{
  target_value: 1.0, # required
  predefined_metric_specification: {
    predefined_metric_type: "DynamoDBReadCapacityUtilization", # required, accepts DynamoDBReadCapacityUtilization, DynamoDBWriteCapacityUtilization, ALBRequestCountPerTarget, RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections, EC2SpotFleetRequestAverageCPUUtilization, EC2SpotFleetRequestAverageNetworkIn, EC2SpotFleetRequestAverageNetworkOut, SageMakerVariantInvocationsPerInstance, ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization
    resource_label: "ResourceLabel",
  },
  customized_metric_specification: {
    metric_name: "MetricName", # required
    namespace: "MetricNamespace", # required
    dimensions: [
      {
        name: "MetricDimensionName", # required
        value: "MetricDimensionValue", # required
      },
    ],
    statistic: "Average", # required, accepts Average, Minimum, Maximum, SampleCount, Sum
    unit: "MetricUnit",
  },
  scale_out_cooldown: 1,
  scale_in_cooldown: 1,
  disable_scale_in: false,
}

Represents a target tracking scaling policy configuration to use with Application Auto Scaling.

Instance Attribute Summary collapse

Instance Attribute Details

#customized_metric_specificationTypes::CustomizedMetricSpecification

A customized metric. You can specify either a predefined metric or a customized metric.



2697
2698
2699
2700
2701
2702
2703
2704
2705
# File 'gems/aws-sdk-applicationautoscaling/lib/aws-sdk-applicationautoscaling/types.rb', line 2697

class TargetTrackingScalingPolicyConfiguration < Struct.new(
  :target_value,
  :predefined_metric_specification,
  :customized_metric_specification,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :disable_scale_in)
  include Aws::Structure
end

#disable_scale_inBoolean

Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy won't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.

Returns:

  • (Boolean)


2697
2698
2699
2700
2701
2702
2703
2704
2705
# File 'gems/aws-sdk-applicationautoscaling/lib/aws-sdk-applicationautoscaling/types.rb', line 2697

class TargetTrackingScalingPolicyConfiguration < Struct.new(
  :target_value,
  :predefined_metric_specification,
  :customized_metric_specification,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :disable_scale_in)
  include Aws::Structure
end

#predefined_metric_specificationTypes::PredefinedMetricSpecification

A predefined metric. You can specify either a predefined metric or a customized metric.



2697
2698
2699
2700
2701
2702
2703
2704
2705
# File 'gems/aws-sdk-applicationautoscaling/lib/aws-sdk-applicationautoscaling/types.rb', line 2697

class TargetTrackingScalingPolicyConfiguration < Struct.new(
  :target_value,
  :predefined_metric_specification,
  :customized_metric_specification,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :disable_scale_in)
  include Aws::Structure
end

#scale_in_cooldownInteger

The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start.

The cooldown period is used to block subsequent scale-in requests until it has expired. The intention is to scale in conservatively to protect your application's availability. However, if another alarm triggers a scale-out policy during the cooldown period after a scale-in, Application Auto Scaling scales out your scalable target immediately.

Returns:

  • (Integer)


2697
2698
2699
2700
2701
2702
2703
2704
2705
# File 'gems/aws-sdk-applicationautoscaling/lib/aws-sdk-applicationautoscaling/types.rb', line 2697

class TargetTrackingScalingPolicyConfiguration < Struct.new(
  :target_value,
  :predefined_metric_specification,
  :customized_metric_specification,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :disable_scale_in)
  include Aws::Structure
end

#scale_out_cooldownInteger

The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start.

While the cooldown period is in effect, the capacity that has been added by the previous scale-out event that initiated the cooldown is calculated as part of the desired capacity for the next scale out. The intention is to continuously (but not excessively) scale out.

Returns:

  • (Integer)


2697
2698
2699
2700
2701
2702
2703
2704
2705
# File 'gems/aws-sdk-applicationautoscaling/lib/aws-sdk-applicationautoscaling/types.rb', line 2697

class TargetTrackingScalingPolicyConfiguration < Struct.new(
  :target_value,
  :predefined_metric_specification,
  :customized_metric_specification,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :disable_scale_in)
  include Aws::Structure
end

#target_valueFloat

The target value for the metric. The range is 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 (Base 2).

Returns:

  • (Float)


2697
2698
2699
2700
2701
2702
2703
2704
2705
# File 'gems/aws-sdk-applicationautoscaling/lib/aws-sdk-applicationautoscaling/types.rb', line 2697

class TargetTrackingScalingPolicyConfiguration < Struct.new(
  :target_value,
  :predefined_metric_specification,
  :customized_metric_specification,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :disable_scale_in)
  include Aws::Structure
end