aws-sdk-autoscalingplans 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ef9c0d53e04090a0fae6a4b453b1c77dbd0c5a80
4
- data.tar.gz: 6a72d46d69458b5ac42227c38f6ae4563ea7f711
3
+ metadata.gz: 4437178f359352c4c76850689d445175bda4301f
4
+ data.tar.gz: 7cc9ac2b2370de2df60993933e624957049ee48d
5
5
  SHA512:
6
- metadata.gz: 77be8d48c0e1a573a51f1e53cbcffc15d03a82f130c8e9144c5e4ca0ef0d58961002d556395fff5af9999825edc2c17d5343892701d93b880391600139f91490
7
- data.tar.gz: 6e5b64c40587f8a234adff2f288038e6ba66ab7bf8df78ecf7b3f2e71109ca7d29415804daa7df6a46f1f5d8f5f4eb38e089915f85b9f798d66da5429f341384
6
+ metadata.gz: 36d0ceb615988ab9c08afc8264441dd268b584af13d6ac105c73a346a4a04f2f4a8343c3914f06a274e090e661e8684b98b81e2505ff06c83313651447e17484
7
+ data.tar.gz: f2bee368dd69e9d0e3726885a873c5501974b0cc45d47c9f0d3509d02acd451f50aca792af2baff5602b3819ea3601bc397d79f7f5ed38b106fa0a4ee3af0b03
@@ -15,6 +15,8 @@ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
15
  require 'aws-sdk-core/plugins/retry_errors.rb'
16
16
  require 'aws-sdk-core/plugins/global_configuration.rb'
17
17
  require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
19
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
18
20
  require 'aws-sdk-core/plugins/response_paging.rb'
19
21
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
22
  require 'aws-sdk-core/plugins/idempotency_token.rb'
@@ -45,6 +47,8 @@ module Aws::AutoScalingPlans
45
47
  add_plugin(Aws::Plugins::RetryErrors)
46
48
  add_plugin(Aws::Plugins::GlobalConfiguration)
47
49
  add_plugin(Aws::Plugins::RegionalEndpoint)
50
+ add_plugin(Aws::Plugins::EndpointDiscovery)
51
+ add_plugin(Aws::Plugins::EndpointPattern)
48
52
  add_plugin(Aws::Plugins::ResponsePaging)
49
53
  add_plugin(Aws::Plugins::StubResponses)
50
54
  add_plugin(Aws::Plugins::IdempotencyToken)
@@ -98,6 +102,10 @@ module Aws::AutoScalingPlans
98
102
  #
99
103
  # @option options [String] :access_key_id
100
104
  #
105
+ # @option options [Boolean] :active_endpoint_cache (false)
106
+ # When set to `true`, a thread polling for endpoints will be running in
107
+ # the background every 60 secs (default). Defaults to `false`.
108
+ #
101
109
  # @option options [Boolean] :client_side_monitoring (false)
102
110
  # When `true`, client-side metrics will be collected for all API requests from
103
111
  # this client.
@@ -118,11 +126,30 @@ module Aws::AutoScalingPlans
118
126
  # When `true`, an attempt is made to coerce request parameters into
119
127
  # the required types.
120
128
  #
129
+ # @option options [Boolean] :disable_host_prefix_injection (false)
130
+ # Set to true to disable SDK automatically adding host prefix
131
+ # to default service endpoint when available.
132
+ #
121
133
  # @option options [String] :endpoint
122
134
  # The client endpoint is normally constructed from the `:region`
123
135
  # option. You should only configure an `:endpoint` when connecting
124
136
  # to test endpoints. This should be avalid HTTP(S) URI.
125
137
  #
138
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
139
+ # Used for the maximum size limit of the LRU cache storing endpoints data
140
+ # for endpoint discovery enabled operations. Defaults to 1000.
141
+ #
142
+ # @option options [Integer] :endpoint_cache_max_threads (10)
143
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
144
+ #
145
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
146
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
147
+ # Use this option to config the time interval in seconds for making
148
+ # requests fetching endpoints information. Defaults to 60 sec.
149
+ #
150
+ # @option options [Boolean] :endpoint_discovery (false)
151
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
152
+ #
126
153
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
127
154
  # The log formatter.
128
155
  #
@@ -190,11 +217,6 @@ module Aws::AutoScalingPlans
190
217
 
191
218
  # Creates a scaling plan.
192
219
  #
193
- # A scaling plan contains a set of instructions used to configure
194
- # dynamic scaling for the scalable resources in your application. AWS
195
- # Auto Scaling creates target tracking scaling policies based on the
196
- # scaling instructions in your scaling plan.
197
- #
198
220
  # @option params [required, String] :scaling_plan_name
199
221
  # The name of the scaling plan. Names cannot contain vertical bars,
200
222
  # colons, or forward slashes.
