aws-sdk-applicationautoscaling 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,991 +1,1121 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module ApplicationAutoScaling
10
- module Types
8
+ module Aws::ApplicationAutoScaling
9
+ module Types
11
10
 
12
- # Represents a CloudWatch alarm associated with a scaling policy.
13
- # @!attribute [rw] alarm_name
14
- # The name of the alarm.
15
- # @return [String]
16
- #
17
- # @!attribute [rw] alarm_arn
18
- # The Amazon Resource Name (ARN) of the alarm.
19
- # @return [String]
20
- class Alarm < Struct.new(
21
- :alarm_name,
22
- :alarm_arn)
23
- include Aws::Structure
24
- end
25
-
26
- # @note When making an API call, pass DeleteScalingPolicyRequest
27
- # data as a hash:
28
- #
29
- # {
30
- # policy_name: "ResourceIdMaxLen1600", # required
31
- # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2
32
- # resource_id: "ResourceIdMaxLen1600", # required
33
- # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount
34
- # }
35
- # @!attribute [rw] policy_name
36
- # The name of the scaling policy.
37
- # @return [String]
38
- #
39
- # @!attribute [rw] service_namespace
40
- # The namespace of the AWS service. For more information, see [AWS
41
- # Service Namespaces][1] in the *Amazon Web Services General
42
- # Reference*.
43
- #
44
- #
45
- #
46
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
47
- # @return [String]
48
- #
49
- # @!attribute [rw] resource_id
50
- # The identifier of the resource associated with the scalable target.
51
- # This string consists of the resource type and unique identifier.
52
- #
53
- # * ECS service - The resource type is `service` and the unique
54
- # identifier is the cluster name and service name. Example:
55
- # `service/default/sample-webapp`.
56
- #
57
- # * Spot fleet request - The resource type is `spot-fleet-request` and
58
- # the unique identifier is the Spot fleet request ID. Example:
59
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
60
- #
61
- # * EMR cluster - The resource type is `instancegroup` and the unique
62
- # identifier is the cluster ID and instance group ID. Example:
63
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
64
- # @return [String]
65
- #
66
- # @!attribute [rw] scalable_dimension
67
- # The scalable dimension. This string consists of the service
68
- # namespace, resource type, and scaling property.
69
- #
70
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
71
- # service.
72
- #
73
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
74
- # Spot fleet request.
75
- #
76
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
77
- # count of an EMR Instance Group.
78
- # @return [String]
79
- class DeleteScalingPolicyRequest < Struct.new(
80
- :policy_name,
81
- :service_namespace,
82
- :resource_id,
83
- :scalable_dimension)
84
- include Aws::Structure
85
- end
11
+ # Represents a CloudWatch alarm associated with a scaling policy.
12
+ #
13
+ # @!attribute [rw] alarm_name
14
+ # The name of the alarm.
15
+ # @return [String]
16
+ #
17
+ # @!attribute [rw] alarm_arn
18
+ # The Amazon Resource Name (ARN) of the alarm.
19
+ # @return [String]
20
+ #
21
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/Alarm AWS API Documentation
22
+ #
23
+ class Alarm < Struct.new(
24
+ :alarm_name,
25
+ :alarm_arn)
26
+ include Aws::Structure
27
+ end
86
28
 
87
- class DeleteScalingPolicyResponse < Aws::EmptyStructure; end
29
+ # @note When making an API call, you may pass DeleteScalingPolicyRequest
30
+ # data as a hash:
31
+ #
32
+ # {
33
+ # policy_name: "ResourceIdMaxLen1600", # required
34
+ # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2, appstream
35
+ # resource_id: "ResourceIdMaxLen1600", # required
36
+ # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount, appstream:fleet:DesiredCapacity
37
+ # }
38
+ #
39
+ # @!attribute [rw] policy_name
40
+ # The name of the scaling policy.
41
+ # @return [String]
42
+ #
43
+ # @!attribute [rw] service_namespace
44
+ # The namespace of the AWS service. For more information, see [AWS
45
+ # Service Namespaces][1] in the *Amazon Web Services General
46
+ # Reference*.
47
+ #
48
+ #
49
+ #
50
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
51
+ # @return [String]
52
+ #
53
+ # @!attribute [rw] resource_id
54
+ # The identifier of the resource associated with the scalable target.
55
+ # This string consists of the resource type and unique identifier.
56
+ #
57
+ # * ECS service - The resource type is `service` and the unique
58
+ # identifier is the cluster name and service name. Example:
59
+ # `service/default/sample-webapp`.
60
+ #
61
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
62
+ # the unique identifier is the Spot fleet request ID. Example:
63
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
64
+ #
65
+ # * EMR cluster - The resource type is `instancegroup` and the unique
66
+ # identifier is the cluster ID and instance group ID. Example:
67
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
68
+ #
69
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
70
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
71
+ # @return [String]
72
+ #
73
+ # @!attribute [rw] scalable_dimension
74
+ # The scalable dimension. This string consists of the service
75
+ # namespace, resource type, and scaling property.
76
+ #
77
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
78
+ # service.
79
+ #
80
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
81
+ # Spot fleet request.
82
+ #
83
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
84
+ # count of an EMR Instance Group.
85
+ #
86
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
87
+ # AppStream 2.0 fleet.
88
+ # @return [String]
89
+ #
90
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DeleteScalingPolicyRequest AWS API Documentation
91
+ #
92
+ class DeleteScalingPolicyRequest < Struct.new(
93
+ :policy_name,
94
+ :service_namespace,
95
+ :resource_id,
96
+ :scalable_dimension)
97
+ include Aws::Structure
98
+ end
88
99
 
89
- # @note When making an API call, pass DeregisterScalableTargetRequest
90
- # data as a hash:
91
- #
92
- # {
93
- # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2
94
- # resource_id: "ResourceIdMaxLen1600", # required
95
- # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount
96
- # }
97
- # @!attribute [rw] service_namespace
98
- # The namespace of the AWS service. For more information, see [AWS
99
- # Service Namespaces][1] in the *Amazon Web Services General
100
- # Reference*.
101
- #
102
- #
103
- #
104
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
105
- # @return [String]
106
- #
107
- # @!attribute [rw] resource_id
108
- # The identifier of the resource associated with the scalable target.
109
- # This string consists of the resource type and unique identifier.
110
- #
111
- # * ECS service - The resource type is `service` and the unique
112
- # identifier is the cluster name and service name. Example:
113
- # `service/default/sample-webapp`.
114
- #
115
- # * Spot fleet request - The resource type is `spot-fleet-request` and
116
- # the unique identifier is the Spot fleet request ID. Example:
117
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
118
- #
119
- # * EMR cluster - The resource type is `instancegroup` and the unique
120
- # identifier is the cluster ID and instance group ID. Example:
121
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
122
- # @return [String]
123
- #
124
- # @!attribute [rw] scalable_dimension
125
- # The scalable dimension associated with the scalable target. This
126
- # string consists of the service namespace, resource type, and scaling
127
- # property.
128
- #
129
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
130
- # service.
131
- #
132
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
133
- # Spot fleet request.
134
- #
135
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
136
- # count of an EMR Instance Group.
137
- # @return [String]
138
- class DeregisterScalableTargetRequest < Struct.new(
139
- :service_namespace,
140
- :resource_id,
141
- :scalable_dimension)
142
- include Aws::Structure
143
- end
100
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DeleteScalingPolicyResponse AWS API Documentation
101
+ #
102
+ class DeleteScalingPolicyResponse < Aws::EmptyStructure; end
144
103
 
145
- class DeregisterScalableTargetResponse < Aws::EmptyStructure; end
104
+ # @note When making an API call, you may pass DeregisterScalableTargetRequest
105
+ # data as a hash:
106
+ #
107
+ # {
108
+ # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2, appstream
109
+ # resource_id: "ResourceIdMaxLen1600", # required
110
+ # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount, appstream:fleet:DesiredCapacity
111
+ # }
112
+ #
113
+ # @!attribute [rw] service_namespace
114
+ # The namespace of the AWS service. For more information, see [AWS
115
+ # Service Namespaces][1] in the *Amazon Web Services General
116
+ # Reference*.
117
+ #
118
+ #
119
+ #
120
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
121
+ # @return [String]
122
+ #
123
+ # @!attribute [rw] resource_id
124
+ # The identifier of the resource associated with the scalable target.
125
+ # This string consists of the resource type and unique identifier.
126
+ #
127
+ # * ECS service - The resource type is `service` and the unique
128
+ # identifier is the cluster name and service name. Example:
129
+ # `service/default/sample-webapp`.
130
+ #
131
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
132
+ # the unique identifier is the Spot fleet request ID. Example:
133
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
134
+ #
135
+ # * EMR cluster - The resource type is `instancegroup` and the unique
136
+ # identifier is the cluster ID and instance group ID. Example:
137
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
138
+ #
139
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
140
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
141
+ # @return [String]
142
+ #
143
+ # @!attribute [rw] scalable_dimension
144
+ # The scalable dimension associated with the scalable target. This
145
+ # string consists of the service namespace, resource type, and scaling
146
+ # property.
147
+ #
148
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
149
+ # service.
150
+ #
151
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
152
+ # Spot fleet request.
153
+ #
154
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
155
+ # count of an EMR Instance Group.
156
+ #
157
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
158
+ # AppStream 2.0 fleet.
159
+ # @return [String]
160
+ #
161
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DeregisterScalableTargetRequest AWS API Documentation
162
+ #
163
+ class DeregisterScalableTargetRequest < Struct.new(
164
+ :service_namespace,
165
+ :resource_id,
166
+ :scalable_dimension)
167
+ include Aws::Structure
168
+ end
146
169
 
