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

Class: Aws::GameLift::Types::PutScalingPolicyInput

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing PutScalingPolicyInput as input to an Aws::Client method, you can use a vanilla Hash:

{
  name: "NonZeroAndMaxString", # required
  fleet_id: "FleetIdOrArn", # required
  scaling_adjustment: 1,
  scaling_adjustment_type: "ChangeInCapacity", # accepts ChangeInCapacity, ExactCapacity, PercentChangeInCapacity
  threshold: 1.0,
  comparison_operator: "GreaterThanOrEqualToThreshold", # accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold
  evaluation_periods: 1,
  metric_name: "ActivatingGameSessions", # required, accepts ActivatingGameSessions, ActiveGameSessions, ActiveInstances, AvailableGameSessions, AvailablePlayerSessions, CurrentPlayerSessions, IdleInstances, PercentAvailableGameSessions, PercentIdleInstances, QueueDepth, WaitTime
  policy_type: "RuleBased", # accepts RuleBased, TargetBased
  target_configuration: {
    target_value: 1.0, # required
  },
}

Represents the input for a request operation.

Instance Attribute Summary collapse

Instance Attribute Details

#comparison_operatorString

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

Possible values:

  • GreaterThanOrEqualToThreshold
  • GreaterThanThreshold
  • LessThanThreshold
  • LessThanOrEqualToThreshold

Returns:

  • (String)

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

#evaluation_periodsInteger

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

Returns:

  • (Integer)

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

#fleet_idString

A unique identifier for a fleet to apply this policy to. You can use either the fleet ID or ARN value. The fleet cannot be in any of the following statuses: ERROR or DELETING.

Returns:

  • (String)

    A unique identifier for a fleet to apply this policy to.

#metric_nameString

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.

Returns:

  • (String)

    Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment.

#nameString

A descriptive label that is associated with a scaling policy. Policy names do not need to be unique. A fleet can have only one scaling policy with the same name.

Returns:

  • (String)

    A descriptive label that is associated with a scaling policy.

#policy_typeString

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.

Possible values:

  • RuleBased
  • TargetBased

Returns:

  • (String)

    The type of scaling policy to create.

#scaling_adjustmentInteger

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

Returns:

  • (Integer)

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

#scaling_adjustment_typeString

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; for example, a value of \"-10\" scales the fleet down by 10%.

    Possible values:

    • ChangeInCapacity
    • ExactCapacity
    • PercentChangeInCapacity

Returns:

  • (String)

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

#target_configurationTypes::TargetConfiguration

The settings for a target-based scaling policy.

Returns:

#thresholdFloat

Metric value used to trigger a scaling event.

Returns:

  • (Float)

    Metric value used to trigger a scaling event.