AutoScalingPlans / Paginator / DescribeScalingPlanResources

DescribeScalingPlanResources#

class AutoScalingPlans.Paginator.DescribeScalingPlanResources#
paginator = client.get_paginator('describe_scaling_plan_resources')
paginate(**kwargs)#

Creates an iterator that will paginate through responses from AutoScalingPlans.Client.describe_scaling_plan_resources().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    ScalingPlanName='string',
    ScalingPlanVersion=123,
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters:
  • ScalingPlanName (string) –

    [REQUIRED]

    The name of the scaling plan.

  • ScalingPlanVersion (integer) –

    [REQUIRED]

    The version number of the scaling plan. Currently, the only valid value is 1.

  • PaginationConfig (dict) –

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) –

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) –

      The size of each page.

    • StartingToken (string) –

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type:

dict

Returns:

Response Syntax

{
    'ScalingPlanResources': [
        {
            'ScalingPlanName': 'string',
            'ScalingPlanVersion': 123,
            'ServiceNamespace': 'autoscaling'|'ecs'|'ec2'|'rds'|'dynamodb',
            'ResourceId': 'string',
            'ScalableDimension': 'autoscaling:autoScalingGroup:DesiredCapacity'|'ecs:service:DesiredCount'|'ec2:spot-fleet-request:TargetCapacity'|'rds:cluster:ReadReplicaCount'|'dynamodb:table:ReadCapacityUnits'|'dynamodb:table:WriteCapacityUnits'|'dynamodb:index:ReadCapacityUnits'|'dynamodb:index:WriteCapacityUnits',
            'ScalingPolicies': [
                {
                    'PolicyName': 'string',
                    'PolicyType': 'TargetTrackingScaling',
                    'TargetTrackingConfiguration': {
                        'PredefinedScalingMetricSpecification': {
                            'PredefinedScalingMetricType': 'ASGAverageCPUUtilization'|'ASGAverageNetworkIn'|'ASGAverageNetworkOut'|'DynamoDBReadCapacityUtilization'|'DynamoDBWriteCapacityUtilization'|'ECSServiceAverageCPUUtilization'|'ECSServiceAverageMemoryUtilization'|'ALBRequestCountPerTarget'|'RDSReaderAverageCPUUtilization'|'RDSReaderAverageDatabaseConnections'|'EC2SpotFleetRequestAverageCPUUtilization'|'EC2SpotFleetRequestAverageNetworkIn'|'EC2SpotFleetRequestAverageNetworkOut',
                            'ResourceLabel': 'string'
                        },
                        'CustomizedScalingMetricSpecification': {
                            'MetricName': 'string',
                            'Namespace': 'string',
                            'Dimensions': [
                                {
                                    'Name': 'string',
                                    'Value': 'string'
                                },
                            ],
                            'Statistic': 'Average'|'Minimum'|'Maximum'|'SampleCount'|'Sum',
                            'Unit': 'string'
                        },
                        'TargetValue': 123.0,
                        'DisableScaleIn': True|False,
                        'ScaleOutCooldown': 123,
                        'ScaleInCooldown': 123,
                        'EstimatedInstanceWarmup': 123
                    }
                },
            ],
            'ScalingStatusCode': 'Inactive'|'PartiallyActive'|'Active',
            'ScalingStatusMessage': 'string'
        },
    ],

}