@@ -255,6 +277,28 @@ module Aws::AutoScalingPlans
255
277
  # estimated_instance_warmup: 1,
256
278
  # },
257
279
  # ],
280
+ # predefined_load_metric_specification: {
281
+ # predefined_load_metric_type: "ASGTotalCPUUtilization", # required, accepts ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, ALBTargetGroupRequestCount
282
+ # resource_label: "ResourceLabel",
283
+ # },
284
+ # customized_load_metric_specification: {
285
+ # metric_name: "MetricName", # required
286
+ # namespace: "MetricNamespace", # required
287
+ # dimensions: [
288
+ # {
289
+ # name: "MetricDimensionName", # required
290
+ # value: "MetricDimensionValue", # required
291
+ # },
292
+ # ],
293
+ # statistic: "Average", # required, accepts Average, Minimum, Maximum, SampleCount, Sum
294
+ # unit: "MetricUnit",
295
+ # },
296
+ # scheduled_action_buffer_time: 1,
297
+ # predictive_scaling_max_capacity_behavior: "SetForecastCapacityToMaxCapacity", # accepts SetForecastCapacityToMaxCapacity, SetMaxCapacityToForecastCapacity, SetMaxCapacityAboveForecastCapacity
298
+ # predictive_scaling_max_capacity_buffer: 1,
299
+ # predictive_scaling_mode: "ForecastAndScale", # accepts ForecastAndScale, ForecastOnly
300
+ # scaling_policy_update_behavior: "KeepExternalPolicies", # accepts KeepExternalPolicies, ReplaceExternalPolicies
301
+ # disable_dynamic_scaling: false,
258
302
  # },
259
303
  # ],
260
304
  # })
@@ -274,11 +318,17 @@ module Aws::AutoScalingPlans
274
318
 
275
319
  # Deletes the specified scaling plan.
276
320
  #
321
+ # Deleting a scaling plan deletes the underlying ScalingInstruction for
322
+ # all of the scalable resources that are covered by the plan.
323
+ #
324
+ # If the plan has launched resources or has scaling activities in
325
+ # progress, you must delete those resources separately.
326
+ #
277
327
  # @option params [required, String] :scaling_plan_name
278
328
  # The name of the scaling plan.
279
329
  #
280
330
  # @option params [required, Integer] :scaling_plan_version
281
- # The version of the scaling plan.
331
+ # The version number of the scaling plan.
282
332
  #
283
333
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
284
334
  #
@@ -304,10 +354,10 @@ module Aws::AutoScalingPlans
304
354
  # The name of the scaling plan.
305
355
  #
306
356
  # @option params [required, Integer] :scaling_plan_version
307
- # The version of the scaling plan.
357
+ # The version number of the scaling plan.
308
358
  #
309
359
  # @option params [Integer] :max_results
310
- # The maximum number of scalable resources to return. This value can be
360
+ # The maximum number of scalable resources to return. The value must be
311
361
  # between 1 and 50. The default value is 50.
312
362
  #
313
363
  # @option params [String] :next_token
@@ -365,14 +415,14 @@ module Aws::AutoScalingPlans
365
415
  req.send_request(options)
366
416
  end
367
417
 
368
- # Describes the specified scaling plans or all of your scaling plans.
418
+ # Describes one or more of your scaling plans.
369
419
  #
370
420
  # @option params [Array<String>] :scaling_plan_names
371
421
  # The names of the scaling plans (up to 10). If you specify application
372
422
  # sources, you cannot specify scaling plan names.
373
423
  #
374
424
  # @option params [Integer] :scaling_plan_version
375
- # The version of the scaling plan. If you specify a scaling plan
425
+ # The version number of the scaling plan. If you specify a scaling plan
376
426
  # version, you must also specify a scaling plan name.
377
427
  #
378
428
  # @option params [Array<Types::ApplicationSource>] :application_sources
@@ -442,6 +492,21 @@ module Aws::AutoScalingPlans
442
492
  # resp.scaling_plans[0].scaling_instructions[0].target_tracking_configurations[0].scale_out_cooldown #=> Integer
443
493
  # resp.scaling_plans[0].scaling_instructions[0].target_tracking_configurations[0].scale_in_cooldown #=> Integer
444
494
  # resp.scaling_plans[0].scaling_instructions[0].target_tracking_configurations[0].estimated_instance_warmup #=> Integer