147
- # @note When making an API call, pass DescribeScalableTargetsRequest
148
- # data as a hash:
149
- #
150
- # {
151
- # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2
152
- # resource_ids: ["ResourceIdMaxLen1600"],
153
- # scalable_dimension: "ecs:service:DesiredCount", # accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount
154
- # max_results: 1,
155
- # next_token: "XmlString",
156
- # }
157
- # @!attribute [rw] service_namespace
158
- # The namespace of the AWS service. For more information, see [AWS
159
- # Service Namespaces][1] in the *Amazon Web Services General
160
- # Reference*.
161
- #
162
- #
163
- #
164
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
165
- # @return [String]
166
- #
167
- # @!attribute [rw] resource_ids
168
- # The identifier of the resource associated with the scalable target.
169
- # This string consists of the resource type and unique identifier. If
170
- # you specify a scalable dimension, you must also specify a resource
171
- # ID.
172
- #
173
- # * ECS service - The resource type is `service` and the unique
174
- # identifier is the cluster name and service name. Example:
175
- # `service/default/sample-webapp`.
176
- #
177
- # * Spot fleet request - The resource type is `spot-fleet-request` and
178
- # the unique identifier is the Spot fleet request ID. Example:
179
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
180
- #
181
- # * EMR cluster - The resource type is `instancegroup` and the unique
182
- # identifier is the cluster ID and instance group ID. Example:
183
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
184
- # @return [Array<String>]
185
- #
186
- # @!attribute [rw] scalable_dimension
187
- # The scalable dimension associated with the scalable target. This
188
- # string consists of the service namespace, resource type, and scaling
189
- # property. If you specify a scalable dimension, you must also specify
190
- # a resource ID.
191
- #
192
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
193
- # service.
194
- #
195
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
196
- # Spot fleet request.
197
- #
198
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
199
- # count of an EMR Instance Group.
200
- # @return [String]
201
- #
202
- # @!attribute [rw] max_results
203
- # The maximum number of scalable target results. This value can be
204
- # between 1 and 50. The default value is 50.
205
- #
206
- # If this parameter is used, the operation returns up to `MaxResults`
207
- # results at a time, along with a `NextToken` value. To get the next
208
- # set of results, include the `NextToken` value in a subsequent call.
209
- # If this parameter is not used, the operation returns up to 50
210
- # results and a `NextToken` value, if applicable.
211
- # @return [Integer]
212
- #
213
- # @!attribute [rw] next_token
214
- # The token for the next set of results.
215
- # @return [String]
216
- class DescribeScalableTargetsRequest < Struct.new(
217
- :service_namespace,
218
- :resource_ids,
219
- :scalable_dimension,
220
- :max_results,
221
- :next_token)
222
- include Aws::Structure
223
- end
170
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DeregisterScalableTargetResponse AWS API Documentation
171
+ #
172
+ class DeregisterScalableTargetResponse < Aws::EmptyStructure; end
224
173
 
225
- # @!attribute [rw] scalable_targets
226
- # The list of scalable targets that matches the request parameters.
227
- # @return [Array<Types::ScalableTarget>]
228
- #
229
- # @!attribute [rw] next_token
230
- # The token required to get the next set of results. This value is
231
- # `null` if there are no more results to return.
232
- # @return [String]
233
- class DescribeScalableTargetsResponse < Struct.new(
234
- :scalable_targets,
235
- :next_token)
236
- include Aws::Structure
237
- end
174
+ # @note When making an API call, you may pass DescribeScalableTargetsRequest
175
+ # data as a hash:
176
+ #
177
+ # {
178
+ # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2, appstream
179
+ # resource_ids: ["ResourceIdMaxLen1600"],
180
+ # scalable_dimension: "ecs:service:DesiredCount", # accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount, appstream:fleet:DesiredCapacity
181
+ # max_results: 1,
182
+ # next_token: "XmlString",
183
+ # }
184
+ #
185
+ # @!attribute [rw] service_namespace
186
+ # The namespace of the AWS service. For more information, see [AWS
187
+ # Service Namespaces][1] in the *Amazon Web Services General
188
+ # Reference*.
189
+ #
190
+ #
191
+ #
192
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
193
+ # @return [String]
194
+ #
195
+ # @!attribute [rw] resource_ids
196
+ # The identifier of the resource associated with the scalable target.
197
+ # This string consists of the resource type and unique identifier. If
198
+ # you specify a scalable dimension, you must also specify a resource
199
+ # ID.
200
+ #
201
+ # * ECS service - The resource type is `service` and the unique
202
+ # identifier is the cluster name and service name. Example:
203
+ # `service/default/sample-webapp`.
204
+ #
205
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
206
+ # the unique identifier is the Spot fleet request ID. Example:
207
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
208
+ #
209
+ # * EMR cluster - The resource type is `instancegroup` and the unique
210
+ # identifier is the cluster ID and instance group ID. Example:
211
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
212
+ #
213
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
214
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
215
+ # @return [Array<String>]
216
+ #
217
+ # @!attribute [rw] scalable_dimension
218
+ # The scalable dimension associated with the scalable target. This
219
+ # string consists of the service namespace, resource type, and scaling
220
+ # property. If you specify a scalable dimension, you must also specify
221
+ # a resource ID.
222
+ #
223
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
224
+ # service.
225
+ #
226
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
227
+ # Spot fleet request.
228
+ #
229
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
230
+ # count of an EMR Instance Group.
231
+ #
232
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
233
+ # AppStream 2.0 fleet.
234
+ # @return [String]
235
+ #
236
+ # @!attribute [rw] max_results
237
+ # The maximum number of scalable target results. This value can be
238
+ # between 1 and 50. The default value is 50.
239
+ #
240
+ # If this parameter is used, the operation returns up to `MaxResults`
241
+ # results at a time, along with a `NextToken` value. To get the next
242
+ # set of results, include the `NextToken` value in a subsequent call.
243
+ # If this parameter is not used, the operation returns up to 50
244
+ # results and a `NextToken` value, if applicable.
245
+ # @return [Integer]
246
+ #
247
+ # @!attribute [rw] next_token
248
+ # The token for the next set of results.
249
+ # @return [String]
250
+ #
251
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DescribeScalableTargetsRequest AWS API Documentation
252
+ #
253
+ class DescribeScalableTargetsRequest < Struct.new(
254
+ :service_namespace,
255
+ :resource_ids,
256
+ :scalable_dimension,
257
+ :max_results,
258
+ :next_token)
259
+ include Aws::Structure
260
+ end
238
261
 
239
- # @note When making an API call, pass DescribeScalingActivitiesRequest
240
- # data as a hash:
241
- #
242
- # {
243
- # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2
244
- # resource_id: "ResourceIdMaxLen1600",
245
- # scalable_dimension: "ecs:service:DesiredCount", # accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount
246
- # max_results: 1,
247
- # next_token: "XmlString",
248
- # }
249
- # @!attribute [rw] service_namespace
250
- # The namespace of the AWS service. For more information, see [AWS
251
- # Service Namespaces][1] in the *Amazon Web Services General
252
- # Reference*.
253
- #
254
- #
255
- #
256
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
257
- # @return [String]
258
- #
259
- # @!attribute [rw] resource_id
260
- # The identifier of the resource associated with the scaling activity.
261
- # This string consists of the resource type and unique identifier. If
262
- # you specify a scalable dimension, you must also specify a resource
263
- # ID.
264
- #
265
- # * ECS service - The resource type is `service` and the unique
266
- # identifier is the cluster name and service name. Example:
267
- # `service/default/sample-webapp`.
268
- #
269
- # * Spot fleet request - The resource type is `spot-fleet-request` and
270
- # the unique identifier is the Spot fleet request ID. Example:
271
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
272
- #
273
- # * EMR cluster - The resource type is `instancegroup` and the unique
274
- # identifier is the cluster ID and instance group ID. Example:
275
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
276
- # @return [String]
277
- #
278
- # @!attribute [rw] scalable_dimension
279
- # The scalable dimension. This string consists of the service
280
- # namespace, resource type, and scaling property. If you specify a
281
- # scalable dimension, you must also specify a resource ID.
282
- #
283
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
284
- # service.
285
- #
286
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
287
- # Spot fleet request.
288
- #
289
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
290
- # count of an EMR Instance Group.
291
- # @return [String]
292
- #
293
- # @!attribute [rw] max_results
294
- # The maximum number of scalable target results. This value can be
295
- # between 1 and 50. The default value is 50.
296
- #
297
- # If this parameter is used, the operation returns up to `MaxResults`
298
- # results at a time, along with a `NextToken` value. To get the next
299
- # set of results, include the `NextToken` value in a subsequent call.
300
- # If this parameter is not used, the operation returns up to 50
301
- # results and a `NextToken` value, if applicable.
302
- # @return [Integer]
303
- #
304
- # @!attribute [rw] next_token
305
- # The token for the next set of results.
306
- # @return [String]
307
- class DescribeScalingActivitiesRequest < Struct.new(
308
- :service_namespace,
309
- :resource_id,
310
- :scalable_dimension,
311
- :max_results,
312
- :next_token)
313
- include Aws::Structure
314
- end
262
+ # @!attribute [rw] scalable_targets
263
+ # The list of scalable targets that matches the request parameters.
264
+ # @return [Array<Types::ScalableTarget>]
265
+ #
266
+ # @!attribute [rw] next_token
267
+ # The token required to get the next set of results. This value is
268
+ # `null` if there are no more results to return.
269
+ # @return [String]
270
+ #
271
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DescribeScalableTargetsResponse AWS API Documentation
272
+ #
273
+ class DescribeScalableTargetsResponse < Struct.new(
274
+ :scalable_targets,
275
+ :next_token)
276
+ include Aws::Structure
277
+ end
315
278
 
