amazonka-application-autoscaling-1.4.5: 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

Contents

Description

With Application Auto Scaling, you can automatically scale your AWS resources. The experience similar to that of Auto Scaling . You can use Application Auto Scaling to accomplish the following tasks:

  • Define scaling policies to automatically scale your AWS resources
  • Scale your resources in response to CloudWatch alarms
  • View the history of your scaling events

Application Auto Scaling can scale the following AWS resources:

For a list of supported regions, see AWS Regions and Endpoints: Application Auto Scaling in the AWS General Reference .

Synopsis

Service Configuration

applicationAutoScaling :: Service #

API version 2016-02-06 of the Amazon Application Auto Scaling SDK configuration.

Errors

Error matchers are designed for use with the functions provided by Control.Exception.Lens. This allows catching (and rethrowing) service specific errors returned by ApplicationAutoScaling.

ValidationException

_ValidationException :: AsError a => Getting (First ServiceError) a ServiceError #

An exception was thrown for a validation issue. Review the available parameters for the API request.

FailedResourceAccessException

_FailedResourceAccessException :: AsError a => Getting (First ServiceError) a ServiceError #

Failed access to resources caused an exception. This exception currently only applies to DescribeScalingPolicies . It is thrown when Application Auto Scaling is unable to retrieve the alarms associated with a scaling policy due to a client error, for example, if the role ARN specified for a scalable target does not have the proper permissions to call the CloudWatch DescribeAlarms API operation on behalf of your account.

InvalidNextTokenException

_InvalidNextTokenException :: AsError a => Getting (First ServiceError) a ServiceError #

The next token supplied was invalid.

ConcurrentUpdateException

_ConcurrentUpdateException :: AsError a => Getting (First ServiceError) a ServiceError #

Concurrent updates caused an exception, for example, if you request an update to an Application Auto Scaling resource that already has a pending update.

InternalServiceException

_InternalServiceException :: AsError a => Getting (First ServiceError) a ServiceError #

The service encountered an internal error.

ObjectNotFoundException

_ObjectNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError #

The specified object could not be found. For any Put or Register API operation, which depends on the existence of a scalable target, this exception is thrown if the scalable target with the specified service namespace, resource ID, and scalable dimension does not exist. For any Delete or Deregister API operation, this exception is thrown if the resource that is to be deleted or deregistered cannot be found.

LimitExceededException

_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError #

Your account exceeded a limit. This exception is thrown when a per-account resource limit is exceeded. For more information, see Application Auto Scaling Limits .

Waiters

Waiters poll by repeatedly sending a request until some remote success condition configured by the Wait specification is fulfilled. The Wait specification determines how many attempts should be made, in addition to delay and retry strategies.

Operations

Some AWS operations return results that are incomplete and require subsequent requests in order to obtain the entire result set. The process of sending subsequent requests to continue where a previous request left off is called pagination. For example, the ListObjects operation of Amazon S3 returns up to 1000 objects at a time, and you must send subsequent requests with the appropriate Marker in order to retrieve the next page of results.

Operations that have an AWSPager instance can transparently perform subsequent requests, correctly setting Markers and other request facets to iterate through the entire result set of a truncated API operation. Operations which support this have an additional note in the documentation.

Many operations have the ability to filter results on the server side. See the individual operation parameters for details.

DeleteScalingPolicy

PutScalingPolicy

RegisterScalableTarget

DescribeScalingPolicies (Paginated)

DescribeScalableTargets (Paginated)

DescribeScalingActivities (Paginated)

DeregisterScalableTarget

Types

AdjustmentType

data AdjustmentType #

Instances

Bounded AdjustmentType # 
Enum AdjustmentType # 
Eq AdjustmentType # 
Data AdjustmentType # 

Methods

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

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

toConstr :: AdjustmentType -> Constr #

dataTypeOf :: AdjustmentType -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord AdjustmentType # 
Read AdjustmentType # 
Show AdjustmentType # 
Generic AdjustmentType # 

Associated Types

type Rep AdjustmentType :: * -> * #

Hashable AdjustmentType # 
ToJSON AdjustmentType # 
FromJSON AdjustmentType # 
NFData AdjustmentType # 

Methods

rnf :: AdjustmentType -> () #