495
+ # resp.scaling_plans[0].scaling_instructions[0].predefined_load_metric_specification.predefined_load_metric_type #=> String, one of "ASGTotalCPUUtilization", "ASGTotalNetworkIn", "ASGTotalNetworkOut", "ALBTargetGroupRequestCount"
496
+ # resp.scaling_plans[0].scaling_instructions[0].predefined_load_metric_specification.resource_label #=> String
497
+ # resp.scaling_plans[0].scaling_instructions[0].customized_load_metric_specification.metric_name #=> String
498
+ # resp.scaling_plans[0].scaling_instructions[0].customized_load_metric_specification.namespace #=> String
499
+ # resp.scaling_plans[0].scaling_instructions[0].customized_load_metric_specification.dimensions #=> Array
500
+ # resp.scaling_plans[0].scaling_instructions[0].customized_load_metric_specification.dimensions[0].name #=> String
501
+ # resp.scaling_plans[0].scaling_instructions[0].customized_load_metric_specification.dimensions[0].value #=> String
502
+ # resp.scaling_plans[0].scaling_instructions[0].customized_load_metric_specification.statistic #=> String, one of "Average", "Minimum", "Maximum", "SampleCount", "Sum"
503
+ # resp.scaling_plans[0].scaling_instructions[0].customized_load_metric_specification.unit #=> String
504
+ # resp.scaling_plans[0].scaling_instructions[0].scheduled_action_buffer_time #=> Integer
505
+ # resp.scaling_plans[0].scaling_instructions[0].predictive_scaling_max_capacity_behavior #=> String, one of "SetForecastCapacityToMaxCapacity", "SetMaxCapacityToForecastCapacity", "SetMaxCapacityAboveForecastCapacity"
506
+ # resp.scaling_plans[0].scaling_instructions[0].predictive_scaling_max_capacity_buffer #=> Integer
507
+ # resp.scaling_plans[0].scaling_instructions[0].predictive_scaling_mode #=> String, one of "ForecastAndScale", "ForecastOnly"
508
+ # resp.scaling_plans[0].scaling_instructions[0].scaling_policy_update_behavior #=> String, one of "KeepExternalPolicies", "ReplaceExternalPolicies"
509
+ # resp.scaling_plans[0].scaling_instructions[0].disable_dynamic_scaling #=> Boolean
445
510
  # resp.scaling_plans[0].status_code #=> String, one of "Active", "ActiveWithProblems", "CreationInProgress", "CreationFailed", "DeletionInProgress", "DeletionFailed", "UpdateInProgress", "UpdateFailed"
446
511
  # resp.scaling_plans[0].status_message #=> String
447
512
  # resp.scaling_plans[0].status_start_time #=> Time
@@ -457,28 +522,139 @@ module Aws::AutoScalingPlans
457
522
  req.send_request(options)
458
523
  end
459
524
 
