Interface PutScalingPolicyRequest.Builder

  • Method Details

    • name

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

      Parameters:
      name - A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique. A fleet can have only one scaling policy with the same name.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • fleetId

      A unique identifier for the 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.

      Parameters:
      fleetId - A unique identifier for the 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:
      Returns a reference to this object so that method calls can be chained together.
    • scalingAdjustment

      PutScalingPolicyRequest.Builder scalingAdjustment(Integer scalingAdjustment)

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

      Parameters:
      scalingAdjustment - Amount of adjustment to make, based on the scaling adjustment type.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • scalingAdjustmentType

      PutScalingPolicyRequest.Builder scalingAdjustmentType(String scalingAdjustmentType)

      The type of adjustment to make to a fleet's instance count:

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

      Parameters:
      scalingAdjustmentType - The type of adjustment to make to a fleet's instance count:

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

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • scalingAdjustmentType

      PutScalingPolicyRequest.Builder scalingAdjustmentType(ScalingAdjustmentType scalingAdjustmentType)

      The type of adjustment to make to a fleet's instance count:

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

      Parameters:
      scalingAdjustmentType - The type of adjustment to make to a fleet's instance count:

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

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • threshold

      Metric value used to trigger a scaling event.

      Parameters:
      threshold - Metric value used to trigger a scaling event.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • comparisonOperator

      PutScalingPolicyRequest.Builder comparisonOperator(String comparisonOperator)

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

      Parameters:
      comparisonOperator - Comparison operator to use when measuring the metric against the threshold value.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • comparisonOperator

      PutScalingPolicyRequest.Builder comparisonOperator(ComparisonOperatorType comparisonOperator)

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

      Parameters:
      comparisonOperator - Comparison operator to use when measuring the metric against the threshold value.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • evaluationPeriods

      PutScalingPolicyRequest.Builder evaluationPeriods(Integer evaluationPeriods)

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

      Parameters:
      evaluationPeriods - Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • metricName

      PutScalingPolicyRequest.Builder metricName(String metricName)

      Name of the Amazon GameLift Servers-defined metric that is used to trigger a scaling adjustment. For detailed descriptions of fleet metrics, see Monitor Amazon GameLift Servers 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.

      Parameters:
      metricName - Name of the Amazon GameLift Servers-defined metric that is used to trigger a scaling adjustment. For detailed descriptions of fleet metrics, see Monitor Amazon GameLift Servers 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:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • metricName

      Name of the Amazon GameLift Servers-defined metric that is used to trigger a scaling adjustment. For detailed descriptions of fleet metrics, see Monitor Amazon GameLift Servers 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.

      Parameters:
      metricName - Name of the Amazon GameLift Servers-defined metric that is used to trigger a scaling adjustment. For detailed descriptions of fleet metrics, see Monitor Amazon GameLift Servers 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:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • policyType

      PutScalingPolicyRequest.Builder policyType(String policyType)

      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.

      Parameters:
      policyType - 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.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • policyType

      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.

      Parameters:
      policyType - 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.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • targetConfiguration

      PutScalingPolicyRequest.Builder targetConfiguration(TargetConfiguration targetConfiguration)

      An object that contains settings for a target-based scaling policy.

      Parameters:
      targetConfiguration - An object that contains settings for a target-based scaling policy.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • targetConfiguration

      default PutScalingPolicyRequest.Builder targetConfiguration(Consumer<TargetConfiguration.Builder> targetConfiguration)

      An object that contains settings for a target-based scaling policy.

      This is a convenience method that creates an instance of the TargetConfiguration.Builder avoiding the need to create one manually via TargetConfiguration.builder().

      When the Consumer completes, SdkBuilder.build() is called immediately and its result is passed to targetConfiguration(TargetConfiguration).

      Parameters:
      targetConfiguration - a consumer that will call methods on TargetConfiguration.Builder
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • overrideConfiguration

      PutScalingPolicyRequest.Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration)
      Description copied from interface: AwsRequest.Builder
      Add an optional request override configuration.
      Specified by:
      overrideConfiguration in interface AwsRequest.Builder
      Parameters:
      overrideConfiguration - The override configuration.
      Returns:
      This object for method chaining.
    • overrideConfiguration

      Description copied from interface: AwsRequest.Builder
      Add an optional request override configuration.
      Specified by:
      overrideConfiguration in interface AwsRequest.Builder
      Parameters:
      builderConsumer - A Consumer to which an empty AwsRequestOverrideConfiguration.Builder will be given.
      Returns:
      This object for method chaining.