316
- # @!attribute [rw] scaling_activities
317
- # A list of scaling activity objects.
318
- # @return [Array<Types::ScalingActivity>]
319
- #
320
- # @!attribute [rw] next_token
321
- # The token required to get the next set of results. This value is
322
- # `null` if there are no more results to return.
323
- # @return [String]
324
- class DescribeScalingActivitiesResponse < Struct.new(
325
- :scaling_activities,
326
- :next_token)
327
- include Aws::Structure
328
- end
279
+ # @note When making an API call, you may pass DescribeScalingActivitiesRequest
280
+ # data as a hash:
281
+ #
282
+ # {
283
+ # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2, appstream
284
+ # resource_id: "ResourceIdMaxLen1600",
285
+ # scalable_dimension: "ecs:service:DesiredCount", # accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount, appstream:fleet:DesiredCapacity
286
+ # max_results: 1,
287
+ # next_token: "XmlString",
288
+ # }
289
+ #
290
+ # @!attribute [rw] service_namespace
291
+ # The namespace of the AWS service. For more information, see [AWS
292
+ # Service Namespaces][1] in the *Amazon Web Services General
293
+ # Reference*.
294
+ #
295
+ #
296
+ #
297
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
298
+ # @return [String]
299
+ #
300
+ # @!attribute [rw] resource_id
301
+ # The identifier of the resource associated with the scaling activity.
302
+ # This string consists of the resource type and unique identifier. If
303
+ # you specify a scalable dimension, you must also specify a resource
304
+ # ID.
305
+ #
306
+ # * ECS service - The resource type is `service` and the unique
307
+ # identifier is the cluster name and service name. Example:
308
+ # `service/default/sample-webapp`.
309
+ #
310
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
311
+ # the unique identifier is the Spot fleet request ID. Example:
312
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
313
+ #
314
+ # * EMR cluster - The resource type is `instancegroup` and the unique
315
+ # identifier is the cluster ID and instance group ID. Example:
316
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
317
+ #
318
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
319
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
320
+ # @return [String]
321
+ #
322
+ # @!attribute [rw] scalable_dimension
323
+ # The scalable dimension. This string consists of the service
324
+ # namespace, resource type, and scaling property. If you specify a
325
+ # scalable dimension, you must also specify a resource ID.
326
+ #
327
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
328
+ # service.
329
+ #
330
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
331
+ # Spot fleet request.
332
+ #
333
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
334
+ # count of an EMR Instance Group.
335
+ #
336
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
337
+ # AppStream 2.0 fleet.
338
+ # @return [String]
339
+ #
340
+ # @!attribute [rw] max_results
341
+ # The maximum number of scalable target results. This value can be
342
+ # between 1 and 50. The default value is 50.
343
+ #
344
+ # If this parameter is used, the operation returns up to `MaxResults`
345
+ # results at a time, along with a `NextToken` value. To get the next
346
+ # set of results, include the `NextToken` value in a subsequent call.
347
+ # If this parameter is not used, the operation returns up to 50
348
+ # results and a `NextToken` value, if applicable.
349
+ # @return [Integer]
350
+ #
351
+ # @!attribute [rw] next_token
352
+ # The token for the next set of results.
353
+ # @return [String]
354
+ #
355
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DescribeScalingActivitiesRequest AWS API Documentation
356
+ #
357
+ class DescribeScalingActivitiesRequest < Struct.new(
358
+ :service_namespace,
359
+ :resource_id,
360
+ :scalable_dimension,
361
+ :max_results,
362
+ :next_token)
363
+ include Aws::Structure
364
+ end
329
365
 
330
- # @note When making an API call, pass DescribeScalingPoliciesRequest
331
- # data as a hash:
332
- #
333
- # {
334
- # policy_names: ["ResourceIdMaxLen1600"],
335
- # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2
336
- # resource_id: "ResourceIdMaxLen1600",
337
- # scalable_dimension: "ecs:service:DesiredCount", # accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount
338
- # max_results: 1,
339
- # next_token: "XmlString",
340
- # }
341
- # @!attribute [rw] policy_names
342
- # The names of the scaling policies to describe.
343
- # @return [Array<String>]
344
- #
345
- # @!attribute [rw] service_namespace
346
- # The namespace of the AWS service. For more information, see [AWS
347
- # Service Namespaces][1] in the *Amazon Web Services General
348
- # Reference*.
349
- #
350
- #
351
- #
352
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
353
- # @return [String]
354
- #
355
- # @!attribute [rw] resource_id
356
- # The identifier of the resource associated with the scaling policy.
357
- # This string consists of the resource type and unique identifier. If
358
- # you specify a scalable dimension, you must also specify a resource
359
- # ID.
360
- #
361
- # * ECS service - The resource type is `service` and the unique
362
- # identifier is the cluster name and service name. Example:
363
- # `service/default/sample-webapp`.
364
- #
365
- # * Spot fleet request - The resource type is `spot-fleet-request` and
366
- # the unique identifier is the Spot fleet request ID. Example:
367
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
368
- #
369
- # * EMR cluster - The resource type is `instancegroup` and the unique
370
- # identifier is the cluster ID and instance group ID. Example:
371
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
372
- # @return [String]
373
- #
374
- # @!attribute [rw] scalable_dimension
375
- # The scalable dimension. This string consists of the service
376
- # namespace, resource type, and scaling property. If you specify a
377
- # scalable dimension, you must also specify a resource ID.
378
- #
379
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
380
- # service.
381
- #
382
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
383
- # Spot fleet request.
384
- #
385
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
386
- # count of an EMR Instance Group.
387
- # @return [String]
388
- #
389
- # @!attribute [rw] max_results
390
- # The maximum number of scalable target results. This value can be
391
- # between 1 and 50. The default value is 50.
392
- #
393
- # If this parameter is used, the operation returns up to `MaxResults`
394
- # results at a time, along with a `NextToken` value. To get the next
395
- # set of results, include the `NextToken` value in a subsequent call.
396
- # If this parameter is not used, the operation returns up to 50
397
- # results and a `NextToken` value, if applicable.
398
- # @return [Integer]
399
- #
400
- # @!attribute [rw] next_token
401
- # The token for the next set of results.
402
- # @return [String]
403
- class DescribeScalingPoliciesRequest < Struct.new(
404
- :policy_names,
405
- :service_namespace,
406
- :resource_id,
407
- :scalable_dimension,
408
- :max_results,
409
- :next_token)
410
- include Aws::Structure
411
- end
366
+ # @!attribute [rw] scaling_activities
367
+ # A list of scaling activity objects.
368
+ # @return [Array<Types::ScalingActivity>]
369
+ #
370
+ # @!attribute [rw] next_token
371
+ # The token required to get the next set of results. This value is
372
+ # `null` if there are no more results to return.
373
+ # @return [String]
374
+ #
375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DescribeScalingActivitiesResponse AWS API Documentation
376
+ #
377
+ class DescribeScalingActivitiesResponse < Struct.new(
378
+ :scaling_activities,
379
+ :next_token)
380
+ include Aws::Structure
381
+ end
412
382
 