460
- # Updates the scaling plan for the specified scaling plan.
525
+ # Retrieves the forecast data for a scalable resource.
526
+ #
527
+ # Capacity forecasts are represented as predicted values, or data
528
+ # points, that are calculated using historical data points from a
529
+ # specified CloudWatch load metric. Data points are available for up to
530
+ # 56 days.
531
+ #
532
+ # @option params [required, String] :scaling_plan_name
533
+ # The name of the scaling plan.
534
+ #
535
+ # @option params [required, Integer] :scaling_plan_version
536
+ # The version number of the scaling plan.
537
+ #
538
+ # @option params [required, String] :service_namespace
539
+ # The namespace of the AWS service.
540
+ #
541
+ # @option params [required, String] :resource_id
542
+ # The ID of the resource. This string consists of the resource type and
543
+ # unique identifier.
544
+ #
545
+ # * Auto Scaling group - The resource type is `autoScalingGroup` and the
546
+ # unique identifier is the name of the Auto Scaling group. Example:
547
+ # `autoScalingGroup/my-asg`.
548
+ #
549
+ # * ECS service - The resource type is `service` and the unique
550
+ # identifier is the cluster name and service name. Example:
551
+ # `service/default/sample-webapp`.
552
+ #
553
+ # * Spot Fleet request - The resource type is `spot-fleet-request` and
554
+ # the unique identifier is the Spot Fleet request ID. Example:
555
+ # `spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE`.
556
+ #
557
+ # * DynamoDB table - The resource type is `table` and the unique
558
+ # identifier is the resource ID. Example: `table/my-table`.
559
+ #
560
+ # * DynamoDB global secondary index - The resource type is `index` and
561
+ # the unique identifier is the resource ID. Example:
562
+ # `table/my-table/index/my-table-index`.
563
+ #
564
+ # * Aurora DB cluster - The resource type is `cluster` and the unique
565
+ # identifier is the cluster name. Example: `cluster:my-db-cluster`.
566
+ #
567
+ # @option params [required, String] :scalable_dimension
568
+ # The scalable dimension for the resource.
569
+ #
570
+ # @option params [required, String] :forecast_data_type
571
+ # The type of forecast data to get.
572
+ #
573
+ # * `LoadForecast`\: The load metric forecast.
574
+ #
575
+ # * `CapacityForecast`\: The capacity forecast.
576
+ #
577
+ # * `ScheduledActionMinCapacity`\: The minimum capacity for each
578
+ # scheduled scaling action. This data is calculated as the larger of
579
+ # two values: the capacity forecast or the minimum capacity in the
580
+ # scaling instruction.
581
+ #
582
+ # * `ScheduledActionMaxCapacity`\: The maximum capacity for each
583
+ # scheduled scaling action. The calculation used is determined by the
584
+ # predictive scaling maximum capacity behavior setting in the scaling
585
+ # instruction.
586
+ #
587
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
588
+ # The inclusive start time of the time range for the forecast data to
589
+ # get. The date and time can be at most 56 days before the current date
590
+ # and time.
591
+ #
592
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
593
+ # The exclusive end time of the time range for the forecast data to get.
594
+ # The maximum time duration between the start and end time is seven
595
+ # days.
596
+ #
597
+ # Although this parameter can accept a date and time that is more than
598
+ # two days in the future, the availability of forecast data has limits.
599
+ # AWS Auto Scaling only issues forecasts for periods of two days in
600
+ # advance.
601
+ #
602
+ # @return [Types::GetScalingPlanResourceForecastDataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
603
+ #
604
+ # * {Types::GetScalingPlanResourceForecastDataResponse#datapoints #datapoints} => Array&lt;Types::Datapoint&gt;
605
+ #
606
+ # @example Request syntax with placeholder values
607
+ #
608
+ # resp = client.get_scaling_plan_resource_forecast_data({
609
+ # scaling_plan_name: "ScalingPlanName", # required
610
+ # scaling_plan_version: 1, # required
611
+ # service_namespace: "autoscaling", # required, accepts autoscaling, ecs, ec2, rds, dynamodb
612
+ # resource_id: "XmlString", # required
613
+ # scalable_dimension: "autoscaling:autoScalingGroup:DesiredCapacity", # required, accepts autoscaling:autoScalingGroup:DesiredCapacity, ecs:service:DesiredCount, ec2:spot-fleet-request:TargetCapacity, rds:cluster:ReadReplicaCount, dynamodb:table:ReadCapacityUnits, dynamodb:table:WriteCapacityUnits, dynamodb:index:ReadCapacityUnits, dynamodb:index:WriteCapacityUnits
614
+ # forecast_data_type: "CapacityForecast", # required, accepts CapacityForecast, LoadForecast, ScheduledActionMinCapacity, ScheduledActionMaxCapacity
615
+ # start_time: Time.now, # required
616
+ # end_time: Time.now, # required
617
+ # })
618
+ #
619
+ # @example Response structure
620
+ #
621
+ # resp.datapoints #=> Array
622
+ # resp.datapoints[0].timestamp #=> Time
623
+ # resp.datapoints[0].value #=> Float
624
+ #
625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-plans-2018-01-06/GetScalingPlanResourceForecastData AWS API Documentation
626
+ #
627
+ # @overload get_scaling_plan_resource_forecast_data(params = {})
628
+ # @param [Hash] params ({})
629
+ def get_scaling_plan_resource_forecast_data(params = {}, options = {})
630
+ req = build_request(:get_scaling_plan_resource_forecast_data, params)
631
+ req.send_request(options)
632
+ end
633
+
634
+ # Updates the specified scaling plan.
461
635
  #
462
636
  # You cannot update a scaling plan if it is in the process of being
463
637
  # created, updated, or deleted.
464
638
  #
465
- # @option params [Types::ApplicationSource] :application_source
466
- # A CloudFormation stack or set of tags.
467
- #
468
639
  # @option params [required, String] :scaling_plan_name
469
640
  # The name of the scaling plan.
470
641
  #
642
+ # @option params [required, Integer] :scaling_plan_version
643
+ # The version number of the scaling plan.
644
+ #
645
+ # @option params [Types::ApplicationSource] :application_source
646
+ # A CloudFormation stack or set of tags.
647
+ #
471
648
  # @option params [Array<Types::ScalingInstruction>] :scaling_instructions
472
649
  # The scaling instructions.
473
650
  #
474
- # @option params [required, Integer] :scaling_plan_version
475
- # The version number.
476
- #
477
651
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
478
652
  #
479
653
  # @example Request syntax with placeholder values
480
654
  #
481
655
  # resp = client.update_scaling_plan({
656
+ # scaling_plan_name: "ScalingPlanName", # required
657
+ # scaling_plan_version: 1, # required
482
658
  # application_source: {
483
659
  # cloud_formation_stack_arn: "XmlString",
484
660
  # tag_filters: [
@@ -488,7 +664,6 @@ module Aws::AutoScalingPlans
488
664
  # },
489
665
  # ],
490
666
  # },
491
- # scaling_plan_name: "ScalingPlanName", # required
492
667
  # scaling_instructions: [
493
668
  # {