ToQuery AdjustmentType # 
ToHeader AdjustmentType # 
ToByteString AdjustmentType # 
FromText AdjustmentType # 
ToText AdjustmentType # 
type Rep AdjustmentType # 
type Rep AdjustmentType = D1 (MetaData "AdjustmentType" "Network.AWS.ApplicationAutoScaling.Types.Sum" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) ((:+:) (C1 (MetaCons "ChangeInCapacity" PrefixI False) U1) ((:+:) (C1 (MetaCons "ExactCapacity" PrefixI False) U1) (C1 (MetaCons "PercentChangeInCapacity" PrefixI False) U1)))

MetricAggregationType

data MetricAggregationType #

Constructors

Average 
Maximum 
Minimum 

Instances

Bounded MetricAggregationType # 
Enum MetricAggregationType # 
Eq MetricAggregationType # 
Data MetricAggregationType # 

Methods

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

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

toConstr :: MetricAggregationType -> Constr #

dataTypeOf :: MetricAggregationType -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord MetricAggregationType # 
Read MetricAggregationType # 
Show MetricAggregationType # 
Generic MetricAggregationType # 
Hashable MetricAggregationType # 
ToJSON MetricAggregationType # 
FromJSON MetricAggregationType # 
NFData MetricAggregationType # 

Methods

rnf :: MetricAggregationType -> () #

ToQuery MetricAggregationType # 
ToHeader MetricAggregationType # 
ToByteString MetricAggregationType # 
FromText MetricAggregationType # 
ToText MetricAggregationType # 
type Rep MetricAggregationType # 
type Rep MetricAggregationType = D1 (MetaData "MetricAggregationType" "Network.AWS.ApplicationAutoScaling.Types.Sum" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) ((:+:) (C1 (MetaCons "Average" PrefixI False) U1) ((:+:) (C1 (MetaCons "Maximum" PrefixI False) U1) (C1 (MetaCons "Minimum" PrefixI False) U1)))

PolicyType

data PolicyType #

Constructors

StepScaling 

Instances

Bounded PolicyType # 
Enum PolicyType # 
Eq PolicyType # 
Data PolicyType # 

Methods

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

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

toConstr :: PolicyType -> Constr #

dataTypeOf :: PolicyType -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord PolicyType # 
Read PolicyType # 
Show PolicyType # 
Generic PolicyType # 

Associated Types

type Rep PolicyType :: * -> * #

Hashable PolicyType # 
ToJSON PolicyType # 
FromJSON PolicyType # 
NFData PolicyType # 

Methods

rnf :: PolicyType -> () #

ToQuery PolicyType # 
ToHeader PolicyType # 
ToByteString PolicyType # 
FromText PolicyType # 
ToText PolicyType # 

Methods

toText :: PolicyType -> Text #

type Rep PolicyType # 
type Rep PolicyType = D1 (MetaData "PolicyType" "Network.AWS.ApplicationAutoScaling.Types.Sum" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) (C1 (MetaCons "StepScaling" PrefixI False) U1)

ScalableDimension

data ScalableDimension #

Instances

Bounded ScalableDimension # 
Enum ScalableDimension # 
Eq ScalableDimension # 
Data ScalableDimension # 

Methods

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

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

toConstr :: ScalableDimension -> Constr #

dataTypeOf :: ScalableDimension -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord ScalableDimension # 
Read ScalableDimension # 
Show ScalableDimension # 
Generic ScalableDimension # 
Hashable ScalableDimension # 
ToJSON ScalableDimension # 
FromJSON ScalableDimension # 
NFData ScalableDimension # 

Methods

rnf :: ScalableDimension -> () #

ToQuery ScalableDimension # 
ToHeader ScalableDimension # 
ToByteString ScalableDimension # 
FromText ScalableDimension # 
ToText ScalableDimension # 
type Rep ScalableDimension # 
type Rep ScalableDimension = D1 (MetaData "ScalableDimension" "Network.AWS.ApplicationAutoScaling.Types.Sum" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) ((:+:) (C1 (MetaCons "EC2SpotFleetRequestTargetCapacity" PrefixI False) U1) ((:+:) (C1 (MetaCons "EcsServiceDesiredCount" PrefixI False) U1) (C1 (MetaCons "ElasticmapreduceInstancegroupInstanceCount" PrefixI False) U1)))

ScalingActivityStatusCode

data ScalingActivityStatusCode #

Instances