413
- # @!attribute [rw] scaling_policies
414
- # A list of scaling policy objects.
415
- # @return [Array<Types::ScalingPolicy>]
416
- #
417
- # @!attribute [rw] next_token
418
- # The token required to get the next set of results. This value is
419
- # `null` if there are no more results to return.
420
- # @return [String]
421
- class DescribeScalingPoliciesResponse < Struct.new(
422
- :scaling_policies,
423
- :next_token)
424
- include Aws::Structure
425
- end
383
+ # @note When making an API call, you may pass DescribeScalingPoliciesRequest
384
+ # data as a hash:
385
+ #
386
+ # {
387
+ # policy_names: ["ResourceIdMaxLen1600"],
388
+ # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2, appstream
389
+ # resource_id: "ResourceIdMaxLen1600",
390
+ # scalable_dimension: "ecs:service:DesiredCount", # accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount, appstream:fleet:DesiredCapacity
391
+ # max_results: 1,
392
+ # next_token: "XmlString",
393
+ # }
394
+ #
395
+ # @!attribute [rw] policy_names
396
+ # The names of the scaling policies to describe.
397
+ # @return [Array<String>]
398
+ #
399
+ # @!attribute [rw] service_namespace
400
+ # The namespace of the AWS service. For more information, see [AWS
401
+ # Service Namespaces][1] in the *Amazon Web Services General
402
+ # Reference*.
403
+ #
404
+ #
405
+ #
406
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
407
+ # @return [String]
408
+ #
409
+ # @!attribute [rw] resource_id
410
+ # The identifier of the resource associated with the scaling policy.
411
+ # This string consists of the resource type and unique identifier. If
412
+ # you specify a scalable dimension, you must also specify a resource
413
+ # ID.
414
+ #
415
+ # * ECS service - The resource type is `service` and the unique
416
+ # identifier is the cluster name and service name. Example:
417
+ # `service/default/sample-webapp`.
418
+ #
419
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
420
+ # the unique identifier is the Spot fleet request ID. Example:
421
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
422
+ #
423
+ # * EMR cluster - The resource type is `instancegroup` and the unique
424
+ # identifier is the cluster ID and instance group ID. Example:
425
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
426
+ #
427
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
428
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
429
+ # @return [String]
430
+ #
431
+ # @!attribute [rw] scalable_dimension
432
+ # The scalable dimension. This string consists of the service
433
+ # namespace, resource type, and scaling property. If you specify a
434
+ # scalable dimension, you must also specify a resource ID.
435
+ #
436
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
437
+ # service.
438
+ #
439
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
440
+ # Spot fleet request.
441
+ #
442
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
443
+ # count of an EMR Instance Group.
444
+ #
445
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
446
+ # AppStream 2.0 fleet.
447
+ # @return [String]
448
+ #
449
+ # @!attribute [rw] max_results
450
+ # The maximum number of scalable target results. This value can be
451
+ # between 1 and 50. The default value is 50.
452
+ #
453
+ # If this parameter is used, the operation returns up to `MaxResults`
454
+ # results at a time, along with a `NextToken` value. To get the next
455
+ # set of results, include the `NextToken` value in a subsequent call.
456
+ # If this parameter is not used, the operation returns up to 50
457
+ # results and a `NextToken` value, if applicable.
458
+ # @return [Integer]
459
+ #
460
+ # @!attribute [rw] next_token
461
+ # The token for the next set of results.
462
+ # @return [String]
463
+ #
464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DescribeScalingPoliciesRequest AWS API Documentation
465
+ #
466
+ class DescribeScalingPoliciesRequest < Struct.new(
467
+ :policy_names,
468
+ :service_namespace,
469
+ :resource_id,
470
+ :scalable_dimension,
471
+ :max_results,
472
+ :next_token)
473
+ include Aws::Structure
474
+ end
426
475
 
427
- # @note When making an API call, pass PutScalingPolicyRequest
428
- # data as a hash:
429
- #
430
- # {
431
- # policy_name: "PolicyName", # required
432
- # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2
433
- # resource_id: "ResourceIdMaxLen1600", # required
434
- # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount
435
- # policy_type: "StepScaling", # accepts StepScaling
436
- # step_scaling_policy_configuration: {
437
- # adjustment_type: "ChangeInCapacity", # accepts ChangeInCapacity, PercentChangeInCapacity, ExactCapacity
438
- # step_adjustments: [
439
- # {
440
- # metric_interval_lower_bound: 1.0,
441
- # metric_interval_upper_bound: 1.0,
442
- # scaling_adjustment: 1, # required
443
- # },
444
- # ],
445
- # min_adjustment_magnitude: 1,
446
- # cooldown: 1,
447
- # metric_aggregation_type: "Average", # accepts Average, Minimum, Maximum
448
- # },
449
- # }
450
- # @!attribute [rw] policy_name
451
- # The name of the scaling policy.
452
- # @return [String]
453
- #
454
- # @!attribute [rw] service_namespace
455
- # The namespace of the AWS service. For more information, see [AWS
456
- # Service Namespaces][1] in the *Amazon Web Services General
457
- # Reference*.
458
- #
459
- #
460
- #
461
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
462
- # @return [String]
463
- #
464
- # @!attribute [rw] resource_id
465
- # The identifier of the resource associated with the scaling policy.
466
- # This string consists of the resource type and unique identifier.
467
- #
468
- # * ECS service - The resource type is `service` and the unique
469
- # identifier is the cluster name and service name. Example:
470
- # `service/default/sample-webapp`.
471
- #
472
- # * Spot fleet request - The resource type is `spot-fleet-request` and
473
- # the unique identifier is the Spot fleet request ID. Example:
474
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
475
- #
476
- # * EMR cluster - The resource type is `instancegroup` and the unique
477
- # identifier is the cluster ID and instance group ID. Example:
478
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
479
- # @return [String]
480
- #
481
- # @!attribute [rw] scalable_dimension
482
- # The scalable dimension. This string consists of the service
483
- # namespace, resource type, and scaling property.
484
- #
485
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
486
- # service.
487
- #
488
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
489
- # Spot fleet request.
490
- #
491
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
492
- # count of an EMR Instance Group.
493
- # @return [String]
494
- #
495
- # @!attribute [rw] policy_type
496
- # The policy type. If you are creating a new policy, this parameter is
497
- # required. If you are updating a policy, this parameter is not
498
- # required.
499
- # @return [String]
500
- #
501
- # @!attribute [rw] step_scaling_policy_configuration
502
- # The configuration for the step scaling policy. If you are creating a
503
- # new policy, this parameter is required. If you are updating a
504
- # policy, this parameter is not required. For more information, see
505
- # StepScalingPolicyConfiguration and StepAdjustment.
506
- # @return [Types::StepScalingPolicyConfiguration]
507
- class PutScalingPolicyRequest < Struct.new(
508
- :policy_name,
509
- :service_namespace,
510
- :resource_id,
511
- :scalable_dimension,
512
- :policy_type,
513
- :step_scaling_policy_configuration)
514
- include Aws::Structure
515
- end
476
+ # @!attribute [rw] scaling_policies
477
+ # A list of scaling policy objects.
478
+ # @return [Array<Types::ScalingPolicy>]
479
+ #
480
+ # @!attribute [rw] next_token
481
+ # The token required to get the next set of results. This value is
482
+ # `null` if there are no more results to return.
483
+ # @return [String]
484
+ #
485
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/DescribeScalingPoliciesResponse AWS API Documentation
486
+ #
487
+ class DescribeScalingPoliciesResponse < Struct.new(
488
+ :scaling_policies,
489
+ :next_token)
490
+ include Aws::Structure
491
+ end
516
492
 
517
- # @!attribute [rw] policy_arn
518
- # The Amazon Resource Name (ARN) of the resulting scaling policy.
519
- # @return [String]
520
- class PutScalingPolicyResponse < Struct.new(
521
- :policy_arn)
522
- include Aws::Structure
523
- end
493
+ # @note When making an API call, you may pass PutScalingPolicyRequest
494
+ # data as a hash:
495
+ #
496
+ # {
497
+ # policy_name: "PolicyName", # required
498
+ # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2, appstream
499
+ # resource_id: "ResourceIdMaxLen1600", # required
500
+ # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount, appstream:fleet:DesiredCapacity
501
+ # policy_type: "StepScaling", # accepts StepScaling
502
+ # step_scaling_policy_configuration: {
503
+ # adjustment_type: "ChangeInCapacity", # accepts ChangeInCapacity, PercentChangeInCapacity, ExactCapacity
504
+ # step_adjustments: [
505
+ # {
506
+ # metric_interval_lower_bound: 1.0,
507
+ # metric_interval_upper_bound: 1.0,
508
+ # scaling_adjustment: 1, # required
509
+ # },
510
+ # ],
511
+ # min_adjustment_magnitude: 1,
512
+ # cooldown: 1,
513
+ # metric_aggregation_type: "Average", # accepts Average, Minimum, Maximum
514
+ # },
515
+ # }
516
+ #
517
+ # @!attribute [rw] policy_name
518
+ # The name of the scaling policy.
519
+ # @return [String]
520
+ #
521
+ # @!attribute [rw] service_namespace
522
+ # The namespace of the AWS service. For more information, see [AWS
523
+ # Service Namespaces][1] in the *Amazon Web Services General
524
+ # Reference*.
525
+ #
526
+ #
527
+ #
528
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
529
+ # @return [String]
530
+ #
531
+ # @!attribute [rw] resource_id
532
+ # The identifier of the resource associated with the scaling policy.
533
+ # This string consists of the resource type and unique identifier.
534
+ #
535
+ # * ECS service - The resource type is `service` and the unique
536
+ # identifier is the cluster name and service name. Example:
537
+ # `service/default/sample-webapp`.
538
+ #
539
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
540
+ # the unique identifier is the Spot fleet request ID. Example:
541
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
542
+ #
543
+ # * EMR cluster - The resource type is `instancegroup` and the unique
544
+ # identifier is the cluster ID and instance group ID. Example:
545
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
546
+ #
547
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
548
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
549
+ # @return [String]
550
+ #
551
+ # @!attribute [rw] scalable_dimension
552
+ # The scalable dimension. This string consists of the service
553
+ # namespace, resource type, and scaling property.
554
+ #
555
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
556
+ # service.
557
+ #
558
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
559
+ # Spot fleet request.
560
+ #
561
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
562
+ # count of an EMR Instance Group.
563
+ #
564
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
565
+ # AppStream 2.0 fleet.
566
+ # @return [String]
567
+ #
568
+ # @!attribute [rw] policy_type
569
+ # The policy type. If you are creating a new policy, this parameter is
570
+ # required. If you are updating a policy, this parameter is not
571
+ # required.
572
+ # @return [String]
573
+ #
574
+ # @!attribute [rw] step_scaling_policy_configuration
575
+ # The configuration for the step scaling policy. If you are creating a
576
+ # new policy, this parameter is required. If you are updating a
577
+ # policy, this parameter is not required. For more information, see
578
+ # StepScalingPolicyConfiguration and StepAdjustment.
579
+ # @return [Types::StepScalingPolicyConfiguration]
580
+ #
581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/PutScalingPolicyRequest AWS API Documentation
582
+ #
583
+ class PutScalingPolicyRequest < Struct.new(
584
+ :policy_name,
585
+ :service_namespace,
586
+ :resource_id,
587
+ :scalable_dimension,
588
+ :policy_type,
589
+ :step_scaling_policy_configuration)
590
+ include Aws::Structure
591
+ end
524
592
 
