amazonka-application-autoscaling-1.4.3: Amazon Application Auto Scaling SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.ApplicationAutoScaling.PutScalingPolicy

Contents

Description

Creates or updates a policy for an existing Application Auto Scaling scalable target. Each scalable target is identified by service namespace, a resource ID, and a scalable dimension, and a scaling policy applies to a scalable target that is identified by those three attributes. You cannot create a scaling policy without first registering a scalable target with RegisterScalableTarget.

To update an existing policy, use the existing policy name and set the parameters you want to change. Any existing parameter not changed in an update to an existing policy is not changed in this update request.

You can view the existing scaling policies for a service namespace with DescribeScalingPolicies. If you are no longer using a scaling policy, you can delete it with DeleteScalingPolicy.

Synopsis

Creating a Request

data PutScalingPolicy Source #

See: putScalingPolicy smart constructor.

Instances

Eq PutScalingPolicy Source # 
Data PutScalingPolicy Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PutScalingPolicy -> c PutScalingPolicy #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PutScalingPolicy #

toConstr :: PutScalingPolicy -> Constr #

dataTypeOf :: PutScalingPolicy -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c PutScalingPolicy) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PutScalingPolicy) #

gmapT :: (forall b. Data b => b -> b) -> PutScalingPolicy -> PutScalingPolicy #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PutScalingPolicy -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PutScalingPolicy -> r #

gmapQ :: (forall d. Data d => d -> u) -> PutScalingPolicy -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PutScalingPolicy -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PutScalingPolicy -> m PutScalingPolicy #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PutScalingPolicy -> m PutScalingPolicy #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PutScalingPolicy -> m PutScalingPolicy #

Read PutScalingPolicy Source # 
Show PutScalingPolicy Source # 
Generic PutScalingPolicy Source # 
ToJSON PutScalingPolicy Source # 
Hashable PutScalingPolicy Source # 
NFData PutScalingPolicy Source # 

Methods

rnf :: PutScalingPolicy -> () #

AWSRequest PutScalingPolicy Source # 
ToPath PutScalingPolicy Source # 
ToHeaders PutScalingPolicy Source # 
ToQuery PutScalingPolicy Source # 
type Rep PutScalingPolicy Source # 
type Rep PutScalingPolicy = D1 (MetaData "PutScalingPolicy" "Network.AWS.ApplicationAutoScaling.PutScalingPolicy" "amazonka-application-autoscaling-1.4.3-AN6n0v3PjFC88P4FkDV0Y6" False) (C1 (MetaCons "PutScalingPolicy'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_pspPolicyType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe PolicyType))) ((:*:) (S1 (MetaSel (Just Symbol "_pspStepScalingPolicyConfiguration") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe StepScalingPolicyConfiguration))) (S1 (MetaSel (Just Symbol "_pspPolicyName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)))) ((:*:) (S1 (MetaSel (Just Symbol "_pspServiceNamespace") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ServiceNamespace)) ((:*:) (S1 (MetaSel (Just Symbol "_pspResourceId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_pspScalableDimension") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ScalableDimension))))))
type Rs PutScalingPolicy Source # 

Request Lenses

pspPolicyType :: Lens' PutScalingPolicy (Maybe PolicyType) Source #

The policy type. This parameter is required if you are creating a new policy.

pspStepScalingPolicyConfiguration :: Lens' PutScalingPolicy (Maybe StepScalingPolicyConfiguration) Source #

The configuration for the step scaling policy. This parameter is required if you are creating a new policy. For more information, see StepScalingPolicyConfiguration and StepAdjustment in the Application Auto Scaling API Reference.

pspPolicyName :: Lens' PutScalingPolicy Text Source #

The name of the scaling policy.

pspServiceNamespace :: Lens' PutScalingPolicy ServiceNamespace Source #

The AWS service namespace of the scalable target that this scaling policy applies to. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference.

pspResourceId :: Lens' PutScalingPolicy Text Source #

The unique resource identifier string for the scalable target that this scaling policy applies to. For Amazon ECS services, this value is the resource type, followed by the cluster name and service name, such as 'service\/default\/sample-webapp'.

pspScalableDimension :: Lens' PutScalingPolicy ScalableDimension Source #

The scalable dimension of the scalable target that this scaling policy applies to. The scalable dimension contains the service namespace, resource type, and scaling property, such as 'ecs:service:DesiredCount' for the desired task count of an Amazon ECS service.

Destructuring the Response

putScalingPolicyResponse Source #

Creates a value of PutScalingPolicyResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data PutScalingPolicyResponse Source #

See: putScalingPolicyResponse smart constructor.

Instances

Eq PutScalingPolicyResponse Source # 
Data PutScalingPolicyResponse Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PutScalingPolicyResponse -> c PutScalingPolicyResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PutScalingPolicyResponse #

toConstr :: PutScalingPolicyResponse -> Constr #

dataTypeOf :: PutScalingPolicyResponse -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c PutScalingPolicyResponse) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PutScalingPolicyResponse) #

gmapT :: (forall b. Data b => b -> b) -> PutScalingPolicyResponse -> PutScalingPolicyResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PutScalingPolicyResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PutScalingPolicyResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> PutScalingPolicyResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PutScalingPolicyResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PutScalingPolicyResponse -> m PutScalingPolicyResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PutScalingPolicyResponse -> m PutScalingPolicyResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PutScalingPolicyResponse -> m PutScalingPolicyResponse #

Read PutScalingPolicyResponse Source # 
Show PutScalingPolicyResponse Source # 
Generic PutScalingPolicyResponse Source # 
NFData PutScalingPolicyResponse Source # 
type Rep PutScalingPolicyResponse Source # 
type Rep PutScalingPolicyResponse = D1 (MetaData "PutScalingPolicyResponse" "Network.AWS.ApplicationAutoScaling.PutScalingPolicy" "amazonka-application-autoscaling-1.4.3-AN6n0v3PjFC88P4FkDV0Y6" False) (C1 (MetaCons "PutScalingPolicyResponse'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_psprsResponseStatus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Int)) (S1 (MetaSel (Just Symbol "_psprsPolicyARN") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

Response Lenses

psprsPolicyARN :: Lens' PutScalingPolicyResponse Text Source #

The Amazon Resource Name (ARN) of the resulting scaling policy.