494
669
  # service_namespace: "autoscaling", # required, accepts autoscaling, ecs, ec2, rds, dynamodb
@@ -521,9 +696,30 @@ module Aws::AutoScalingPlans
521
696
  # estimated_instance_warmup: 1,
522
697
  # },
523
698
  # ],
699
+ # predefined_load_metric_specification: {
700
+ # predefined_load_metric_type: "ASGTotalCPUUtilization", # required, accepts ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, ALBTargetGroupRequestCount
701
+ # resource_label: "ResourceLabel",
702
+ # },
703
+ # customized_load_metric_specification: {
704
+ # metric_name: "MetricName", # required
705
+ # namespace: "MetricNamespace", # required
706
+ # dimensions: [
707
+ # {
708
+ # name: "MetricDimensionName", # required
709
+ # value: "MetricDimensionValue", # required
710
+ # },
711
+ # ],
712
+ # statistic: "Average", # required, accepts Average, Minimum, Maximum, SampleCount, Sum
713
+ # unit: "MetricUnit",
714
+ # },
715
+ # scheduled_action_buffer_time: 1,
716
+ # predictive_scaling_max_capacity_behavior: "SetForecastCapacityToMaxCapacity", # accepts SetForecastCapacityToMaxCapacity, SetMaxCapacityToForecastCapacity, SetMaxCapacityAboveForecastCapacity
717
+ # predictive_scaling_max_capacity_buffer: 1,
718
+ # predictive_scaling_mode: "ForecastAndScale", # accepts ForecastAndScale, ForecastOnly
719
+ # scaling_policy_update_behavior: "KeepExternalPolicies", # accepts KeepExternalPolicies, ReplaceExternalPolicies
720
+ # disable_dynamic_scaling: false,
524
721
  # },
525
722
  # ],
526
- # scaling_plan_version: 1, # required
527
723
  # })
528
724
  #
529
725
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-plans-2018-01-06/UpdateScalingPlan AWS API Documentation
@@ -548,7 +744,7 @@ module Aws::AutoScalingPlans
548
744
  params: params,
549
745
  config: config)
550
746
  context[:gem_name] = 'aws-sdk-autoscalingplans'
551
- context[:gem_version] = '1.7.0'
747
+ context[:gem_version] = '1.8.0'
552
748
  Seahorse::Client::Request.new(handlers, context)
553
749
  end
554
750
 
@@ -17,18 +17,26 @@ module Aws::AutoScalingPlans
17
17
  Cooldown = Shapes::IntegerShape.new(name: 'Cooldown')
18
18
  CreateScalingPlanRequest = Shapes::StructureShape.new(name: 'CreateScalingPlanRequest')
19
19
  CreateScalingPlanResponse = Shapes::StructureShape.new(name: 'CreateScalingPlanResponse')
20
+ CustomizedLoadMetricSpecification = Shapes::StructureShape.new(name: 'CustomizedLoadMetricSpecification')
20
21
  CustomizedScalingMetricSpecification = Shapes::StructureShape.new(name: 'CustomizedScalingMetricSpecification')
22
+ Datapoint = Shapes::StructureShape.new(name: 'Datapoint')
23
+ Datapoints = Shapes::ListShape.new(name: 'Datapoints')
21
24
  DeleteScalingPlanRequest = Shapes::StructureShape.new(name: 'DeleteScalingPlanRequest')
22
25
  DeleteScalingPlanResponse = Shapes::StructureShape.new(name: 'DeleteScalingPlanResponse')
23
26
  DescribeScalingPlanResourcesRequest = Shapes::StructureShape.new(name: 'DescribeScalingPlanResourcesRequest')
24
27
  DescribeScalingPlanResourcesResponse = Shapes::StructureShape.new(name: 'DescribeScalingPlanResourcesResponse')
25
28
  DescribeScalingPlansRequest = Shapes::StructureShape.new(name: 'DescribeScalingPlansRequest')
26
29
  DescribeScalingPlansResponse = Shapes::StructureShape.new(name: 'DescribeScalingPlansResponse')
30
+ DisableDynamicScaling = Shapes::BooleanShape.new(name: 'DisableDynamicScaling')
27
31
  DisableScaleIn = Shapes::BooleanShape.new(name: 'DisableScaleIn')
28
32
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
33
+ ForecastDataType = Shapes::StringShape.new(name: 'ForecastDataType')
34
+ GetScalingPlanResourceForecastDataRequest = Shapes::StructureShape.new(name: 'GetScalingPlanResourceForecastDataRequest')
35
+ GetScalingPlanResourceForecastDataResponse = Shapes::StructureShape.new(name: 'GetScalingPlanResourceForecastDataResponse')
29
36
  InternalServiceException = Shapes::StructureShape.new(name: 'InternalServiceException')
30
37
  InvalidNextTokenException = Shapes::StructureShape.new(name: 'InvalidNextTokenException')