Bounded ScalingActivityStatusCode # 
Enum ScalingActivityStatusCode # 
Eq ScalingActivityStatusCode # 
Data ScalingActivityStatusCode # 

Methods

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

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

toConstr :: ScalingActivityStatusCode -> Constr #

dataTypeOf :: ScalingActivityStatusCode -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord ScalingActivityStatusCode # 
Read ScalingActivityStatusCode # 
Show ScalingActivityStatusCode # 
Generic ScalingActivityStatusCode # 
Hashable ScalingActivityStatusCode # 
FromJSON ScalingActivityStatusCode # 
NFData ScalingActivityStatusCode # 
ToQuery ScalingActivityStatusCode # 
ToHeader ScalingActivityStatusCode # 
ToByteString ScalingActivityStatusCode # 
FromText ScalingActivityStatusCode # 
ToText ScalingActivityStatusCode # 
type Rep ScalingActivityStatusCode # 
type Rep ScalingActivityStatusCode = D1 (MetaData "ScalingActivityStatusCode" "Network.AWS.ApplicationAutoScaling.Types.Sum" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) ((:+:) ((:+:) (C1 (MetaCons "Failed" PrefixI False) U1) ((:+:) (C1 (MetaCons "InProgress" PrefixI False) U1) (C1 (MetaCons "Overridden" PrefixI False) U1))) ((:+:) (C1 (MetaCons "Pending" PrefixI False) U1) ((:+:) (C1 (MetaCons "Successful" PrefixI False) U1) (C1 (MetaCons "Unfulfilled" PrefixI False) U1))))

ServiceNamespace

data ServiceNamespace #

Constructors

EC2 
Ecs 
Elasticmapreduce 

Instances

Bounded ServiceNamespace # 
Enum ServiceNamespace # 
Eq ServiceNamespace # 
Data ServiceNamespace # 

Methods

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

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

toConstr :: ServiceNamespace -> Constr #

dataTypeOf :: ServiceNamespace -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord ServiceNamespace # 
Read ServiceNamespace # 
Show ServiceNamespace # 
Generic ServiceNamespace # 
Hashable ServiceNamespace # 
ToJSON ServiceNamespace # 
FromJSON ServiceNamespace # 
NFData ServiceNamespace # 

Methods

rnf :: ServiceNamespace -> () #

ToQuery ServiceNamespace # 
ToHeader ServiceNamespace # 
ToByteString ServiceNamespace # 
FromText ServiceNamespace # 
ToText ServiceNamespace # 
type Rep ServiceNamespace # 
type Rep ServiceNamespace = D1 (MetaData "ServiceNamespace" "Network.AWS.ApplicationAutoScaling.Types.Sum" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) ((:+:) (C1 (MetaCons "EC2" PrefixI False) U1) ((:+:) (C1 (MetaCons "Ecs" PrefixI False) U1) (C1 (MetaCons "Elasticmapreduce" PrefixI False) U1)))

Alarm

data Alarm #

Represents a CloudWatch alarm associated with a scaling policy.

See: alarm smart constructor.

Instances

Eq Alarm # 

Methods

(==) :: Alarm -> Alarm -> Bool #

(/=) :: Alarm -> Alarm -> Bool #

Data Alarm # 

Methods

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

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

toConstr :: Alarm -> Constr #

dataTypeOf :: Alarm -> DataType #

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

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

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

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

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

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

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

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

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

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

Read Alarm # 
Show Alarm # 

Methods

showsPrec :: Int -> Alarm -> ShowS #

show :: Alarm -> String #

showList :: [Alarm] -> ShowS #

Generic Alarm # 

Associated Types

type Rep Alarm :: * -> * #

Methods

from :: Alarm -> Rep Alarm x #

to :: Rep Alarm x -> Alarm #

Hashable Alarm # 

Methods

hashWithSalt :: Int -> Alarm -> Int #

hash :: Alarm -> Int #

FromJSON Alarm # 
NFData Alarm # 

Methods

rnf :: Alarm -> () #

type Rep Alarm # 
type Rep Alarm = D1 (MetaData "Alarm" "Network.AWS.ApplicationAutoScaling.Types.Product" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) (C1 (MetaCons "Alarm'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_aAlarmName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_aAlarmARN") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))

alarm #

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

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

aAlarmName :: Lens' Alarm Text #

The name of the alarm.

aAlarmARN :: Lens' Alarm Text #

