aws-sdk-autoscalingplans 1.7.0 → 1.8.0

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.
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"