525
- # @note When making an API call, pass RegisterScalableTargetRequest
526
- # data as a hash:
527
- #
528
- # {
529
- # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2
530
- # resource_id: "ResourceIdMaxLen1600", # required
531
- # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount
532
- # min_capacity: 1,
533
- # max_capacity: 1,
534
- # role_arn: "ResourceIdMaxLen1600",
535
- # }
536
- # @!attribute [rw] service_namespace
537
- # The namespace of the AWS service. For more information, see [AWS
538
- # Service Namespaces][1] in the *Amazon Web Services General
539
- # Reference*.
540
- #
541
- #
542
- #
543
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
544
- # @return [String]
545
- #
546
- # @!attribute [rw] resource_id
547
- # The identifier of the resource associated with the scalable target.
548
- # This string consists of the resource type and unique identifier.
549
- #
550
- # * ECS service - The resource type is `service` and the unique
551
- # identifier is the cluster name and service name. Example:
552
- # `service/default/sample-webapp`.
553
- #
554
- # * Spot fleet request - The resource type is `spot-fleet-request` and
555
- # the unique identifier is the Spot fleet request ID. Example:
556
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
557
- #
558
- # * EMR cluster - The resource type is `instancegroup` and the unique
559
- # identifier is the cluster ID and instance group ID. Example:
560
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
561
- # @return [String]
562
- #
563
- # @!attribute [rw] scalable_dimension
564
- # The scalable dimension associated with the scalable target. This
565
- # string consists of the service namespace, resource type, and scaling
566
- # property.
567
- #
568
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
569
- # service.
570
- #
571
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
572
- # Spot fleet request.
573
- #
574
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
575
- # count of an EMR Instance Group.
576
- # @return [String]
577
- #
578
- # @!attribute [rw] min_capacity
579
- # The minimum value to scale to in response to a scale in event. This
580
- # parameter is required if you are registering a scalable target and
581
- # optional if you are updating one.
582
- # @return [Integer]
583
- #
584
- # @!attribute [rw] max_capacity
585
- # The maximum value to scale to in response to a scale out event. This
586
- # parameter is required if you are registering a scalable target and
587
- # optional if you are updating one.
588
- # @return [Integer]
589
- #
590
- # @!attribute [rw] role_arn
591
- # The ARN of an IAM role that allows Application Auto Scaling to
592
- # modify the scalable target on your behalf. This parameter is
593
- # required when you register a scalable target and optional when you
594
- # update one.
595
- # @return [String]
596
- class RegisterScalableTargetRequest < Struct.new(
597
- :service_namespace,
598
- :resource_id,
599
- :scalable_dimension,
600
- :min_capacity,
601
- :max_capacity,
602
- :role_arn)
603
- include Aws::Structure
604
- end
593
+ # @!attribute [rw] policy_arn
594
+ # The Amazon Resource Name (ARN) of the resulting scaling policy.
595
+ # @return [String]
596
+ #
597
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/PutScalingPolicyResponse AWS API Documentation
598
+ #
599
+ class PutScalingPolicyResponse < Struct.new(
600
+ :policy_arn)
601
+ include Aws::Structure
602
+ end
605
603
 
606
- class RegisterScalableTargetResponse < Aws::EmptyStructure; end
604
+ # @note When making an API call, you may pass RegisterScalableTargetRequest
605
+ # data as a hash:
606
+ #
607
+ # {
608
+ # service_namespace: "ecs", # required, accepts ecs, elasticmapreduce, ec2, appstream
609
+ # resource_id: "ResourceIdMaxLen1600", # required
610
+ # scalable_dimension: "ecs:service:DesiredCount", # required, accepts ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, elasticmapreduce:instancegroup:InstanceCount, appstream:fleet:DesiredCapacity
611
+ # min_capacity: 1,
612
+ # max_capacity: 1,
613
+ # role_arn: "ResourceIdMaxLen1600",
614
+ # }
615
+ #
616
+ # @!attribute [rw] service_namespace
617
+ # The namespace of the AWS service. For more information, see [AWS
618
+ # Service Namespaces][1] in the *Amazon Web Services General
619
+ # Reference*.
620
+ #
621
+ #
622
+ #
623
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
624
+ # @return [String]
625
+ #
626
+ # @!attribute [rw] resource_id
627
+ # The identifier of the resource associated with the scalable target.
628
+ # This string consists of the resource type and unique identifier.
629
+ #
630
+ # * ECS service - The resource type is `service` and the unique
631
+ # identifier is the cluster name and service name. Example:
632
+ # `service/default/sample-webapp`.
633
+ #
634
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
635
+ # the unique identifier is the Spot fleet request ID. Example:
636
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
637
+ #
638
+ # * EMR cluster - The resource type is `instancegroup` and the unique
639
+ # identifier is the cluster ID and instance group ID. Example:
640
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
641
+ #
642
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
643
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
644
+ # @return [String]
645
+ #
646
+ # @!attribute [rw] scalable_dimension
647
+ # The scalable dimension associated with the scalable target. This
648
+ # string consists of the service namespace, resource type, and scaling
649
+ # property.
650
+ #
651
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
652
+ # service.
653
+ #
654
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
655
+ # Spot fleet request.
656
+ #
657
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
658
+ # count of an EMR Instance Group.
659
+ #
660
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
661
+ # AppStream 2.0 fleet.
662
+ # @return [String]
663
+ #
664
+ # @!attribute [rw] min_capacity
665
+ # The minimum value to scale to in response to a scale in event. This
666
+ # parameter is required if you are registering a scalable target and
667
+ # optional if you are updating one.
668
+ # @return [Integer]
669
+ #
670
+ # @!attribute [rw] max_capacity
671
+ # The maximum value to scale to in response to a scale out event. This
672
+ # parameter is required if you are registering a scalable target and
673
+ # optional if you are updating one.
674
+ # @return [Integer]
675
+ #
676
+ # @!attribute [rw] role_arn
677
+ # The ARN of an IAM role that allows Application Auto Scaling to
678
+ # modify the scalable target on your behalf. This parameter is
679
+ # required when you register a scalable target and optional when you
680
+ # update one.
681
+ # @return [String]
682
+ #
683
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/RegisterScalableTargetRequest AWS API Documentation
684
+ #
685
+ class RegisterScalableTargetRequest < Struct.new(
686
+ :service_namespace,
687
+ :resource_id,
688
+ :scalable_dimension,
689
+ :min_capacity,
690
+ :max_capacity,
691
+ :role_arn)
692
+ include Aws::Structure
693
+ end
607
694
 
608
- # Represents a scalable target.
609
- # @!attribute [rw] service_namespace
610
- # The namespace of the AWS service. For more information, see [AWS
611
- # Service Namespaces][1] in the *Amazon Web Services General
612
- # Reference*.
613
- #
614
- #
615
- #
616
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
617
- # @return [String]
618
- #
619
- # @!attribute [rw] resource_id
620
- # The identifier of the resource associated with the scalable target.
621
- # This string consists of the resource type and unique identifier.
622
- #
623
- # * ECS service - The resource type is `service` and the unique
624
- # identifier is the cluster name and service name. Example:
625
- # `service/default/sample-webapp`.
626
- #
627
- # * Spot fleet request - The resource type is `spot-fleet-request` and
628
- # the unique identifier is the Spot fleet request ID. Example:
629
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
630
- #
631
- # * EMR cluster - The resource type is `instancegroup` and the unique
632
- # identifier is the cluster ID and instance group ID. Example:
633
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
634
- # @return [String]
635
- #
636
- # @!attribute [rw] scalable_dimension
637
- # The scalable dimension associated with the scalable target. This
638
- # string consists of the service namespace, resource type, and scaling
639
- # property.
640
- #
641
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
642
- # service.
643
- #
644
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
645
- # Spot fleet request.
646
- #
647
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
648
- # count of an EMR Instance Group.
649
- # @return [String]
650
- #
651
- # @!attribute [rw] min_capacity
652
- # The minimum value to scale to in response to a scale in event.
653
- # @return [Integer]
654
- #
655
- # @!attribute [rw] max_capacity
656
- # The maximum value to scale to in response to a scale out event.
657
- # @return [Integer]
658
- #
659
- # @!attribute [rw] role_arn
660
- # The ARN of an IAM role that allows Application Auto Scaling to
661
- # modify the scalable target on your behalf.
662
- # @return [String]
663
- #
664
- # @!attribute [rw] creation_time
665
- # The Unix timestamp for when the scalable target was created.
666
- # @return [Time]
667
- class ScalableTarget < Struct.new(
668
- :service_namespace,
669
- :resource_id,
670
- :scalable_dimension,
671
- :min_capacity,
672
- :max_capacity,
673
- :role_arn,
674
- :creation_time)
675
- include Aws::Structure
676
- end
695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/RegisterScalableTargetResponse AWS API Documentation
696
+ #
697
+ class RegisterScalableTargetResponse < Aws::EmptyStructure; end
677
698
 