The Amazon Resource Name (ARN) of the alarm.

ScalableTarget

data ScalableTarget #

Represents a scalable target.

See: scalableTarget smart constructor.

Instances

Eq ScalableTarget # 
Data ScalableTarget # 

Methods

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

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

toConstr :: ScalableTarget -> Constr #

dataTypeOf :: ScalableTarget -> DataType #

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

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

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

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

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

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

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

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

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

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

Read ScalableTarget # 
Show ScalableTarget # 
Generic ScalableTarget # 

Associated Types

type Rep ScalableTarget :: * -> * #

Hashable ScalableTarget # 
FromJSON ScalableTarget # 
NFData ScalableTarget # 

Methods

rnf :: ScalableTarget -> () #

type Rep ScalableTarget # 
type Rep ScalableTarget = D1 (MetaData "ScalableTarget" "Network.AWS.ApplicationAutoScaling.Types.Product" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) (C1 (MetaCons "ScalableTarget'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_stServiceNamespace") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ServiceNamespace)) ((:*:) (S1 (MetaSel (Just Symbol "_stResourceId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_stScalableDimension") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ScalableDimension)))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_stMinCapacity") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int)) (S1 (MetaSel (Just Symbol "_stMaxCapacity") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int))) ((:*:) (S1 (MetaSel (Just Symbol "_stRoleARN") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_stCreationTime") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 POSIX))))))

scalableTarget #

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

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

  • stServiceNamespace - The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .
  • stResourceId - The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-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 . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .
  • stScalableDimension - The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.
  • stMinCapacity - The minimum value to scale to in response to a scale in event.
  • stMaxCapacity - The maximum value to scale to in response to a scale out event.
  • stRoleARN - The ARN of an IAM role that allows Application Auto Scaling to modify the scalable target on your behalf.
  • stCreationTime - The Unix timestamp for when the scalable target was created.

stServiceNamespace :: Lens' ScalableTarget ServiceNamespace #

The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .

stResourceId :: Lens' ScalableTarget Text #

The identifier of the resource associated with the scalable target. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-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 . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .

stScalableDimension :: Lens' ScalableTarget ScalableDimension #

The scalable dimension associated with the scalable target. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

stMinCapacity :: Lens' ScalableTarget Int #

The minimum value to scale to in response to a scale in event.

stMaxCapacity :: Lens' ScalableTarget Int #

The maximum value to scale to in response to a scale out event.

stRoleARN :: Lens' ScalableTarget Text #

The ARN of an IAM role that allows Application Auto Scaling to modify the scalable target on your behalf.

stCreationTime :: Lens' ScalableTarget UTCTime #

The Unix timestamp for when the scalable target was created.

ScalingActivity

data ScalingActivity #

Represents a scaling activity.

See: scalingActivity smart constructor.

Instances

Eq ScalingActivity # 
Data ScalingActivity # 

Methods

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

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

toConstr :: ScalingActivity -> Constr #

dataTypeOf :: ScalingActivity -> DataType #

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

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

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

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

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

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

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

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

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

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

Read ScalingActivity # 
Show ScalingActivity # 
Generic ScalingActivity # 
Hashable ScalingActivity # 
FromJSON ScalingActivity # 
NFData ScalingActivity # 

Methods

rnf :: ScalingActivity -> () #

