File Coverage

blib/lib/Paws/ApplicationAutoScaling/StepScalingPolicyConfiguration.pm
Criterion Covered Total %
statement 3 3 100.0
branch n/a
condition n/a
subroutine 1 1 100.0
pod n/a
total 4 4 100.0


line stmt bran cond sub pod time code
1             package Paws::ApplicationAutoScaling::StepScalingPolicyConfiguration;
2 1     1   613 use Moose;
  1         5  
  1         8  
3             has AdjustmentType => (is => 'ro', isa => 'Str');
4             has Cooldown => (is => 'ro', isa => 'Int');
5             has MetricAggregationType => (is => 'ro', isa => 'Str');
6             has MinAdjustmentMagnitude => (is => 'ro', isa => 'Int');
7             has StepAdjustments => (is => 'ro', isa => 'ArrayRef[Paws::ApplicationAutoScaling::StepAdjustment]');
8             1;
9              
10             ### main pod documentation begin ###
11              
12             =head1 NAME
13              
14             Paws::ApplicationAutoScaling::StepScalingPolicyConfiguration
15              
16             =head1 USAGE
17              
18             This class represents one of two things:
19              
20             =head3 Arguments in a call to a service
21              
22             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
23             Each attribute should be used as a named argument in the calls that expect this type of object.
24              
25             As an example, if Att1 is expected to be a Paws::ApplicationAutoScaling::StepScalingPolicyConfiguration object:
26              
27             $service_obj->Method(Att1 => { AdjustmentType => $value, ..., StepAdjustments => $value });
28              
29             =head3 Results returned from an API call
30              
31             Use accessors for each attribute. If Att1 is expected to be an Paws::ApplicationAutoScaling::StepScalingPolicyConfiguration object:
32              
33             $result = $service_obj->Method(...);
34             $result->Att1->AdjustmentType
35              
36             =head1 DESCRIPTION
37              
38             Represents a step scaling policy configuration.
39              
40             =head1 ATTRIBUTES
41              
42              
43             =head2 AdjustmentType => Str
44              
45             The adjustment type, which specifies how the C<ScalingAdjustment>
46             parameter in a StepAdjustment is interpreted.
47              
48              
49             =head2 Cooldown => Int
50              
51             The amount of time, in seconds, after a scaling activity completes
52             where previous trigger-related scaling activities can influence future
53             scaling events.
54              
55             For scale out policies, while the cooldown period is in effect, the
56             capacity that has been added by the previous scale out event that
57             initiated the cooldown is calculated as part of the desired capacity
58             for the next scale out. The intention is to continuously (but not
59             excessively) scale out. For example, an alarm triggers a step scaling
60             policy to scale out an Amazon ECS service by 2 tasks, the scaling
61             activity completes successfully, and a cooldown period of 5 minutes
62             starts. During the Cooldown period, if the alarm triggers the same
63             policy again but at a more aggressive step adjustment to scale out the
64             service by 3 tasks, the 2 tasks that were added in the previous scale
65             out event are considered part of that capacity and only 1 additional
66             task is added to the desired count.
67              
68             For scale in policies, the cooldown period is used to block subsequent
69             scale in requests until it has expired. The intention is to scale in
70             conservatively to protect your application's availability. However, if
71             another alarm triggers a scale out policy during the cooldown period
72             after a scale-in, Application Auto Scaling scales out your scalable
73             target immediately.
74              
75              
76             =head2 MetricAggregationType => Str
77              
78             The aggregation type for the CloudWatch metrics. Valid values are
79             C<Minimum>, C<Maximum>, and C<Average>.
80              
81              
82             =head2 MinAdjustmentMagnitude => Int
83              
84             The minimum number to adjust your scalable dimension as a result of a
85             scaling activity. If the adjustment type is C<PercentChangeInCapacity>,
86             the scaling policy changes the scalable dimension of the scalable
87             target by this amount.
88              
89              
90             =head2 StepAdjustments => ArrayRef[L<Paws::ApplicationAutoScaling::StepAdjustment>]
91              
92             A set of adjustments that enable you to scale based on the size of the
93             alarm breach.
94              
95              
96              
97             =head1 SEE ALSO
98              
99             This class forms part of L<Paws>, describing an object used in L<Paws::ApplicationAutoScaling>
100              
101             =head1 BUGS and CONTRIBUTIONS
102              
103             The source code is located here: https://github.com/pplu/aws-sdk-perl
104              
105             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
106              
107             =cut
108