31
38
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
39
+ LoadMetricType = Shapes::StringShape.new(name: 'LoadMetricType')
32
40
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
33
41
  MetricDimension = Shapes::StructureShape.new(name: 'MetricDimension')
34
42
  MetricDimensionName = Shapes::StringShape.new(name: 'MetricDimensionName')
@@ -43,7 +51,10 @@ module Aws::AutoScalingPlans
43
51
  ObjectNotFoundException = Shapes::StructureShape.new(name: 'ObjectNotFoundException')
44
52
  PolicyName = Shapes::StringShape.new(name: 'PolicyName')
45
53
  PolicyType = Shapes::StringShape.new(name: 'PolicyType')
54
+ PredefinedLoadMetricSpecification = Shapes::StructureShape.new(name: 'PredefinedLoadMetricSpecification')
46
55
  PredefinedScalingMetricSpecification = Shapes::StructureShape.new(name: 'PredefinedScalingMetricSpecification')
56
+ PredictiveScalingMaxCapacityBehavior = Shapes::StringShape.new(name: 'PredictiveScalingMaxCapacityBehavior')
57
+ PredictiveScalingMode = Shapes::StringShape.new(name: 'PredictiveScalingMode')
47
58
  ResourceCapacity = Shapes::IntegerShape.new(name: 'ResourceCapacity')
48
59
  ResourceIdMaxLen1600 = Shapes::StringShape.new(name: 'ResourceIdMaxLen1600')
49
60
  ResourceLabel = Shapes::StringShape.new(name: 'ResourceLabel')
@@ -61,7 +72,9 @@ module Aws::AutoScalingPlans
61
72
  ScalingPlans = Shapes::ListShape.new(name: 'ScalingPlans')
62
73
  ScalingPolicies = Shapes::ListShape.new(name: 'ScalingPolicies')
63
74
  ScalingPolicy = Shapes::StructureShape.new(name: 'ScalingPolicy')
75
+ ScalingPolicyUpdateBehavior = Shapes::StringShape.new(name: 'ScalingPolicyUpdateBehavior')
64
76
  ScalingStatusCode = Shapes::StringShape.new(name: 'ScalingStatusCode')
77
+ ScheduledActionBufferTime = Shapes::IntegerShape.new(name: 'ScheduledActionBufferTime')
65
78
  ServiceNamespace = Shapes::StringShape.new(name: 'ServiceNamespace')
66
79
  TagFilter = Shapes::StructureShape.new(name: 'TagFilter')
67
80
  TagFilters = Shapes::ListShape.new(name: 'TagFilters')
@@ -90,6 +103,13 @@ module Aws::AutoScalingPlans
90
103
  CreateScalingPlanResponse.add_member(:scaling_plan_version, Shapes::ShapeRef.new(shape: ScalingPlanVersion, required: true, location_name: "ScalingPlanVersion"))
91
104
  CreateScalingPlanResponse.struct_class = Types::CreateScalingPlanResponse
92
105
 
106
+ CustomizedLoadMetricSpecification.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location_name: "MetricName"))
107
+ CustomizedLoadMetricSpecification.add_member(:namespace, Shapes::ShapeRef.new(shape: MetricNamespace, required: true, location_name: "Namespace"))
108
+ CustomizedLoadMetricSpecification.add_member(:dimensions, Shapes::ShapeRef.new(shape: MetricDimensions, location_name: "Dimensions"))
109
+ CustomizedLoadMetricSpecification.add_member(:statistic, Shapes::ShapeRef.new(shape: MetricStatistic, required: true, location_name: "Statistic"))
110
+ CustomizedLoadMetricSpecification.add_member(:unit, Shapes::ShapeRef.new(shape: MetricUnit, location_name: "Unit"))
111
+ CustomizedLoadMetricSpecification.struct_class = Types::CustomizedLoadMetricSpecification
112
+
93
113
  CustomizedScalingMetricSpecification.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location_name: "MetricName"))
94
114
  CustomizedScalingMetricSpecification.add_member(:namespace, Shapes::ShapeRef.new(shape: MetricNamespace, required: true, location_name: "Namespace"))
95
115
  CustomizedScalingMetricSpecification.add_member(:dimensions, Shapes::ShapeRef.new(shape: MetricDimensions, location_name: "Dimensions"))
@@ -97,6 +117,12 @@ module Aws::AutoScalingPlans
97
117
  CustomizedScalingMetricSpecification.add_member(:unit, Shapes::ShapeRef.new(shape: MetricUnit, location_name: "Unit"))
98
118
  CustomizedScalingMetricSpecification.struct_class = Types::CustomizedScalingMetricSpecification
99
119
 
