:doc:`AutoScaling <../../autoscaling>` / Client / execute_policy

**************
execute_policy
**************



.. py:method:: 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 <https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExecutePolicy>`_  


  **Request Syntax**
  ::

    response = client.execute_policy(
        AutoScalingGroupName='string',
        PolicyName='string',
        HonorCooldown=True|False,
        MetricValue=123.0,
        BreachThreshold=123.0
    )
    
  :type AutoScalingGroupName: string
  :param AutoScalingGroupName: 

    The name of the Auto Scaling group.

    

  
  :type PolicyName: string
  :param PolicyName: **[REQUIRED]** 

    The name or ARN of the policy.

    

  
  :type HonorCooldown: boolean
  :param HonorCooldown: 

    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 <https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-scaling-cooldowns.html>`__ in the *Amazon EC2 Auto Scaling User Guide*.

    

  
  :type MetricValue: float
  :param MetricValue: 

    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.

    

  
  :type BreachThreshold: float
  :param BreachThreshold: 

    The breach threshold for the alarm.

     

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

    

  
  
  :returns: None
  **Exceptions**
  
  *   :py:class:`AutoScaling.Client.exceptions.ScalingActivityInProgressFault`

  
  *   :py:class:`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': {
            '...': '...',
        },
    }

  