File Coverage

blib/lib/Paws/ApplicationAutoScaling/ScalingPolicy.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::ScalingPolicy;
2 1     1   503 use Moose;
  1         2  
  1         10  
3             has Alarms => (is => 'ro', isa => 'ArrayRef[Paws::ApplicationAutoScaling::Alarm]');
4             has CreationTime => (is => 'ro', isa => 'Str', required => 1);
5             has PolicyARN => (is => 'ro', isa => 'Str', required => 1);
6             has PolicyName => (is => 'ro', isa => 'Str', required => 1);
7             has PolicyType => (is => 'ro', isa => 'Str', required => 1);
8             has ResourceId => (is => 'ro', isa => 'Str', required => 1);
9             has ScalableDimension => (is => 'ro', isa => 'Str', required => 1);
10             has ServiceNamespace => (is => 'ro', isa => 'Str', required => 1);
11             has StepScalingPolicyConfiguration => (is => 'ro', isa => 'Paws::ApplicationAutoScaling::StepScalingPolicyConfiguration');
12             has TargetTrackingScalingPolicyConfiguration => (is => 'ro', isa => 'Paws::ApplicationAutoScaling::TargetTrackingScalingPolicyConfiguration');
13             1;
14              
15             ### main pod documentation begin ###
16              
17             =head1 NAME
18              
19             Paws::ApplicationAutoScaling::ScalingPolicy
20              
21             =head1 USAGE
22              
23             This class represents one of two things:
24              
25             =head3 Arguments in a call to a service
26              
27             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
28             Each attribute should be used as a named argument in the calls that expect this type of object.
29              
30             As an example, if Att1 is expected to be a Paws::ApplicationAutoScaling::ScalingPolicy object:
31              
32             $service_obj->Method(Att1 => { Alarms => $value, ..., TargetTrackingScalingPolicyConfiguration => $value });
33              
34             =head3 Results returned from an API call
35              
36             Use accessors for each attribute. If Att1 is expected to be an Paws::ApplicationAutoScaling::ScalingPolicy object:
37              
38             $result = $service_obj->Method(...);
39             $result->Att1->Alarms
40              
41             =head1 DESCRIPTION
42              
43             Represents a scaling policy.
44              
45             =head1 ATTRIBUTES
46              
47              
48             =head2 Alarms => ArrayRef[L<Paws::ApplicationAutoScaling::Alarm>]
49              
50             The CloudWatch alarms associated with the scaling policy.
51              
52              
53             =head2 B<REQUIRED> CreationTime => Str
54              
55             The Unix timestamp for when the scaling policy was created.
56              
57              
58             =head2 B<REQUIRED> PolicyARN => Str
59              
60             The Amazon Resource Name (ARN) of the scaling policy.
61              
62              
63             =head2 B<REQUIRED> PolicyName => Str
64              
65             The name of the scaling policy.
66              
67              
68             =head2 B<REQUIRED> PolicyType => Str
69              
70             The scaling policy type.
71              
72              
73             =head2 B<REQUIRED> ResourceId => Str
74              
75             The identifier of the resource associated with the scaling policy. This
76             string consists of the resource type and unique identifier.
77              
78             =over
79              
80             =item *
81              
82             ECS service - The resource type is C<service> and the unique identifier
83             is the cluster name and service name. Example:
84             C<service/default/sample-webapp>.
85              
86             =item *
87              
88             Spot fleet request - The resource type is C<spot-fleet-request> and the
89             unique identifier is the Spot fleet request ID. Example:
90             C<spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE>.
91              
92             =item *
93              
94             EMR cluster - The resource type is C<instancegroup> and the unique
95             identifier is the cluster ID and instance group ID. Example:
96             C<instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0>.
97              
98             =item *
99              
100             AppStream 2.0 fleet - The resource type is C<fleet> and the unique
101             identifier is the fleet name. Example: C<fleet/sample-fleet>.
102              
103             =item *
104              
105             DynamoDB table - The resource type is C<table> and the unique
106             identifier is the resource ID. Example: C<table/my-table>.
107              
108             =item *
109              
110             DynamoDB global secondary index - The resource type is C<index> and the
111             unique identifier is the resource ID. Example:
112             C<table/my-table/index/my-table-index>.
113              
114             =back
115              
116              
117              
118             =head2 B<REQUIRED> ScalableDimension => Str
119              
120             The scalable dimension. This string consists of the service namespace,
121             resource type, and scaling property.
122              
123             =over
124              
125             =item *
126              
127             C<ecs:service:DesiredCount> - The desired task count of an ECS service.
128              
129             =item *
130              
131             C<ec2:spot-fleet-request:TargetCapacity> - The target capacity of a
132             Spot fleet request.
133              
134             =item *
135              
136             C<elasticmapreduce:instancegroup:InstanceCount> - The instance count of
137             an EMR Instance Group.
138              
139             =item *
140              
141             C<appstream:fleet:DesiredCapacity> - The desired capacity of an
142             AppStream 2.0 fleet.
143              
144             =item *
145              
146             C<dynamodb:table:ReadCapacityUnits> - The provisioned read capacity for
147             a DynamoDB table.
148              
149             =item *
150              
151             C<dynamodb:table:WriteCapacityUnits> - The provisioned write capacity
152             for a DynamoDB table.
153              
154             =item *
155              
156             C<dynamodb:index:ReadCapacityUnits> - The provisioned read capacity for
157             a DynamoDB global secondary index.
158              
159             =item *
160              
161             C<dynamodb:index:WriteCapacityUnits> - The provisioned write capacity
162             for a DynamoDB global secondary index.
163              
164             =back
165              
166              
167              
168             =head2 B<REQUIRED> ServiceNamespace => Str
169              
170             The namespace of the AWS service. For more information, see AWS Service
171             Namespaces in the I<Amazon Web Services General Reference>.
172              
173              
174             =head2 StepScalingPolicyConfiguration => L<Paws::ApplicationAutoScaling::StepScalingPolicyConfiguration>
175              
176             A step scaling policy.
177              
178              
179             =head2 TargetTrackingScalingPolicyConfiguration => L<Paws::ApplicationAutoScaling::TargetTrackingScalingPolicyConfiguration>
180              
181             A target tracking policy.
182              
183              
184              
185             =head1 SEE ALSO
186              
187             This class forms part of L<Paws>, describing an object used in L<Paws::ApplicationAutoScaling>
188              
189             =head1 BUGS and CONTRIBUTIONS
190              
191             The source code is located here: https://github.com/pplu/aws-sdk-perl
192              
193             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
194              
195             =cut
196