120
+ Datapoint.add_member(:timestamp, Shapes::ShapeRef.new(shape: TimestampType, location_name: "Timestamp"))
121
+ Datapoint.add_member(:value, Shapes::ShapeRef.new(shape: MetricScale, location_name: "Value"))
122
+ Datapoint.struct_class = Types::Datapoint
123
+
124
+ Datapoints.member = Shapes::ShapeRef.new(shape: Datapoint)
125
+
100
126
  DeleteScalingPlanRequest.add_member(:scaling_plan_name, Shapes::ShapeRef.new(shape: ScalingPlanName, required: true, location_name: "ScalingPlanName"))
101
127
  DeleteScalingPlanRequest.add_member(:scaling_plan_version, Shapes::ShapeRef.new(shape: ScalingPlanVersion, required: true, location_name: "ScalingPlanVersion"))
102
128
  DeleteScalingPlanRequest.struct_class = Types::DeleteScalingPlanRequest
@@ -124,12 +150,29 @@ module Aws::AutoScalingPlans
124
150
  DescribeScalingPlansResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
125
151
  DescribeScalingPlansResponse.struct_class = Types::DescribeScalingPlansResponse
126
152
 
153
+ GetScalingPlanResourceForecastDataRequest.add_member(:scaling_plan_name, Shapes::ShapeRef.new(shape: ScalingPlanName, required: true, location_name: "ScalingPlanName"))
154
+ GetScalingPlanResourceForecastDataRequest.add_member(:scaling_plan_version, Shapes::ShapeRef.new(shape: ScalingPlanVersion, required: true, location_name: "ScalingPlanVersion"))
155
+ GetScalingPlanResourceForecastDataRequest.add_member(:service_namespace, Shapes::ShapeRef.new(shape: ServiceNamespace, required: true, location_name: "ServiceNamespace"))
156
+ GetScalingPlanResourceForecastDataRequest.add_member(:resource_id, Shapes::ShapeRef.new(shape: XmlString, required: true, location_name: "ResourceId"))
157
+ GetScalingPlanResourceForecastDataRequest.add_member(:scalable_dimension, Shapes::ShapeRef.new(shape: ScalableDimension, required: true, location_name: "ScalableDimension"))
158
+ GetScalingPlanResourceForecastDataRequest.add_member(:forecast_data_type, Shapes::ShapeRef.new(shape: ForecastDataType, required: true, location_name: "ForecastDataType"))
159
+ GetScalingPlanResourceForecastDataRequest.add_member(:start_time, Shapes::ShapeRef.new(shape: TimestampType, required: true, location_name: "StartTime"))
160
+ GetScalingPlanResourceForecastDataRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: TimestampType, required: true, location_name: "EndTime"))
161
+ GetScalingPlanResourceForecastDataRequest.struct_class = Types::GetScalingPlanResourceForecastDataRequest
162
+
163
+ GetScalingPlanResourceForecastDataResponse.add_member(:datapoints, Shapes::ShapeRef.new(shape: Datapoints, required: true, location_name: "Datapoints"))
164
+ GetScalingPlanResourceForecastDataResponse.struct_class = Types::GetScalingPlanResourceForecastDataResponse
165
+
127
166
  MetricDimension.add_member(:name, Shapes::ShapeRef.new(shape: MetricDimensionName, required: true, location_name: "Name"))
128
167
  MetricDimension.add_member(:value, Shapes::ShapeRef.new(shape: MetricDimensionValue, required: true, location_name: "Value"))
129
168
  MetricDimension.struct_class = Types::MetricDimension
130
169
 
131
170
  MetricDimensions.member = Shapes::ShapeRef.new(shape: MetricDimension)
132
171
 
172
+ PredefinedLoadMetricSpecification.add_member(:predefined_load_metric_type, Shapes::ShapeRef.new(shape: LoadMetricType, required: true, location_name: "PredefinedLoadMetricType"))
173
+ PredefinedLoadMetricSpecification.add_member(:resource_label, Shapes::ShapeRef.new(shape: ResourceLabel, location_name: "ResourceLabel"))
174
+ PredefinedLoadMetricSpecification.struct_class = Types::PredefinedLoadMetricSpecification
175
+
133
176
  PredefinedScalingMetricSpecification.add_member(:predefined_scaling_metric_type, Shapes::ShapeRef.new(shape: ScalingMetricType, required: true, location_name: "PredefinedScalingMetricType"))
134
177
  PredefinedScalingMetricSpecification.add_member(:resource_label, Shapes::ShapeRef.new(shape: ResourceLabel, location_name: "ResourceLabel"))
135
178
  PredefinedScalingMetricSpecification.struct_class = Types::PredefinedScalingMetricSpecification
@@ -140,6 +183,14 @@ module Aws::AutoScalingPlans
140
183
  ScalingInstruction.add_member(:min_capacity, Shapes::ShapeRef.new(shape: ResourceCapacity, required: true, location_name: "MinCapacity"))
