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

Class: Aws::GameLift::Types::ScalingPolicy

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

Overview

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

Operations related to fleet capacity scaling include:

  • DescribeFleetCapacity

  • UpdateFleetCapacity

  • DescribeEC2InstanceLimits

  • Manage scaling policies:

    • PutScalingPolicy (auto-scaling)

    • DescribeScalingPolicies (auto-scaling)

    • DeleteScalingPolicy (auto-scaling)

  • Manage fleet actions:

    • StartFleetActions

    • StopFleetActions

Instance Attribute Summary collapse

Instance Attribute Details

#comparison_operatorString

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

Returns:

  • (String)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#evaluation_periodsInteger

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

Returns:

  • (Integer)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#fleet_idString

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

Returns:

  • (String)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#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)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#nameString

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

Returns:

  • (String)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#policy_typeString

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.

Returns:

  • (String)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#scaling_adjustmentInteger

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

Returns:

  • (Integer)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#scaling_adjustment_typeString

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.

Returns:

  • (String)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#statusString

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.

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

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

  • DELETE_REQUESTED -- 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.

Returns:

  • (String)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#target_configurationTypes::TargetConfiguration

Object that contains settings for a target-based scaling policy.



5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end

#thresholdFloat

Metric value used to trigger a scaling event.

Returns:

  • (Float)


5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
# File 'gems/aws-sdk-gamelift/lib/aws-sdk-gamelift/types.rb', line 5451

class ScalingPolicy < Struct.new(
  :fleet_id,
  :name,
  :status,
  :scaling_adjustment,
  :scaling_adjustment_type,
  :comparison_operator,
  :threshold,
  :evaluation_periods,
  :metric_name,
  :policy_type,
  :target_configuration)
  include Aws::Structure
end