Response Structure

  • (dict) –

    • ScalingPlanResources (list) –

      Information about the scalable resources.

      • (dict) –

        Represents a scalable resource.

        • ScalingPlanName (string) –

          The name of the scaling plan.

        • ScalingPlanVersion (integer) –

          The version number of the scaling plan.

        • ServiceNamespace (string) –

          The namespace of the AWS service.

        • ResourceId (string) –

          The ID of the resource. This string consists of the resource type and unique identifier.

          • Auto Scaling group - The resource type is autoScalingGroup and the unique identifier is the name of the Auto Scaling group. Example: autoScalingGroup/my-asg.

          • ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: service/default/sample-webapp.

          • Spot Fleet request - The resource type is spot-fleet-request and the unique identifier is the Spot Fleet request ID. Example: spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE.

          • DynamoDB table - The resource type is table and the unique identifier is the resource ID. Example: table/my-table.

          • DynamoDB global secondary index - The resource type is index and the unique identifier is the resource ID. Example: table/my-table/index/my-table-index.

          • Aurora DB cluster - The resource type is cluster and the unique identifier is the cluster name. Example: cluster:my-db-cluster.

        • ScalableDimension (string) –

          The scalable dimension for the resource.

          • autoscaling:autoScalingGroup:DesiredCapacity - The desired capacity of an Auto Scaling group.

          • ecs:service:DesiredCount - The desired task count of an ECS service.

          • ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot Fleet request.

          • dynamodb:table:ReadCapacityUnits - The provisioned read capacity for a DynamoDB table.

          • dynamodb:table:WriteCapacityUnits - The provisioned write capacity for a DynamoDB table.

          • dynamodb:index:ReadCapacityUnits - The provisioned read capacity for a DynamoDB global secondary index.

          • dynamodb:index:WriteCapacityUnits - The provisioned write capacity for a DynamoDB global secondary index.

          • rds:cluster:ReadReplicaCount - The count of Aurora Replicas in an Aurora DB cluster. Available for Aurora MySQL-compatible edition and Aurora PostgreSQL-compatible edition.

        • ScalingPolicies (list) –

          The scaling policies.

          • (dict) –

            Represents a scaling policy.

            • PolicyName (string) –

              The name of the scaling policy.

            • PolicyType (string) –

              The type of scaling policy.

            • TargetTrackingConfiguration (dict) –

              The target tracking scaling policy. Includes support for predefined or customized metrics.

              • PredefinedScalingMetricSpecification (dict) –

                A predefined metric. You can specify either a predefined metric or a customized metric.

                • PredefinedScalingMetricType (string) –

                  The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.

                • ResourceLabel (string) –

                  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 for an Application Load Balancer attached to the Auto Scaling group, 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.

              • CustomizedScalingMetricSpecification (dict) –

                A customized metric. You can specify either a predefined metric or a customized metric.

                • MetricName (string) –

                  The name of the metric.

                • Namespace (string) –

                  The namespace of the metric.

                • Dimensions (list) –

                  The dimensions of the metric.

                  Conditional: If you published your metric with dimensions, you must specify the same dimensions in your customized scaling metric specification.

                  • (dict) –

                    Represents a dimension for a customized metric.

                    • Name (string) –

                      The name of the dimension.

                    • Value (string) –

                      The value of the dimension.

                • Statistic (string) –

                  The statistic of the metric.

                • Unit (string) –

                  The unit of the metric.

              • TargetValue (float) –

                The target value for the metric. Although this property accepts numbers of type Double, it won’t accept values that are either too small or too large. Values must be in the range of -2^360 to 2^360.

              • DisableScaleIn (boolean) –

                Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn’t remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource.

                The default value is false.

              • ScaleOutCooldown (integer) –

                The amount of time, in seconds, to wait for a previous scale-out activity to take effect. This property is not used if the scalable resource is an Auto Scaling group.

                With the scale-out cooldown period, the intention is to continuously (but not excessively) scale out. After Auto Scaling successfully scales out using a target tracking scaling policy, it starts to calculate the cooldown time. The scaling policy won’t increase the desired capacity again unless either a larger scale out is triggered or the cooldown period ends.

              • ScaleInCooldown (integer) –

                The amount of time, in seconds, after a scale-in activity completes before another scale-in activity can start. This property is not used if the scalable resource is an Auto Scaling group.

                With the scale-in cooldown period, the intention is to scale in conservatively to protect your application’s availability, so scale-in activities are blocked until the cooldown period has expired. However, if another alarm triggers a scale-out activity during the scale-in cooldown period, Auto Scaling scales out the target immediately. In this case, the scale-in cooldown period stops and doesn’t complete.

              • EstimatedInstanceWarmup (integer) –

                The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.

        • ScalingStatusCode (string) –

          The scaling status of the resource.

          • Active - The scaling configuration is active.

          • Inactive - The scaling configuration is not active because the scaling plan is being created or the scaling configuration could not be applied. Check the status message for more information.

          • PartiallyActive - The scaling configuration is partially active because the scaling plan is being created or deleted or the scaling configuration could not be fully applied. Check the status message for more information.

        • ScalingStatusMessage (string) –

          A simple message about the current scaling status of the resource.