#[non_exhaustive]
pub struct AutoScalingThresholds { pub instance_count: Option<i32>, pub thresholds_wait_time: Option<i32>, pub ignore_metrics_time: Option<i32>, pub cpu_threshold: Option<f64>, pub memory_threshold: Option<f64>, pub load_threshold: Option<f64>, pub alarms: Option<Vec<String>>, }
Expand description

Describes a load-based auto scaling upscaling or downscaling threshold configuration, which specifies when AWS OpsWorks Stacks starts or stops load-based instances.

Fields (Non-exhaustive)

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
instance_count: Option<i32>

The number of instances to add or remove when the load exceeds a threshold.

thresholds_wait_time: Option<i32>

The amount of time, in minutes, that the load must exceed a threshold before more instances are added or removed.

ignore_metrics_time: Option<i32>

The amount of time (in minutes) after a scaling event occurs that AWS OpsWorks Stacks should ignore metrics and suppress additional scaling events. For example, AWS OpsWorks Stacks adds new instances following an upscaling event but the instances won't start reducing the load until they have been booted and configured. There is no point in raising additional scaling events during that operation, which typically takes several minutes. IgnoreMetricsTime allows you to direct AWS OpsWorks Stacks to suppress scaling events long enough to get the new instances online.

cpu_threshold: Option<f64>

The CPU utilization threshold, as a percent of the available CPU. A value of -1 disables the threshold.

memory_threshold: Option<f64>

The memory utilization threshold, as a percent of the available memory. A value of -1 disables the threshold.

load_threshold: Option<f64>

The load threshold. A value of -1 disables the threshold. For more information about how load is computed, see Load (computing).

alarms: Option<Vec<String>>

Custom Cloudwatch auto scaling alarms, to be used as thresholds. This parameter takes a list of up to five alarm names, which are case sensitive and must be in the same region as the stack.

To use custom alarms, you must update your service role to allow cloudwatch:DescribeAlarms. You can either have AWS OpsWorks Stacks update the role for you when you first use this feature or you can edit the role manually. For more information, see Allowing AWS OpsWorks Stacks to Act on Your Behalf.

Implementations

The number of instances to add or remove when the load exceeds a threshold.

The amount of time, in minutes, that the load must exceed a threshold before more instances are added or removed.

The amount of time (in minutes) after a scaling event occurs that AWS OpsWorks Stacks should ignore metrics and suppress additional scaling events. For example, AWS OpsWorks Stacks adds new instances following an upscaling event but the instances won't start reducing the load until they have been booted and configured. There is no point in raising additional scaling events during that operation, which typically takes several minutes. IgnoreMetricsTime allows you to direct AWS OpsWorks Stacks to suppress scaling events long enough to get the new instances online.

The CPU utilization threshold, as a percent of the available CPU. A value of -1 disables the threshold.

The memory utilization threshold, as a percent of the available memory. A value of -1 disables the threshold.

The load threshold. A value of -1 disables the threshold. For more information about how load is computed, see Load (computing).

Custom Cloudwatch auto scaling alarms, to be used as thresholds. This parameter takes a list of up to five alarm names, which are case sensitive and must be in the same region as the stack.

To use custom alarms, you must update your service role to allow cloudwatch:DescribeAlarms. You can either have AWS OpsWorks Stacks update the role for you when you first use this feature or you can edit the role manually. For more information, see Allowing AWS OpsWorks Stacks to Act on Your Behalf.

Creates a new builder-style object to manufacture AutoScalingThresholds

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more