678
- # Represents a scaling activity.
679
- # @!attribute [rw] activity_id
680
- # The unique identifier of the scaling activity.
681
- # @return [String]
682
- #
683
- # @!attribute [rw] service_namespace
684
- # The namespace of the AWS service. For more information, see [AWS
685
- # Service Namespaces][1] in the *Amazon Web Services General
686
- # Reference*.
687
- #
688
- #
689
- #
690
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
691
- # @return [String]
692
- #
693
- # @!attribute [rw] resource_id
694
- # The identifier of the resource associated with the scaling activity.
695
- # This string consists of the resource type and unique identifier.
696
- #
697
- # * ECS service - The resource type is `service` and the unique
698
- # identifier is the cluster name and service name. Example:
699
- # `service/default/sample-webapp`.
700
- #
701
- # * Spot fleet request - The resource type is `spot-fleet-request` and
702
- # the unique identifier is the Spot fleet request ID. Example:
703
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
704
- #
705
- # * EMR cluster - The resource type is `instancegroup` and the unique
706
- # identifier is the cluster ID and instance group ID. Example:
707
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
708
- # @return [String]
709
- #
710
- # @!attribute [rw] scalable_dimension
711
- # The scalable dimension. This string consists of the service
712
- # namespace, resource type, and scaling property.
713
- #
714
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
715
- # service.
716
- #
717
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
718
- # Spot fleet request.
719
- #
720
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
721
- # count of an EMR Instance Group.
722
- # @return [String]
723
- #
724
- # @!attribute [rw] description
725
- # A simple description of what action the scaling activity intends to
726
- # accomplish.
727
- # @return [String]
728
- #
729
- # @!attribute [rw] cause
730
- # A simple description of what caused the scaling activity to happen.
731
- # @return [String]
732
- #
733
- # @!attribute [rw] start_time
734
- # The Unix timestamp for when the scaling activity began.
735
- # @return [Time]
736
- #
737
- # @!attribute [rw] end_time
738
- # The Unix timestamp for when the scaling activity ended.
739
- # @return [Time]
740
- #
741
- # @!attribute [rw] status_code
742
- # Indicates the status of the scaling activity.
743
- # @return [String]
744
- #
745
- # @!attribute [rw] status_message
746
- # A simple message about the current status of the scaling activity.
747
- # @return [String]
748
- #
749
- # @!attribute [rw] details
750
- # The details about the scaling activity.
751
- # @return [String]
752
- class ScalingActivity < Struct.new(
753
- :activity_id,
754
- :service_namespace,
755
- :resource_id,
756
- :scalable_dimension,
757
- :description,
758
- :cause,
759
- :start_time,
760
- :end_time,
761
- :status_code,
762
- :status_message,
763
- :details)
764
- include Aws::Structure
765
- end
699
+ # Represents a scalable target.
700
+ #
701
+ # @!attribute [rw] service_namespace
702
+ # The namespace of the AWS service. For more information, see [AWS
703
+ # Service Namespaces][1] in the *Amazon Web Services General
704
+ # Reference*.
705
+ #
706
+ #
707
+ #
708
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
709
+ # @return [String]
710
+ #
711
+ # @!attribute [rw] resource_id
712
+ # The identifier of the resource associated with the scalable target.
713
+ # This string consists of the resource type and unique identifier.
714
+ #
715
+ # * ECS service - The resource type is `service` and the unique
716
+ # identifier is the cluster name and service name. Example:
717
+ # `service/default/sample-webapp`.
718
+ #
719
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
720
+ # the unique identifier is the Spot fleet request ID. Example:
721
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
722
+ #
723
+ # * EMR cluster - The resource type is `instancegroup` and the unique
724
+ # identifier is the cluster ID and instance group ID. Example:
725
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
726
+ #
727
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
728
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
729
+ # @return [String]
730
+ #
731
+ # @!attribute [rw] scalable_dimension
732
+ # The scalable dimension associated with the scalable target. This
733
+ # string consists of the service namespace, resource type, and scaling
734
+ # property.
735
+ #
736
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
737
+ # service.
738
+ #
739
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
740
+ # Spot fleet request.
741
+ #
742
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
743
+ # count of an EMR Instance Group.
744
+ #
745
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
746
+ # AppStream 2.0 fleet.
747
+ # @return [String]
748
+ #
749
+ # @!attribute [rw] min_capacity
750
+ # The minimum value to scale to in response to a scale in event.
751
+ # @return [Integer]
752
+ #
753
+ # @!attribute [rw] max_capacity
754
+ # The maximum value to scale to in response to a scale out event.
755
+ # @return [Integer]
756
+ #
757
+ # @!attribute [rw] role_arn
758
+ # The ARN of an IAM role that allows Application Auto Scaling to
759
+ # modify the scalable target on your behalf.
760
+ # @return [String]
761
+ #
762
+ # @!attribute [rw] creation_time
763
+ # The Unix timestamp for when the scalable target was created.
764
+ # @return [Time]
765
+ #
766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/ScalableTarget AWS API Documentation
767
+ #
768
+ class ScalableTarget < Struct.new(
769
+ :service_namespace,
770
+ :resource_id,
771
+ :scalable_dimension,
772
+ :min_capacity,
773
+ :max_capacity,
774
+ :role_arn,
775
+ :creation_time)
776
+ include Aws::Structure
777
+ end
766
778
 
767
- # Represents a scaling policy.
768
- # @!attribute [rw] policy_arn
769
- # The Amazon Resource Name (ARN) of the scaling policy.
770
- # @return [String]
771
- #
772
- # @!attribute [rw] policy_name
773
- # The name of the scaling policy.
774
- # @return [String]
775
- #
776
- # @!attribute [rw] service_namespace
777
- # The namespace of the AWS service. For more information, see [AWS
778
- # Service Namespaces][1] in the *Amazon Web Services General
779
- # Reference*.
780
- #
781
- #
782
- #
783
- # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
784
- # @return [String]
785
- #
786
- # @!attribute [rw] resource_id
787
- # The identifier of the resource associated with the scaling policy.
788
- # This string consists of the resource type and unique identifier.
789
- #
790
- # * ECS service - The resource type is `service` and the unique
791
- # identifier is the cluster name and service name. Example:
792
- # `service/default/sample-webapp`.
793
- #
794
- # * Spot fleet request - The resource type is `spot-fleet-request` and
795
- # the unique identifier is the Spot fleet request ID. Example:
796
- # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
797
- #
798
- # * EMR cluster - The resource type is `instancegroup` and the unique
799
- # identifier is the cluster ID and instance group ID. Example:
800
- # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
801
- # @return [String]
802
- #
803
- # @!attribute [rw] scalable_dimension
804
- # The scalable dimension. This string consists of the service
805
- # namespace, resource type, and scaling property.
806
- #
807
- # * `ecs:service:DesiredCount` - The desired task count of an ECS
808
- # service.
809
- #
810
- # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
811
- # Spot fleet request.
812
- #
813
- # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
814
- # count of an EMR Instance Group.
815
- # @return [String]
816
- #
817
- # @!attribute [rw] policy_type
818
- # The scaling policy type.
819
- # @return [String]
820
- #
821
- # @!attribute [rw] step_scaling_policy_configuration
822
- # The configuration for the step scaling policy.
823
- # @return [Types::StepScalingPolicyConfiguration]
824
- #
825
- # @!attribute [rw] alarms
826
- # The CloudWatch alarms associated with the scaling policy.
827
- # @return [Array<Types::Alarm>]
828
- #
829
- # @!attribute [rw] creation_time
830
- # The Unix timestamp for when the scaling policy was created.
831
- # @return [Time]
832
- class ScalingPolicy < Struct.new(
833
- :policy_arn,
834
- :policy_name,
835
- :service_namespace,
836
- :resource_id,
837
- :scalable_dimension,
838
- :policy_type,
839
- :step_scaling_policy_configuration,
840
- :alarms,
841
- :creation_time)
842
- include Aws::Structure
843
- end
779
+ # Represents a scaling activity.
780
+ #
781
+ # @!attribute [rw] activity_id
782
+ # The unique identifier of the scaling activity.
783
+ # @return [String]
784
+ #
785
+ # @!attribute [rw] service_namespace
786
+ # The namespace of the AWS service. For more information, see [AWS
787
+ # Service Namespaces][1] in the *Amazon Web Services General
788
+ # Reference*.
789
+ #
790
+ #
791
+ #
792
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
793
+ # @return [String]
794
+ #
795
+ # @!attribute [rw] resource_id
796
+ # The identifier of the resource associated with the scaling activity.
797
+ # This string consists of the resource type and unique identifier.
798
+ #
799
+ # * ECS service - The resource type is `service` and the unique
800
+ # identifier is the cluster name and service name. Example:
801
+ # `service/default/sample-webapp`.
802
+ #
803
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
804
+ # the unique identifier is the Spot fleet request ID. Example:
805
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
806
+ #
807
+ # * EMR cluster - The resource type is `instancegroup` and the unique
808
+ # identifier is the cluster ID and instance group ID. Example:
809
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
810
+ #
811
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
812
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
813
+ # @return [String]
814
+ #
815
+ # @!attribute [rw] scalable_dimension
816
+ # The scalable dimension. This string consists of the service
817
+ # namespace, resource type, and scaling property.
818
+ #
819
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
820
+ # service.
821
+ #
822
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
823
+ # Spot fleet request.
824
+ #
825
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
826
+ # count of an EMR Instance Group.
827
+ #
828
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
829
+ # AppStream 2.0 fleet.
830
+ # @return [String]
831
+ #
832
+ # @!attribute [rw] description
833
+ # A simple description of what action the scaling activity intends to
834
+ # accomplish.
835
+ # @return [String]
836
+ #
837
+ # @!attribute [rw] cause
838
+ # A simple description of what caused the scaling activity to happen.
839
+ # @return [String]
840
+ #
841
+ # @!attribute [rw] start_time
842
+ # The Unix timestamp for when the scaling activity began.
843
+ # @return [Time]
844
+ #
845
+ # @!attribute [rw] end_time
846
+ # The Unix timestamp for when the scaling activity ended.
847
+ # @return [Time]
848
+ #
849
+ # @!attribute [rw] status_code
850
+ # Indicates the status of the scaling activity.
851
+ # @return [String]
852
+ #
853
+ # @!attribute [rw] status_message
854
+ # A simple message about the current status of the scaling activity.
855
+ # @return [String]
856
+ #
857
+ # @!attribute [rw] details
858
+ # The details about the scaling activity.
859
+ # @return [String]
860
+ #
861
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/ScalingActivity AWS API Documentation
862
+ #
863
+ class ScalingActivity < Struct.new(
864
+ :activity_id,
865
+ :service_namespace,
866
+ :resource_id,
867
+ :scalable_dimension,
868
+ :description,
869
+ :cause,
870
+ :start_time,
871
+ :end_time,
872
+ :status_code,
873
+ :status_message,
874
+ :details)
875
+ include Aws::Structure
876
+ end
844
877
 
