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

Class: Aws::ApplicationAutoScaling::Types::PredefinedMetricSpecification

  • Object
show all
Defined in:



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

  predefined_metric_type: "DynamoDBReadCapacityUtilization", # required, accepts DynamoDBReadCapacityUtilization, DynamoDBWriteCapacityUtilization, ALBRequestCountPerTarget, RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections, EC2SpotFleetRequestAverageCPUUtilization, EC2SpotFleetRequestAverageNetworkIn, EC2SpotFleetRequestAverageNetworkOut, SageMakerVariantInvocationsPerInstance, ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization, AppStreamAverageCapacityUtilization, ComprehendInferenceUtilization, LambdaProvisionedConcurrencyUtilization, CassandraReadCapacityUtilization, CassandraWriteCapacityUtilization, KafkaBrokerStorageUtilization
  resource_label: "ResourceLabel",

Represents a predefined metric for a target tracking scaling policy to use with Application Auto Scaling.

Only the AWS services that you're using send metrics to Amazon CloudWatch. To determine whether a desired metric already exists by looking up its namespace and dimension using the CloudWatch metrics dashboard in the console, follow the procedure in Building Dashboards with CloudWatch in the Application Auto Scaling User Guide.

Returned by:

Instance Attribute Summary collapse

Instance Attribute Details


The metric type. The ALBRequestCountPerTarget metric type applies only to Spot Fleet requests and ECS services.

Possible values:

  • DynamoDBReadCapacityUtilization
  • DynamoDBWriteCapacityUtilization
  • ALBRequestCountPerTarget
  • RDSReaderAverageCPUUtilization
  • RDSReaderAverageDatabaseConnections
  • EC2SpotFleetRequestAverageCPUUtilization
  • EC2SpotFleetRequestAverageNetworkIn
  • EC2SpotFleetRequestAverageNetworkOut
  • SageMakerVariantInvocationsPerInstance
  • ECSServiceAverageCPUUtilization
  • ECSServiceAverageMemoryUtilization
  • AppStreamAverageCapacityUtilization
  • ComprehendInferenceUtilization
  • LambdaProvisionedConcurrencyUtilization
  • CassandraReadCapacityUtilization
  • CassandraWriteCapacityUtilization
  • KafkaBrokerStorageUtilization


  • (String)

    The metric type.


Identifies the resource associated with the metric type. You can\'t specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group attached to the Spot Fleet request or ECS service.

You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). The format is app/<load-balancer-name>/<load-balancer-id>/targetgroup/<target-group-name>/<target-group-id>, where:

  • app/<load-balancer-name>/<load-balancer-id> is the final portion of the load balancer ARN

  • targetgroup/<target-group-name>/<target-group-id> is the final portion of the target group ARN.

This is an example: app/EC2Co-EcsEl-1TKLTMITMM0EO/f37c06a68c1748aa/targetgroup/EC2Co-Defau-LDNM7Q3ZH1ZN/6d4ea56ca2d6a18d.

To find the ARN for an Application Load Balancer, use the DescribeLoadBalancers API operation. To find the ARN for the target group, use the DescribeTargetGroups API operation.


  • (String)

    Identifies the resource associated with the metric type.