141
184
  ScalingInstruction.add_member(:max_capacity, Shapes::ShapeRef.new(shape: ResourceCapacity, required: true, location_name: "MaxCapacity"))
142
185
  ScalingInstruction.add_member(:target_tracking_configurations, Shapes::ShapeRef.new(shape: TargetTrackingConfigurations, required: true, location_name: "TargetTrackingConfigurations"))
186
+ ScalingInstruction.add_member(:predefined_load_metric_specification, Shapes::ShapeRef.new(shape: PredefinedLoadMetricSpecification, location_name: "PredefinedLoadMetricSpecification"))
187
+ ScalingInstruction.add_member(:customized_load_metric_specification, Shapes::ShapeRef.new(shape: CustomizedLoadMetricSpecification, location_name: "CustomizedLoadMetricSpecification"))
188
+ ScalingInstruction.add_member(:scheduled_action_buffer_time, Shapes::ShapeRef.new(shape: ScheduledActionBufferTime, location_name: "ScheduledActionBufferTime"))
189
+ ScalingInstruction.add_member(:predictive_scaling_max_capacity_behavior, Shapes::ShapeRef.new(shape: PredictiveScalingMaxCapacityBehavior, location_name: "PredictiveScalingMaxCapacityBehavior"))
190
+ ScalingInstruction.add_member(:predictive_scaling_max_capacity_buffer, Shapes::ShapeRef.new(shape: ResourceCapacity, location_name: "PredictiveScalingMaxCapacityBuffer"))
191
+ ScalingInstruction.add_member(:predictive_scaling_mode, Shapes::ShapeRef.new(shape: PredictiveScalingMode, location_name: "PredictiveScalingMode"))
192
+ ScalingInstruction.add_member(:scaling_policy_update_behavior, Shapes::ShapeRef.new(shape: ScalingPolicyUpdateBehavior, location_name: "ScalingPolicyUpdateBehavior"))
193
+ ScalingInstruction.add_member(:disable_dynamic_scaling, Shapes::ShapeRef.new(shape: DisableDynamicScaling, location_name: "DisableDynamicScaling"))
143
194
  ScalingInstruction.struct_class = Types::ScalingInstruction
144
195
 
145
196
  ScalingInstructions.member = Shapes::ShapeRef.new(shape: ScalingInstruction)
@@ -196,10 +247,10 @@ module Aws::AutoScalingPlans
196
247
 
197
248
  TargetTrackingConfigurations.member = Shapes::ShapeRef.new(shape: TargetTrackingConfiguration)
198
249
 
199
- UpdateScalingPlanRequest.add_member(:application_source, Shapes::ShapeRef.new(shape: ApplicationSource, location_name: "ApplicationSource"))
200
250
  UpdateScalingPlanRequest.add_member(:scaling_plan_name, Shapes::ShapeRef.new(shape: ScalingPlanName, required: true, location_name: "ScalingPlanName"))
201
- UpdateScalingPlanRequest.add_member(:scaling_instructions, Shapes::ShapeRef.new(shape: ScalingInstructions, location_name: "ScalingInstructions"))
202
251
  UpdateScalingPlanRequest.add_member(:scaling_plan_version, Shapes::ShapeRef.new(shape: ScalingPlanVersion, required: true, location_name: "ScalingPlanVersion"))
252
+ UpdateScalingPlanRequest.add_member(:application_source, Shapes::ShapeRef.new(shape: ApplicationSource, location_name: "ApplicationSource"))
253
+ UpdateScalingPlanRequest.add_member(:scaling_instructions, Shapes::ShapeRef.new(shape: ScalingInstructions, location_name: "ScalingInstructions"))
203
254
  UpdateScalingPlanRequest.struct_class = Types::UpdateScalingPlanRequest
204
255
 
205
256
  UpdateScalingPlanResponse.struct_class = Types::UpdateScalingPlanResponse
@@ -271,6 +322,16 @@ module Aws::AutoScalingPlans
271
322
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
272
323
  end)
273
324
 
325
+ api.add_operation(:get_scaling_plan_resource_forecast_data, Seahorse::Model::Operation.new.tap do |o|
326
+ o.name = "GetScalingPlanResourceForecastData"
327
+ o.http_method = "POST"
328
+ o.http_request_uri = "/"
329
+ o.input = Shapes::ShapeRef.new(shape: GetScalingPlanResourceForecastDataRequest)
330
+ o.output = Shapes::ShapeRef.new(shape: GetScalingPlanResourceForecastDataResponse)
331
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
332
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
333
+ end)
334
+
274
335
  api.add_operation(:update_scaling_plan, Seahorse::Model::Operation.new.tap do |o|
275
336
  o.name = "UpdateScalingPlan"
276
337
  o.http_method = "POST"