845
- # Represents a step adjustment for a StepScalingPolicyConfiguration.
846
- # Describes an adjustment based on the difference between the value of
847
- # the aggregated CloudWatch metric and the breach threshold that you've
848
- # defined for the alarm.
849
- #
850
- # For the following examples, suppose that you have an alarm with a
851
- # breach threshold of 50:
852
- #
853
- # * To trigger the adjustment when the metric is greater than or equal
854
- # to 50 and less than 60, specify a lower bound of 0 and an upper
855
- # bound of 10.
856
- #
857
- # * To trigger the adjustment when the metric is greater than 40 and
858
- # less than or equal to 50, specify a lower bound of -10 and an upper
859
- # bound of 0.
860
- #
861
- # There are a few rules for the step adjustments for your step policy:
862
- #
863
- # * The ranges of your step adjustments can't overlap or have a gap.
864
- #
865
- # * At most one step adjustment can have a null lower bound. If one step
866
- # adjustment has a negative lower bound, then there must be a step
867
- # adjustment with a null lower bound.
868
- #
869
- # * At most one step adjustment can have a null upper bound. If one step
870
- # adjustment has a positive upper bound, then there must be a step
871
- # adjustment with a null upper bound.
872
- #
873
- # * The upper and lower bound can't be null in the same step
874
- # adjustment.
875
- # @note When making an API call, pass StepAdjustment
876
- # data as a hash:
877
- #
878
- # {
879
- # metric_interval_lower_bound: 1.0,
880
- # metric_interval_upper_bound: 1.0,
881
- # scaling_adjustment: 1, # required
882
- # }
883
- # @!attribute [rw] metric_interval_lower_bound
884
- # The lower bound for the difference between the alarm threshold and
885
- # the CloudWatch metric. If the metric value is above the breach
886
- # threshold, the lower bound is inclusive (the metric must be greater
887
- # than or equal to the threshold plus the lower bound). Otherwise, it
888
- # is exclusive (the metric must be greater than the threshold plus the
889
- # lower bound). A null value indicates negative infinity.
890
- # @return [Float]
891
- #
892
- # @!attribute [rw] metric_interval_upper_bound
893
- # The upper bound for the difference between the alarm threshold and
894
- # the CloudWatch metric. If the metric value is above the breach
895
- # threshold, the upper bound is exclusive (the metric must be less
896
- # than the threshold plus the upper bound). Otherwise, it is inclusive
897
- # (the metric must be less than or equal to the threshold plus the
898
- # upper bound). A null value indicates positive infinity.
899
- #
900
- # The upper bound must be greater than the lower bound.
901
- # @return [Float]
902
- #
903
- # @!attribute [rw] scaling_adjustment
904
- # The amount by which to scale, based on the specified adjustment
905
- # type. A positive value adds to the current scalable dimension while
906
- # a negative number removes from the current scalable dimension.
907
- # @return [Integer]
908
- class StepAdjustment < Struct.new(
909
- :metric_interval_lower_bound,
910
- :metric_interval_upper_bound,
911
- :scaling_adjustment)
912
- include Aws::Structure
913
- end
878
+ # Represents a scaling policy.
879
+ #
880
+ # @!attribute [rw] policy_arn
881
+ # The Amazon Resource Name (ARN) of the scaling policy.
882
+ # @return [String]
883
+ #
884
+ # @!attribute [rw] policy_name
885
+ # The name of the scaling policy.
886
+ # @return [String]
887
+ #
888
+ # @!attribute [rw] service_namespace
889
+ # The namespace of the AWS service. For more information, see [AWS
890
+ # Service Namespaces][1] in the *Amazon Web Services General
891
+ # Reference*.
892
+ #
893
+ #
894
+ #
895
+ # [1]: http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces
896
+ # @return [String]
897
+ #
898
+ # @!attribute [rw] resource_id
899
+ # The identifier of the resource associated with the scaling policy.
900
+ # This string consists of the resource type and unique identifier.
901
+ #
902
+ # * ECS service - The resource type is `service` and the unique
903
+ # identifier is the cluster name and service name. Example:
904
+ # `service/default/sample-webapp`.
905
+ #
906
+ # * Spot fleet request - The resource type is `spot-fleet-request` and
907
+ # the unique identifier is the Spot fleet request ID. Example:
908
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
909
+ #
910
+ # * EMR cluster - The resource type is `instancegroup` and the unique
911
+ # identifier is the cluster ID and instance group ID. Example:
912
+ # `instancegroup/j-2EEZNYKUA1NTV/ig-1791Y4E1L8YI0`.
913
+ #
914
+ # * AppStream 2.0 fleet - The resource type is `fleet` and the unique
915
+ # identifier is the fleet name. Example: `fleet/sample-fleet`.
916
+ # @return [String]
917
+ #
918
+ # @!attribute [rw] scalable_dimension
919
+ # The scalable dimension. This string consists of the service
920
+ # namespace, resource type, and scaling property.
921
+ #
922
+ # * `ecs:service:DesiredCount` - The desired task count of an ECS
923
+ # service.
924
+ #
925
+ # * `ec2:spot-fleet-request:TargetCapacity` - The target capacity of a
926
+ # Spot fleet request.
927
+ #
928
+ # * `elasticmapreduce:instancegroup:InstanceCount` - The instance
929
+ # count of an EMR Instance Group.
930
+ #
931
+ # * `appstream:fleet:DesiredCapacity` - The desired capacity of an
932
+ # AppStream 2.0 fleet.
933
+ # @return [String]
934
+ #
935
+ # @!attribute [rw] policy_type
936
+ # The scaling policy type.
937
+ # @return [String]
938
+ #
939
+ # @!attribute [rw] step_scaling_policy_configuration
940
+ # The configuration for the step scaling policy.
941
+ # @return [Types::StepScalingPolicyConfiguration]
942
+ #
943
+ # @!attribute [rw] alarms
944
+ # The CloudWatch alarms associated with the scaling policy.
945
+ # @return [Array<Types::Alarm>]
946
+ #
947
+ # @!attribute [rw] creation_time
948
+ # The Unix timestamp for when the scaling policy was created.
949
+ # @return [Time]
950
+ #
951
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/ScalingPolicy AWS API Documentation
952
+ #
953
+ class ScalingPolicy < Struct.new(
954
+ :policy_arn,
955
+ :policy_name,
956
+ :service_namespace,
957
+ :resource_id,
958
+ :scalable_dimension,
959
+ :policy_type,
960
+ :step_scaling_policy_configuration,
961
+ :alarms,
962
+ :creation_time)
963
+ include Aws::Structure
964
+ end
914
965
 