type Rep ScalingActivity # 
type Rep ScalingActivity = D1 (MetaData "ScalingActivity" "Network.AWS.ApplicationAutoScaling.Types.Product" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) (C1 (MetaCons "ScalingActivity'" PrefixI True) ((:*:) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_saStatusMessage") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) (S1 (MetaSel (Just Symbol "_saEndTime") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe POSIX)))) ((:*:) (S1 (MetaSel (Just Symbol "_saDetails") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) ((:*:) (S1 (MetaSel (Just Symbol "_saActivityId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_saServiceNamespace") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ServiceNamespace))))) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_saResourceId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) ((:*:) (S1 (MetaSel (Just Symbol "_saScalableDimension") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ScalableDimension)) (S1 (MetaSel (Just Symbol "_saDescription") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)))) ((:*:) (S1 (MetaSel (Just Symbol "_saCause") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) ((:*:) (S1 (MetaSel (Just Symbol "_saStartTime") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 POSIX)) (S1 (MetaSel (Just Symbol "_saStatusCode") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ScalingActivityStatusCode)))))))

scalingActivity #

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

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

  • saStatusMessage - A simple message about the current status of the scaling activity.
  • saEndTime - The Unix timestamp for when the scaling activity ended.
  • saDetails - The details about the scaling activity.
  • saActivityId - The unique identifier of the scaling activity.
  • saServiceNamespace - The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .
  • saResourceId - The identifier of the resource associated with the scaling activity. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-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 . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .
  • saScalableDimension - The scalable dimension. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.
  • saDescription - A simple description of what action the scaling activity intends to accomplish.
  • saCause - A simple description of what caused the scaling activity to happen.
  • saStartTime - The Unix timestamp for when the scaling activity began.
  • saStatusCode - Indicates the status of the scaling activity.

saStatusMessage :: Lens' ScalingActivity (Maybe Text) #

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

saEndTime :: Lens' ScalingActivity (Maybe UTCTime) #

The Unix timestamp for when the scaling activity ended.

saDetails :: Lens' ScalingActivity (Maybe Text) #

The details about the scaling activity.

saActivityId :: Lens' ScalingActivity Text #

The unique identifier of the scaling activity.

saServiceNamespace :: Lens' ScalingActivity ServiceNamespace #

The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .

saResourceId :: Lens' ScalingActivity Text #

The identifier of the resource associated with the scaling activity. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-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 . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .

saScalableDimension :: Lens' ScalingActivity ScalableDimension #

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

saDescription :: Lens' ScalingActivity Text #

A simple description of what action the scaling activity intends to accomplish.

saCause :: Lens' ScalingActivity Text #

A simple description of what caused the scaling activity to happen.

saStartTime :: Lens' ScalingActivity UTCTime #

The Unix timestamp for when the scaling activity began.

saStatusCode :: Lens' ScalingActivity ScalingActivityStatusCode #

Indicates the status of the scaling activity.

ScalingPolicy

data ScalingPolicy #

Represents a scaling policy.

See: scalingPolicy smart constructor.

Instances

Eq ScalingPolicy # 
Data ScalingPolicy # 

Methods

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

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

toConstr :: ScalingPolicy -> Constr #

dataTypeOf :: ScalingPolicy -> DataType #

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

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

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

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

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

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

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

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

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

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

Read ScalingPolicy # 
Show ScalingPolicy # 
Generic ScalingPolicy # 

Associated Types

type Rep ScalingPolicy :: * -> * #

Hashable ScalingPolicy # 
FromJSON ScalingPolicy # 
NFData ScalingPolicy # 

Methods

rnf :: ScalingPolicy -> () #

type Rep ScalingPolicy # 

scalingPolicy #

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

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

  • spStepScalingPolicyConfiguration - The configuration for the step scaling policy.
  • spAlarms - The CloudWatch alarms associated with the scaling policy.
  • spPolicyARN - The Amazon Resource Name (ARN) of the scaling policy.
  • spPolicyName - The name of the scaling policy.
  • spServiceNamespace - The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .
  • spResourceId - The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-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 . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .
  • spScalableDimension - The scalable dimension. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.
  • spPolicyType - The scaling policy type.
  • spCreationTime - The Unix timestamp for when the scaling policy was created.

spAlarms :: Lens' ScalingPolicy [Alarm] #

The CloudWatch alarms associated with the scaling policy.

spPolicyARN :: Lens' ScalingPolicy Text #

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

spPolicyName :: Lens' ScalingPolicy Text #

The name of the scaling policy.

spServiceNamespace :: Lens' ScalingPolicy ServiceNamespace #

The namespace of the AWS service. For more information, see AWS Service Namespaces in the Amazon Web Services General Reference .

spResourceId :: Lens' ScalingPolicy Text #

The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier. * ECS service - The resource type is service and the unique identifier is the cluster name and service name. Example: servicedefaultsample-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 . * EMR cluster - The resource type is instancegroup and the unique identifier is the cluster ID and instance group ID. Example: instancegroupj-2EEZNYKUA1NTVig-1791Y4E1L8YI0 .

spScalableDimension :: Lens' ScalingPolicy ScalableDimension #

The scalable dimension. This string consists of the service namespace, resource type, and scaling property. * ecs:service:DesiredCount - The desired task count of an ECS service. * ec2:spot-fleet-request:TargetCapacity - The target capacity of a Spot fleet request. * elasticmapreduce:instancegroup:InstanceCount - The instance count of an EMR Instance Group.

spPolicyType :: Lens' ScalingPolicy PolicyType #

The scaling policy type.

spCreationTime :: Lens' ScalingPolicy UTCTime #

The Unix timestamp for when the scaling policy was created.

StepAdjustment

data StepAdjustment #

Represents a step adjustment for a StepScalingPolicyConfiguration . Describes an adjustment based on the difference between the value of the aggregated CloudWatch metric and the breach threshold that you've defined for the alarm.

For the following examples, suppose that you have an alarm with a breach threshold of 50:

  • To trigger the adjustment when the metric is greater than or equal to 50 and less than 60, specify a lower bound of 0 and an upper bound of 10.
  • To trigger the adjustment when the metric is greater than 40 and less than or equal to 50, specify a lower bound of -10 and an upper bound of 0.

There are a few rules for the step adjustments for your step policy:

  • The ranges of your step adjustments can't overlap or have a gap.
  • At most one step adjustment can have a null lower bound. If one step adjustment has a negative lower bound, then there must be a step adjustment with a null lower bound.
  • At most one step adjustment can have a null upper bound. If one step adjustment has a positive upper bound, then there must be a step adjustment with a null upper bound.
  • The upper and lower bound can't be null in the same step adjustment.

See: stepAdjustment smart constructor.

Instances

Eq StepAdjustment # 
Data StepAdjustment # 

Methods

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

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

toConstr :: StepAdjustment -> Constr #

dataTypeOf :: StepAdjustment -> DataType #

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

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

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

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

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

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

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

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

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

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

Read StepAdjustment # 
Show StepAdjustment # 
Generic StepAdjustment # 

Associated Types

type Rep StepAdjustment :: * -> * #

Hashable StepAdjustment # 
ToJSON StepAdjustment # 
FromJSON StepAdjustment # 
NFData StepAdjustment # 

Methods

rnf :: StepAdjustment -> () #

type Rep StepAdjustment # 
type Rep StepAdjustment = D1 (MetaData "StepAdjustment" "Network.AWS.ApplicationAutoScaling.Types.Product" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) (C1 (MetaCons "StepAdjustment'" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "_saMetricIntervalLowerBound") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Double))) ((:*:) (S1 (MetaSel (Just Symbol "_saMetricIntervalUpperBound") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Double))) (S1 (MetaSel (Just Symbol "_saScalingAdjustment") NoSourceUnpackedness SourceStrict DecidedUnpack) (Rec0 Int)))))

