Amazon GameLift · Schema
PutScalingPolicyInput
PutScalingPolicyInput schema from Amazon GameLift API
Cloud ComputingGame ServersGamingMultiplayerMatchmakingFlexMatchFleetIQ
Properties
| Name | Type | Description |
|---|---|---|
| Name | object | |
| FleetId | object | |
| ScalingAdjustment | object | |
| ScalingAdjustmentType | object | |
| Threshold | object | |
| ComparisonOperator | object | |
| EvaluationPeriods | object | |
| MetricName | object | |
| PolicyType | object | |
| TargetConfiguration | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-gamelift/refs/heads/main/json-schema/gamelift-put-scaling-policy-input-schema.json",
"title": "PutScalingPolicyInput",
"description": "PutScalingPolicyInput schema from Amazon GameLift API",
"type": "object",
"properties": {
"Name": {
"allOf": [
{
"$ref": "#/components/schemas/NonZeroAndMaxString"
},
{
"description": "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."
}
]
},
"FleetId": {
"allOf": [
{
"$ref": "#/components/schemas/FleetIdOrArn"
},
{
"description": "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."
}
]
},
"ScalingAdjustment": {
"allOf": [
{
"$ref": "#/components/schemas/Integer"
},
{
"description": "Amount of adjustment to make, based on the scaling adjustment type."
}
]
},
"ScalingAdjustmentType": {
"allOf": [
{
"$ref": "#/components/schemas/ScalingAdjustmentType"
},
{
"description": "<p>The type of adjustment to make to a fleet's instance count:</p> <ul> <li> <p> <b>ChangeInCapacity</b> -- add (or subtract) the scaling adjustment value from the current instance count. Positive values scale up while negative values scale down.</p> </li> <li> <p> <b>ExactCapacity</b> -- set the instance count to the scaling adjustment value.</p> </li> <li> <p> <b>PercentChangeInCapacity</b> -- 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%.</p> </li> </ul>"
}
]
},
"Threshold": {
"allOf": [
{
"$ref": "#/components/schemas/Double"
},
{
"description": "Metric value used to trigger a scaling event."
}
]
},
"ComparisonOperator": {
"allOf": [
{
"$ref": "#/components/schemas/ComparisonOperatorType"
},
{
"description": "Comparison operator to use when measuring the metric against the threshold value."
}
]
},
"EvaluationPeriods": {
"allOf": [
{
"$ref": "#/components/schemas/PositiveInteger"
},
{
"description": "Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered."
}
]
},
"MetricName": {
"allOf": [
{
"$ref": "#/components/schemas/MetricName"
},
{
"description": "<p>Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment. For detailed descriptions of fleet metrics, see <a href=\"https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html\">Monitor Amazon GameLift with Amazon CloudWatch</a>. </p> <ul> <li> <p> <b>ActivatingGameSessions</b> -- Game sessions in the process of being created.</p> </li> <li> <p> <b>ActiveGameSessions</b> -- Game sessions that are currently running.</p> </li> <li> <p> <b>ActiveInstances</b> -- Fleet instances that are currently running at least one game session.</p> </li> <li> <p> <b>AvailableGameSessions</b> -- Additional game sessions that fleet could host simultaneously, given current capacity.</p> </li> <li> <p> <b>AvailablePlayerSessions</b> -- Empty player slots in currently active game sessions. This includes game sessions that are not currently accepting players. Reserved player slots are not included.</p> </li> <li> <p> <b>CurrentPlayerSessions</b> -- Player slots in active game sessions that are being used by a player or are reserved for a player. </p> </li> <li> <p> <b>IdleInstances</b> -- Active instances that are currently hosting zero game sessions. </p> </li> <li> <p> <b>PercentAvailableGameSessions</b> -- 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.</p> </li> <li> <p> <b>PercentIdleInstances</b> -- Percentage of the total number of active instances that are hosting zero game sessions.</p> </li> <li> <p> <b>QueueDepth</b> -- Pending game session placement requests, in any queue, where the current fleet is the top-priority destination.</p> </li> <li> <p> <b>WaitTime</b> -- Current wait time for pending game session placement requests, in any queue, where the current fleet is the top-priority destination. </p> </li> </ul>"
}
]
},
"PolicyType": {
"allOf": [
{
"$ref": "#/components/schemas/PolicyType"
},
{
"description": "The type of scaling policy to create. For a target-based policy, set the parameter <i>MetricName</i> to 'PercentAvailableGameSessions' and specify a <i>TargetConfiguration</i>. For a rule-based policy set the following parameters: <i>MetricName</i>, <i>ComparisonOperator</i>, <i>Threshold</i>, <i>EvaluationPeriods</i>, <i>ScalingAdjustmentType</i>, and <i>ScalingAdjustment</i>."
}
]
},
"TargetConfiguration": {
"allOf": [
{
"$ref": "#/components/schemas/TargetConfiguration"
},
{
"description": "An object that contains settings for a target-based scaling policy."
}
]
}
},
"required": [
"Name",
"FleetId",
"MetricName"
]
}