915
- # Represents a step scaling policy configuration.
916
- # @note When making an API call, pass StepScalingPolicyConfiguration
917
- # data as a hash:
918
- #
919
- # {
920
- # adjustment_type: "ChangeInCapacity", # accepts ChangeInCapacity, PercentChangeInCapacity, ExactCapacity
921
- # step_adjustments: [
922
- # {
923
- # metric_interval_lower_bound: 1.0,
924
- # metric_interval_upper_bound: 1.0,
925
- # scaling_adjustment: 1, # required
926
- # },
927
- # ],
928
- # min_adjustment_magnitude: 1,
929
- # cooldown: 1,
930
- # metric_aggregation_type: "Average", # accepts Average, Minimum, Maximum
931
- # }
932
- # @!attribute [rw] adjustment_type
933
- # The adjustment type, which specifies how the `ScalingAdjustment`
934
- # parameter in a StepAdjustment is interpreted.
935
- # @return [String]
936
- #
937
- # @!attribute [rw] step_adjustments
938
- # A set of adjustments that enable you to scale based on the size of
939
- # the alarm breach.
940
- # @return [Array<Types::StepAdjustment>]
941
- #
942
- # @!attribute [rw] min_adjustment_magnitude
943
- # The minimum number to adjust your scalable dimension as a result of
944
- # a scaling activity. If the adjustment type is
945
- # `PercentChangeInCapacity`, the scaling policy changes the scalable
946
- # dimension of the scalable target by this amount.
947
- # @return [Integer]
948
- #
949
- # @!attribute [rw] cooldown
950
- # The amount of time, in seconds, after a scaling activity completes
951
- # where previous trigger-related scaling activities can influence
952
- # future scaling events.
953
- #
954
- # For scale out policies, while `Cooldown` is in effect, the capacity
955
- # that has been added by the previous scale out event that initiated
956
- # the `Cooldown` is calculated as part of the desired capacity for the
957
- # next scale out. The intention is to continuously (but not
958
- # excessively) scale out. For example, an alarm triggers a step
959
- # scaling policy to scale out an Amazon ECS service by 2 tasks, the
960
- # scaling activity completes successfully, and a `Cooldown` period of
961
- # 5 minutes starts. During the `Cooldown` period, if the alarm
962
- # triggers the same policy again but at a more aggressive step
963
- # adjustment to scale out the service by 3 tasks, the 2 tasks that
964
- # were added in the previous scale out event are considered part of
965
- # that capacity and only 1 additional task is added to the desired
966
- # count.
967
- #
968
- # For scale in policies, the `Cooldown` period is used to block
969
- # subsequent scale in requests until it has expired. The intention is
970
- # to scale in conservatively to protect your application's
971
- # availability. However, if another alarm triggers a scale out policy
972
- # during the `Cooldown` period after a scale-in, Application Auto
973
- # Scaling scales out your scalable target immediately.
974
- # @return [Integer]
975
- #
976
- # @!attribute [rw] metric_aggregation_type
977
- # The aggregation type for the CloudWatch metrics. Valid values are
978
- # `Minimum`, `Maximum`, and `Average`.
979
- # @return [String]
980
- class StepScalingPolicyConfiguration < Struct.new(
981
- :adjustment_type,
982
- :step_adjustments,
983
- :min_adjustment_magnitude,
984
- :cooldown,
985
- :metric_aggregation_type)
986
- include Aws::Structure
987
- end
966
+ # Represents a step adjustment for a StepScalingPolicyConfiguration.
967
+ # Describes an adjustment based on the difference between the value of
968
+ # the aggregated CloudWatch metric and the breach threshold that you've
969
+ # defined for the alarm.
970
+ #
971
+ # For the following examples, suppose that you have an alarm with a
972
+ # breach threshold of 50:
973
+ #
974
+ # * To trigger the adjustment when the metric is greater than or equal
975
+ # to 50 and less than 60, specify a lower bound of 0 and an upper
976
+ # bound of 10.
977
+ #
978
+ # * To trigger the adjustment when the metric is greater than 40 and
979
+ # less than or equal to 50, specify a lower bound of -10 and an upper
980
+ # bound of 0.
981
+ #
982
+ # There are a few rules for the step adjustments for your step policy:
983
+ #
984
+ # * The ranges of your step adjustments can't overlap or have a gap.
985
+ #
986
+ # * At most one step adjustment can have a null lower bound. If one step
987
+ # adjustment has a negative lower bound, then there must be a step
988
+ # adjustment with a null lower bound.
989
+ #
990
+ # * At most one step adjustment can have a null upper bound. If one step
991
+ # adjustment has a positive upper bound, then there must be a step
992
+ # adjustment with a null upper bound.
993
+ #
994
+ # * The upper and lower bound can't be null in the same step
995
+ # adjustment.
996
+ #
997
+ # @note When making an API call, you may pass StepAdjustment
998
+ # data as a hash:
999
+ #
1000
+ # {
1001
+ # metric_interval_lower_bound: 1.0,
1002
+ # metric_interval_upper_bound: 1.0,
1003
+ # scaling_adjustment: 1, # required
1004
+ # }
1005
+ #
1006
+ # @!attribute [rw] metric_interval_lower_bound
1007
+ # The lower bound for the difference between the alarm threshold and
1008
+ # the CloudWatch metric. If the metric value is above the breach
1009
+ # threshold, the lower bound is inclusive (the metric must be greater
1010
+ # than or equal to the threshold plus the lower bound). Otherwise, it
1011
+ # is exclusive (the metric must be greater than the threshold plus the
1012
+ # lower bound). A null value indicates negative infinity.
1013
+ # @return [Float]
1014
+ #
1015
+ # @!attribute [rw] metric_interval_upper_bound
1016
+ # The upper bound for the difference between the alarm threshold and
1017
+ # the CloudWatch metric. If the metric value is above the breach
1018
+ # threshold, the upper bound is exclusive (the metric must be less
1019
+ # than the threshold plus the upper bound). Otherwise, it is inclusive
1020
+ # (the metric must be less than or equal to the threshold plus the
1021
+ # upper bound). A null value indicates positive infinity.
1022
+ #
1023
+ # The upper bound must be greater than the lower bound.
1024
+ # @return [Float]
1025
+ #
1026
+ # @!attribute [rw] scaling_adjustment
1027
+ # The amount by which to scale, based on the specified adjustment
1028
+ # type. A positive value adds to the current scalable dimension while
1029
+ # a negative number removes from the current scalable dimension.
1030
+ # @return [Integer]
1031
+ #
1032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/StepAdjustment AWS API Documentation
1033
+ #
1034
+ class StepAdjustment < Struct.new(
1035
+ :metric_interval_lower_bound,
1036
+ :metric_interval_upper_bound,
1037
+ :scaling_adjustment)
1038
+ include Aws::Structure
1039
+ end
988
1040
 
1041
+ # Represents a step scaling policy configuration.
1042
+ #
1043
+ # @note When making an API call, you may pass StepScalingPolicyConfiguration
1044
+ # data as a hash:
1045
+ #
1046
+ # {
1047
+ # adjustment_type: "ChangeInCapacity", # accepts ChangeInCapacity, PercentChangeInCapacity, ExactCapacity
1048
+ # step_adjustments: [
1049
+ # {
1050
+ # metric_interval_lower_bound: 1.0,
1051
+ # metric_interval_upper_bound: 1.0,
1052
+ # scaling_adjustment: 1, # required
1053
+ # },
1054
+ # ],
1055
+ # min_adjustment_magnitude: 1,
1056
+ # cooldown: 1,
1057
+ # metric_aggregation_type: "Average", # accepts Average, Minimum, Maximum
1058
+ # }
1059
+ #
1060
+ # @!attribute [rw] adjustment_type
1061
+ # The adjustment type, which specifies how the `ScalingAdjustment`
1062
+ # parameter in a StepAdjustment is interpreted.
1063
+ # @return [String]
1064
+ #
1065
+ # @!attribute [rw] step_adjustments
1066
+ # A set of adjustments that enable you to scale based on the size of
1067
+ # the alarm breach.
1068
+ # @return [Array<Types::StepAdjustment>]
1069
+ #
1070
+ # @!attribute [rw] min_adjustment_magnitude
1071
+ # The minimum number to adjust your scalable dimension as a result of
1072
+ # a scaling activity. If the adjustment type is
1073
+ # `PercentChangeInCapacity`, the scaling policy changes the scalable
1074
+ # dimension of the scalable target by this amount.
1075
+ # @return [Integer]
1076
+ #
1077
+ # @!attribute [rw] cooldown
1078
+ # The amount of time, in seconds, after a scaling activity completes
1079
+ # where previous trigger-related scaling activities can influence
1080
+ # future scaling events.
1081
+ #
1082
+ # For scale out policies, while `Cooldown` is in effect, the capacity
1083
+ # that has been added by the previous scale out event that initiated
1084
+ # the `Cooldown` is calculated as part of the desired capacity for the
1085
+ # next scale out. The intention is to continuously (but not
1086
+ # excessively) scale out. For example, an alarm triggers a step
1087
+ # scaling policy to scale out an Amazon ECS service by 2 tasks, the
1088
+ # scaling activity completes successfully, and a `Cooldown` period of
1089
+ # 5 minutes starts. During the `Cooldown` period, if the alarm
1090
+ # triggers the same policy again but at a more aggressive step
1091
+ # adjustment to scale out the service by 3 tasks, the 2 tasks that
1092
+ # were added in the previous scale out event are considered part of
1093
+ # that capacity and only 1 additional task is added to the desired
1094
+ # count.
1095
+ #
1096
+ # For scale in policies, the `Cooldown` period is used to block
1097
+ # subsequent scale in requests until it has expired. The intention is
1098
+ # to scale in conservatively to protect your application's
1099
+ # availability. However, if another alarm triggers a scale out policy
1100
+ # during the `Cooldown` period after a scale-in, Application Auto
1101
+ # Scaling scales out your scalable target immediately.
1102
+ # @return [Integer]
1103
+ #
1104
+ # @!attribute [rw] metric_aggregation_type
1105
+ # The aggregation type for the CloudWatch metrics. Valid values are
1106
+ # `Minimum`, `Maximum`, and `Average`.
1107
+ # @return [String]
1108
+ #
1109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/application-autoscaling-2016-02-06/StepScalingPolicyConfiguration AWS API Documentation
1110
+ #
1111
+ class StepScalingPolicyConfiguration < Struct.new(
1112
+ :adjustment_type,
1113
+ :step_adjustments,
1114
+ :min_adjustment_magnitude,
1115
+ :cooldown,
1116
+ :metric_aggregation_type)
1117
+ include Aws::Structure
989
1118
  end
1119
+
990
1120
  end
991
1121
  end