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

Class: Aws::AutoScalingPlans::Types::TargetTrackingConfiguration

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

Overview

Note:

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

{
  predefined_scaling_metric_specification: {
    predefined_scaling_metric_type: "ASGAverageCPUUtilization", # required, accepts ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut, DynamoDBReadCapacityUtilization, DynamoDBWriteCapacityUtilization, ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization, ALBRequestCountPerTarget, RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections, EC2SpotFleetRequestAverageCPUUtilization, EC2SpotFleetRequestAverageNetworkIn, EC2SpotFleetRequestAverageNetworkOut
    resource_label: "ResourceLabel",
  },
  customized_scaling_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",
  },
  target_value: 1.0, # required
  disable_scale_in: false,
  scale_out_cooldown: 1,
  scale_in_cooldown: 1,
  estimated_instance_warmup: 1,
}

Describes a target tracking configuration to use with AWS Auto Scaling. Used with ScalingInstruction and ScalingPolicy.

Instance Attribute Summary collapse

Instance Attribute Details

#customized_scaling_metric_specificationTypes::CustomizedScalingMetricSpecification

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



1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
# File 'gems/aws-sdk-autoscalingplans/lib/aws-sdk-autoscalingplans/types.rb', line 1371

class TargetTrackingConfiguration < Struct.new(
  :predefined_scaling_metric_specification,
  :customized_scaling_metric_specification,
  :target_value,
  :disable_scale_in,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :estimated_instance_warmup)
  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 doesn'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)


1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
# File 'gems/aws-sdk-autoscalingplans/lib/aws-sdk-autoscalingplans/types.rb', line 1371

class TargetTrackingConfiguration < Struct.new(
  :predefined_scaling_metric_specification,
  :customized_scaling_metric_specification,
  :target_value,
  :disable_scale_in,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :estimated_instance_warmup)
  include Aws::Structure
end

#estimated_instance_warmupInteger

The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.

Returns:

  • (Integer)


1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
# File 'gems/aws-sdk-autoscalingplans/lib/aws-sdk-autoscalingplans/types.rb', line 1371

class TargetTrackingConfiguration < Struct.new(
  :predefined_scaling_metric_specification,
  :customized_scaling_metric_specification,
  :target_value,
  :disable_scale_in,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :estimated_instance_warmup)
  include Aws::Structure
end

#predefined_scaling_metric_specificationTypes::PredefinedScalingMetricSpecification

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



1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
# File 'gems/aws-sdk-autoscalingplans/lib/aws-sdk-autoscalingplans/types.rb', line 1371

class TargetTrackingConfiguration < Struct.new(
  :predefined_scaling_metric_specification,
  :customized_scaling_metric_specification,
  :target_value,
  :disable_scale_in,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :estimated_instance_warmup)
  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. This value is not used if the scalable resource is an Auto Scaling group.

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, AWS Auto Scaling scales out your scalable target immediately.

Returns:

  • (Integer)


1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
# File 'gems/aws-sdk-autoscalingplans/lib/aws-sdk-autoscalingplans/types.rb', line 1371

class TargetTrackingConfiguration < Struct.new(
  :predefined_scaling_metric_specification,
  :customized_scaling_metric_specification,
  :target_value,
  :disable_scale_in,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :estimated_instance_warmup)
  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. This value is not used if the scalable resource is an Auto Scaling group.

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)


1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
# File 'gems/aws-sdk-autoscalingplans/lib/aws-sdk-autoscalingplans/types.rb', line 1371

class TargetTrackingConfiguration < Struct.new(
  :predefined_scaling_metric_specification,
  :customized_scaling_metric_specification,
  :target_value,
  :disable_scale_in,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :estimated_instance_warmup)
  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)


1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
# File 'gems/aws-sdk-autoscalingplans/lib/aws-sdk-autoscalingplans/types.rb', line 1371

class TargetTrackingConfiguration < Struct.new(
  :predefined_scaling_metric_specification,
  :customized_scaling_metric_specification,
  :target_value,
  :disable_scale_in,
  :scale_out_cooldown,
  :scale_in_cooldown,
  :estimated_instance_warmup)
  include Aws::Structure
end