{ "$schema": "https://json-structure.org/meta/core/v0/#", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-ec2-auto-scaling/refs/heads/main/json-structure/ec2-auto-scaling-predictive-scaling-metric-specification-structure.json", "name": "PredictiveScalingMetricSpecification", "description": "

This structure specifies the metrics and target utilization settings for a predictive scaling policy.

You must specify either a metric pair, or a load metric and a scaling metric individually. Specifying a metric pair instead of individual metrics provides a simpler way to configure metrics for a scaling policy. You choose the metric pair, and the policy automatically knows the correct sum and average statistics to use for the load metric and the scaling metric.

Example

For information about using custom metrics with predictive scaling, see Advanced predictive scaling policy configurations using custom metrics in the Amazon EC2 Auto Scaling User Guide.

", "type": "object", "properties": { "TargetValue": { "allOf": [ { "$ref": "#/components/schemas/MetricScale" }, { "description": "

Specifies the target utilization.

Some metrics are based on a count instead of a percentage, such as the request count for an Application Load Balancer or the number of messages in an SQS queue. If the scaling policy specifies one of these metrics, specify the target utilization as the optimal average request or message count per instance during any one-minute interval.

" } ] }, "PredefinedMetricPairSpecification": { "allOf": [ { "$ref": "#/components/schemas/PredictiveScalingPredefinedMetricPair" }, { "description": "The predefined metric pair specification from which Amazon EC2 Auto Scaling determines the appropriate scaling metric and load metric to use." } ] }, "PredefinedScalingMetricSpecification": { "allOf": [ { "$ref": "#/components/schemas/PredictiveScalingPredefinedScalingMetric" }, { "description": "The predefined scaling metric specification." } ] }, "PredefinedLoadMetricSpecification": { "allOf": [ { "$ref": "#/components/schemas/PredictiveScalingPredefinedLoadMetric" }, { "description": "The predefined load metric specification." } ] }, "CustomizedScalingMetricSpecification": { "allOf": [ { "$ref": "#/components/schemas/PredictiveScalingCustomizedScalingMetric" }, { "description": "The customized scaling metric specification." } ] }, "CustomizedLoadMetricSpecification": { "allOf": [ { "$ref": "#/components/schemas/PredictiveScalingCustomizedLoadMetric" }, { "description": "The customized load metric specification." } ] }, "CustomizedCapacityMetricSpecification": { "allOf": [ { "$ref": "#/components/schemas/PredictiveScalingCustomizedCapacityMetric" }, { "description": "The customized capacity metric specification." } ] } }, "required": [ "TargetValue" ] }