stepAdjustment #

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

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

  • saMetricIntervalLowerBound - The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.
  • saMetricIntervalUpperBound - The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity. The upper bound must be greater than the lower bound.
  • saScalingAdjustment - The amount by which to scale, based on the specified adjustment type. A positive value adds to the current scalable dimension while a negative number removes from the current scalable dimension.

saMetricIntervalLowerBound :: Lens' StepAdjustment (Maybe Double) #

The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.

saMetricIntervalUpperBound :: Lens' StepAdjustment (Maybe Double) #

The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity. The upper bound must be greater than the lower bound.

saScalingAdjustment :: Lens' StepAdjustment Int #

The amount by which to scale, based on the specified adjustment type. A positive value adds to the current scalable dimension while a negative number removes from the current scalable dimension.

StepScalingPolicyConfiguration

data StepScalingPolicyConfiguration #

Represents a step scaling policy configuration.

See: stepScalingPolicyConfiguration smart constructor.

Instances

Eq StepScalingPolicyConfiguration # 
Data StepScalingPolicyConfiguration # 

Methods

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

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

toConstr :: StepScalingPolicyConfiguration -> Constr #

dataTypeOf :: StepScalingPolicyConfiguration -> DataType #

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

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

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

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

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

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

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

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

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

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

Read StepScalingPolicyConfiguration # 
Show StepScalingPolicyConfiguration # 
Generic StepScalingPolicyConfiguration # 
Hashable StepScalingPolicyConfiguration # 
ToJSON StepScalingPolicyConfiguration # 
FromJSON StepScalingPolicyConfiguration # 
NFData StepScalingPolicyConfiguration # 
type Rep StepScalingPolicyConfiguration # 
type Rep StepScalingPolicyConfiguration = D1 (MetaData "StepScalingPolicyConfiguration" "Network.AWS.ApplicationAutoScaling.Types.Product" "amazonka-application-autoscaling-1.4.5-K8EKArvGN49HP9Wc2K3g39" False) (C1 (MetaCons "StepScalingPolicyConfiguration'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_sspcStepAdjustments") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe [StepAdjustment]))) (S1 (MetaSel (Just Symbol "_sspcAdjustmentType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe AdjustmentType)))) ((:*:) (S1 (MetaSel (Just Symbol "_sspcCooldown") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Int))) ((:*:) (S1 (MetaSel (Just Symbol "_sspcMetricAggregationType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe MetricAggregationType))) (S1 (MetaSel (Just Symbol "_sspcMinAdjustmentMagnitude") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Int)))))))

