[][src]Struct rusoto_gamelift::ScalingPolicy

pub struct ScalingPolicy {
    pub comparison_operator: Option<String>,
    pub evaluation_periods: Option<i64>,
    pub fleet_id: Option<String>,
    pub metric_name: Option<String>,
    pub name: Option<String>,
    pub policy_type: Option<String>,
    pub scaling_adjustment: Option<i64>,
    pub scaling_adjustment_type: Option<String>,
    pub status: Option<String>,
    pub target_configuration: Option<TargetConfiguration>,
    pub threshold: Option<f64>,
}

Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.

Fields

comparison_operator: Option<String>

Comparison operator to use when measuring a metric against the threshold value.

evaluation_periods: Option<i64>

Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.

fleet_id: Option<String>

A unique identifier for a fleet that is associated with this scaling policy.

metric_name: Option<String>

Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment. For detailed descriptions of fleet metrics, see Monitor Amazon GameLift with Amazon CloudWatch.

  • ActivatingGameSessions -- Game sessions in the process of being created.

  • ActiveGameSessions -- Game sessions that are currently running.

  • ActiveInstances -- Fleet instances that are currently running at least one game session.

  • AvailableGameSessions -- Additional game sessions that fleet could host simultaneously, given current capacity.

  • AvailablePlayerSessions -- Empty player slots in currently active game sessions. This includes game sessions that are not currently accepting players. Reserved player slots are not included.

  • CurrentPlayerSessions -- Player slots in active game sessions that are being used by a player or are reserved for a player.

  • IdleInstances -- Active instances that are currently hosting zero game sessions.

  • PercentAvailableGameSessions -- Unused percentage of the total number of game sessions that a fleet could host simultaneously, given current capacity. Use this metric for a target-based scaling policy.

  • PercentIdleInstances -- Percentage of the total number of active instances that are hosting zero game sessions.

  • QueueDepth -- Pending game session placement requests, in any queue, where the current fleet is the top-priority destination.

  • WaitTime -- Current wait time for pending game session placement requests, in any queue, where the current fleet is the top-priority destination.

name: Option<String>

A descriptive label that is associated with a scaling policy. Policy names do not need to be unique.

policy_type: Option<String>

The type of scaling policy to create. For a target-based policy, set the parameter MetricName to 'PercentAvailableGameSessions' and specify a TargetConfiguration. For a rule-based policy set the following parameters: MetricName, ComparisonOperator, Threshold, EvaluationPeriods, ScalingAdjustmentType, and ScalingAdjustment.

scaling_adjustment: Option<i64>

Amount of adjustment to make, based on the scaling adjustment type.

scaling_adjustment_type: Option<String>

The type of adjustment to make to a fleet's instance count (see FleetCapacity):

  • ChangeInCapacity -- add (or subtract) the scaling adjustment value from the current instance count. Positive values scale up while negative values scale down.

  • ExactCapacity -- set the instance count to the scaling adjustment value.

  • PercentChangeInCapacity -- increase or reduce the current instance count by the scaling adjustment, read as a percentage. Positive values scale up while negative values scale down.

status: Option<String>

Current status of the scaling policy. The scaling policy can be in force only when in an ACTIVE status. Scaling policies can be suspended for individual fleets (see StopFleetActions; if suspended for a fleet, the policy status does not change. View a fleet's stopped actions by calling DescribeFleetCapacity.

  • ACTIVE -- The scaling policy can be used for auto-scaling a fleet.

  • UPDATEREQUESTED -- A request to update the scaling policy has been received.

  • UPDATING -- A change is being made to the scaling policy.

  • DELETEREQUESTED -- A request to delete the scaling policy has been received.

  • DELETING -- The scaling policy is being deleted.

  • DELETED -- The scaling policy has been deleted.

  • ERROR -- An error occurred in creating the policy. It should be removed and recreated.

target_configuration: Option<TargetConfiguration>

The settings for a target-based scaling policy.

threshold: Option<f64>

Metric value used to trigger a scaling event.

Trait Implementations

impl Clone for ScalingPolicy[src]

impl Debug for ScalingPolicy[src]

impl Default for ScalingPolicy[src]

impl<'de> Deserialize<'de> for ScalingPolicy[src]

impl PartialEq<ScalingPolicy> for ScalingPolicy[src]

impl StructuralPartialEq for ScalingPolicy[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.