Struct rusoto_autoscaling::PutScalingPolicyType
source · [−]pub struct PutScalingPolicyType {Show 14 fields
pub adjustment_type: Option<String>,
pub auto_scaling_group_name: String,
pub cooldown: Option<i64>,
pub enabled: Option<bool>,
pub estimated_instance_warmup: Option<i64>,
pub metric_aggregation_type: Option<String>,
pub min_adjustment_magnitude: Option<i64>,
pub min_adjustment_step: Option<i64>,
pub policy_name: String,
pub policy_type: Option<String>,
pub predictive_scaling_configuration: Option<PredictiveScalingConfiguration>,
pub scaling_adjustment: Option<i64>,
pub step_adjustments: Option<Vec<StepAdjustment>>,
pub target_tracking_configuration: Option<TargetTrackingConfiguration>,
}
Fields
adjustment_type: Option<String>
Specifies how the scaling adjustment is interpreted (for example, an absolute number or a percentage). The valid values are ChangeInCapacity
, ExactCapacity
, and PercentChangeInCapacity
.
Required if the policy type is StepScaling
or SimpleScaling
. For more information, see Scaling adjustment types in the Amazon EC2 Auto Scaling User Guide.
auto_scaling_group_name: String
The name of the Auto Scaling group.
cooldown: Option<i64>
The duration of the policy's cooldown period, in seconds. When a cooldown period is specified here, it overrides the default cooldown period defined for the Auto Scaling group.
Valid only if the policy type is SimpleScaling
. For more information, see Scaling cooldowns for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.
enabled: Option<bool>
Indicates whether the scaling policy is enabled or disabled. The default is enabled. For more information, see Disabling a scaling policy for an Auto Scaling group in the Amazon EC2 Auto Scaling User Guide.
estimated_instance_warmup: Option<i64>
The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. If not provided, the default is to use the value from the default cooldown period for the Auto Scaling group.
Valid only if the policy type is TargetTrackingScaling
or StepScaling
.
metric_aggregation_type: Option<String>
The aggregation type for the CloudWatch metrics. The valid values are Minimum
, Maximum
, and Average
. If the aggregation type is null, the value is treated as Average
.
Valid only if the policy type is StepScaling
.
min_adjustment_magnitude: Option<i64>
The minimum value to scale by when the adjustment type is PercentChangeInCapacity
. For example, suppose that you create a step scaling policy to scale out an Auto Scaling group by 25 percent and you specify a MinAdjustmentMagnitude
of 2. If the group has 4 instances and the scaling policy is performed, 25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude
of 2, Amazon EC2 Auto Scaling scales out the group by 2 instances.
Valid only if the policy type is StepScaling
or SimpleScaling
. For more information, see Scaling adjustment types in the Amazon EC2 Auto Scaling User Guide.
Some Auto Scaling groups use instance weights. In this case, set the MinAdjustmentMagnitude
to a value that is at least as large as your largest instance weight.
min_adjustment_step: Option<i64>
Available for backward compatibility. Use MinAdjustmentMagnitude
instead.
policy_name: String
The name of the policy.
policy_type: Option<String>
One of the following policy types:
-
TargetTrackingScaling
-
StepScaling
-
SimpleScaling
(default) -
PredictiveScaling
predictive_scaling_configuration: Option<PredictiveScalingConfiguration>
A predictive scaling policy. Provides support for only predefined metrics.
Predictive scaling works with CPU utilization, network in/out, and the Application Load Balancer request count.
For more information, see PredictiveScalingConfiguration in the Amazon EC2 Auto Scaling API Reference.
Required if the policy type is PredictiveScaling
.
scaling_adjustment: Option<i64>
The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value.
Required if the policy type is SimpleScaling
. (Not used with any other policy type.)
step_adjustments: Option<Vec<StepAdjustment>>
A set of adjustments that enable you to scale based on the size of the alarm breach.
Required if the policy type is StepScaling
. (Not used with any other policy type.)
target_tracking_configuration: Option<TargetTrackingConfiguration>
A target tracking scaling policy. Provides support for predefined or customized metrics.
The following predefined metrics are available:
-
ASGAverageCPUUtilization
-
ASGAverageNetworkIn
-
ASGAverageNetworkOut
-
ALBRequestCountPerTarget
If you specify ALBRequestCountPerTarget
for the metric, you must specify the ResourceLabel
parameter with the PredefinedMetricSpecification
.
For more information, see TargetTrackingConfiguration in the Amazon EC2 Auto Scaling API Reference.
Required if the policy type is TargetTrackingScaling
.
Trait Implementations
sourceimpl Clone for PutScalingPolicyType
impl Clone for PutScalingPolicyType
sourcefn clone(&self) -> PutScalingPolicyType
fn clone(&self) -> PutScalingPolicyType
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for PutScalingPolicyType
impl Debug for PutScalingPolicyType
sourceimpl Default for PutScalingPolicyType
impl Default for PutScalingPolicyType
sourcefn default() -> PutScalingPolicyType
fn default() -> PutScalingPolicyType
Returns the “default value” for a type. Read more
sourceimpl PartialEq<PutScalingPolicyType> for PutScalingPolicyType
impl PartialEq<PutScalingPolicyType> for PutScalingPolicyType
sourcefn eq(&self, other: &PutScalingPolicyType) -> bool
fn eq(&self, other: &PutScalingPolicyType) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &PutScalingPolicyType) -> bool
fn ne(&self, other: &PutScalingPolicyType) -> bool
This method tests for !=
.
impl StructuralPartialEq for PutScalingPolicyType
Auto Trait Implementations
impl RefUnwindSafe for PutScalingPolicyType
impl Send for PutScalingPolicyType
impl Sync for PutScalingPolicyType
impl Unpin for PutScalingPolicyType
impl UnwindSafe for PutScalingPolicyType
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more