stepScalingPolicyConfiguration :: StepScalingPolicyConfiguration #

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

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

  • sspcStepAdjustments - A set of adjustments that enable you to scale based on the size of the alarm breach.
  • sspcAdjustmentType - The adjustment type, which specifies how the ScalingAdjustment parameter in a StepAdjustment is interpreted.
  • sspcCooldown - The amount of time, in seconds, after a scaling activity completes where previous trigger-related scaling activities can influence future scaling events. For scale out policies, while Cooldown is in effect, the capacity that has been added by the previous scale out event that initiated the Cooldown is calculated as part of the desired capacity for the next scale out. The intention is to continuously (but not excessively) scale out. For example, an alarm triggers a step scaling policy to scale out an Amazon ECS service by 2 tasks, the scaling activity completes successfully, and a Cooldown period of 5 minutes starts. During the Cooldown period, if the alarm triggers the same policy again but at a more aggressive step adjustment to scale out the service by 3 tasks, the 2 tasks that were added in the previous scale out event are considered part of that capacity and only 1 additional task is added to the desired count. For scale in policies, the Cooldown period is used to block subsequent scale in requests until it has expired. The intention is to scale in conservatively to protect your application's availability. However, if another alarm triggers a scale out policy during the Cooldown period after a scale-in, Application Auto Scaling scales out your scalable target immediately.
  • sspcMetricAggregationType - The aggregation type for the CloudWatch metrics. Valid values are Minimum , Maximum , and Average .
  • sspcMinAdjustmentMagnitude - The minimum number to adjust your scalable dimension as a result of a scaling activity. If the adjustment type is PercentChangeInCapacity , the scaling policy changes the scalable dimension of the scalable target by this amount.

sspcStepAdjustments :: Lens' StepScalingPolicyConfiguration [StepAdjustment] #

A set of adjustments that enable you to scale based on the size of the alarm breach.

sspcAdjustmentType :: Lens' StepScalingPolicyConfiguration (Maybe AdjustmentType) #

The adjustment type, which specifies how the ScalingAdjustment parameter in a StepAdjustment is interpreted.

sspcCooldown :: Lens' StepScalingPolicyConfiguration (Maybe Int) #

The amount of time, in seconds, after a scaling activity completes where previous trigger-related scaling activities can influence future scaling events. For scale out policies, while Cooldown is in effect, the capacity that has been added by the previous scale out event that initiated the Cooldown is calculated as part of the desired capacity for the next scale out. The intention is to continuously (but not excessively) scale out. For example, an alarm triggers a step scaling policy to scale out an Amazon ECS service by 2 tasks, the scaling activity completes successfully, and a Cooldown period of 5 minutes starts. During the Cooldown period, if the alarm triggers the same policy again but at a more aggressive step adjustment to scale out the service by 3 tasks, the 2 tasks that were added in the previous scale out event are considered part of that capacity and only 1 additional task is added to the desired count. For scale in policies, the Cooldown period is used to block subsequent scale in requests until it has expired. The intention is to scale in conservatively to protect your application's availability. However, if another alarm triggers a scale out policy during the Cooldown period after a scale-in, Application Auto Scaling scales out your scalable target immediately.

sspcMetricAggregationType :: Lens' StepScalingPolicyConfiguration (Maybe MetricAggregationType) #

The aggregation type for the CloudWatch metrics. Valid values are Minimum , Maximum , and Average .

sspcMinAdjustmentMagnitude :: Lens' StepScalingPolicyConfiguration (Maybe Int) #

The minimum number to adjust your scalable dimension as a result of a scaling activity. If the adjustment type is PercentChangeInCapacity , the scaling policy changes the scalable dimension of the scalable target by this amount.