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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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