AutoScaling / Client / execute_policy

execute_policy#

AutoScaling.Client.execute_policy(**kwargs)#

Executes the specified policy. This can be useful for testing the design of your scaling policy.

See also: AWS API Documentation

Request Syntax

response = client.execute_policy(
    AutoScalingGroupName='string',
    PolicyName='string',
    HonorCooldown=True|False,
    MetricValue=123.0,
    BreachThreshold=123.0
)
Parameters:
  • AutoScalingGroupName (string) – The name of the Auto Scaling group.

  • PolicyName (string) –

    [REQUIRED]

    The name or ARN of the policy.

  • HonorCooldown (boolean) –

    Indicates whether Amazon EC2 Auto Scaling waits for the cooldown period to complete before executing the policy.

    Valid only if the policy type is SimpleScaling. For more information, see Scaling cooldowns for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide.

  • MetricValue (float) –

    The metric value to compare to BreachThreshold. This enables you to execute a policy of type StepScaling and determine which step adjustment to use. For example, if the breach threshold is 50 and you want to use a step adjustment with a lower bound of 0 and an upper bound of 10, you can set the metric value to 59.

    If you specify a metric value that doesn’t correspond to a step adjustment for the policy, the call returns an error.

    Required if the policy type is StepScaling and not supported otherwise.

  • BreachThreshold (float) –

    The breach threshold for the alarm.

    Required if the policy type is StepScaling and not supported otherwise.

Returns:

None

Exceptions

  • AutoScaling.Client.exceptions.ScalingActivityInProgressFault

  • AutoScaling.Client.exceptions.ResourceContentionFault

Examples

This example executes the specified policy.

response = client.execute_policy(
    AutoScalingGroupName='my-auto-scaling-group',
    BreachThreshold=50.0,
    MetricValue=59.0,
    PolicyName='my-step-scale-out-policy',
)

print(response)

Expected Output:

{
    'ResponseMetadata': {
        '...': '...',
    },
}