aws-sdk-computeoptimizer 1.56.0 → 1.58.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.
@@ -18,6 +18,7 @@ module Aws::ComputeOptimizer
18
18
  AccountEnrollmentStatuses = Shapes::ListShape.new(name: 'AccountEnrollmentStatuses')
19
19
  AccountId = Shapes::StringShape.new(name: 'AccountId')
20
20
  AccountIds = Shapes::ListShape.new(name: 'AccountIds')
21
+ AllocatedStorage = Shapes::IntegerShape.new(name: 'AllocatedStorage')
21
22
  AutoScalingConfiguration = Shapes::StringShape.new(name: 'AutoScalingConfiguration')
22
23
  AutoScalingGroupArn = Shapes::StringShape.new(name: 'AutoScalingGroupArn')
23
24
  AutoScalingGroupArns = Shapes::ListShape.new(name: 'AutoScalingGroupArns')
@@ -40,6 +41,7 @@ module Aws::ComputeOptimizer
40
41
  CpuVendorArchitectures = Shapes::ListShape.new(name: 'CpuVendorArchitectures')
41
42
  CreationTimestamp = Shapes::TimestampShape.new(name: 'CreationTimestamp')
42
43
  Currency = Shapes::StringShape.new(name: 'Currency')
44
+ CurrentDBInstanceClass = Shapes::StringShape.new(name: 'CurrentDBInstanceClass')
43
45
  CurrentInstanceType = Shapes::StringShape.new(name: 'CurrentInstanceType')
44
46
  CurrentPerformanceRisk = Shapes::StringShape.new(name: 'CurrentPerformanceRisk')
45
47
  CurrentPerformanceRiskRatings = Shapes::StructureShape.new(name: 'CurrentPerformanceRiskRatings')
@@ -47,6 +49,8 @@ module Aws::ComputeOptimizer
47
49
  CustomizableMetricName = Shapes::StringShape.new(name: 'CustomizableMetricName')
48
50
  CustomizableMetricParameters = Shapes::StructureShape.new(name: 'CustomizableMetricParameters')
49
51
  CustomizableMetricThreshold = Shapes::StringShape.new(name: 'CustomizableMetricThreshold')
52
+ DBInstanceClass = Shapes::StringShape.new(name: 'DBInstanceClass')
53
+ DBStorageConfiguration = Shapes::StructureShape.new(name: 'DBStorageConfiguration')
50
54
  DeleteRecommendationPreferencesRequest = Shapes::StructureShape.new(name: 'DeleteRecommendationPreferencesRequest')
51
55
  DeleteRecommendationPreferencesResponse = Shapes::StructureShape.new(name: 'DeleteRecommendationPreferencesResponse')
52
56
  DescribeRecommendationExportJobsRequest = Shapes::StructureShape.new(name: 'DescribeRecommendationExportJobsRequest')
@@ -96,6 +100,8 @@ module Aws::ComputeOptimizer
96
100
  EffectivePreferredResource = Shapes::StructureShape.new(name: 'EffectivePreferredResource')
97
101
  EffectivePreferredResources = Shapes::ListShape.new(name: 'EffectivePreferredResources')
98
102
  EffectiveRecommendationPreferences = Shapes::StructureShape.new(name: 'EffectiveRecommendationPreferences')
103
+ Engine = Shapes::StringShape.new(name: 'Engine')
104
+ EngineVersion = Shapes::StringShape.new(name: 'EngineVersion')
99
105
  EnhancedInfrastructureMetrics = Shapes::StringShape.new(name: 'EnhancedInfrastructureMetrics')
100
106
  EnrollmentFilter = Shapes::StructureShape.new(name: 'EnrollmentFilter')
101
107
  EnrollmentFilterName = Shapes::StringShape.new(name: 'EnrollmentFilterName')
@@ -115,6 +121,8 @@ module Aws::ComputeOptimizer
115
121
  ExportLambdaFunctionRecommendationsResponse = Shapes::StructureShape.new(name: 'ExportLambdaFunctionRecommendationsResponse')
116
122
  ExportLicenseRecommendationsRequest = Shapes::StructureShape.new(name: 'ExportLicenseRecommendationsRequest')
117
123
  ExportLicenseRecommendationsResponse = Shapes::StructureShape.new(name: 'ExportLicenseRecommendationsResponse')
124
+ ExportRDSDatabaseRecommendationsRequest = Shapes::StructureShape.new(name: 'ExportRDSDatabaseRecommendationsRequest')
125
+ ExportRDSDatabaseRecommendationsResponse = Shapes::StructureShape.new(name: 'ExportRDSDatabaseRecommendationsResponse')
118
126
  ExportableAutoScalingGroupField = Shapes::StringShape.new(name: 'ExportableAutoScalingGroupField')
119
127
  ExportableAutoScalingGroupFields = Shapes::ListShape.new(name: 'ExportableAutoScalingGroupFields')
120
128
  ExportableECSServiceField = Shapes::StringShape.new(name: 'ExportableECSServiceField')
@@ -125,6 +133,8 @@ module Aws::ComputeOptimizer
125
133
  ExportableLambdaFunctionFields = Shapes::ListShape.new(name: 'ExportableLambdaFunctionFields')
126
134
  ExportableLicenseField = Shapes::StringShape.new(name: 'ExportableLicenseField')
127
135
  ExportableLicenseFields = Shapes::ListShape.new(name: 'ExportableLicenseFields')
136
+ ExportableRDSDBField = Shapes::StringShape.new(name: 'ExportableRDSDBField')
137
+ ExportableRDSDBFields = Shapes::ListShape.new(name: 'ExportableRDSDBFields')
128
138
  ExportableVolumeField = Shapes::StringShape.new(name: 'ExportableVolumeField')
129
139
  ExportableVolumeFields = Shapes::ListShape.new(name: 'ExportableVolumeFields')
130
140
  ExternalMetricStatus = Shapes::StructureShape.new(name: 'ExternalMetricStatus')
@@ -166,6 +176,10 @@ module Aws::ComputeOptimizer
166
176
  GetLambdaFunctionRecommendationsResponse = Shapes::StructureShape.new(name: 'GetLambdaFunctionRecommendationsResponse')
167
177
  GetLicenseRecommendationsRequest = Shapes::StructureShape.new(name: 'GetLicenseRecommendationsRequest')
168
178
  GetLicenseRecommendationsResponse = Shapes::StructureShape.new(name: 'GetLicenseRecommendationsResponse')
179
+ GetRDSDatabaseRecommendationProjectedMetricsRequest = Shapes::StructureShape.new(name: 'GetRDSDatabaseRecommendationProjectedMetricsRequest')
180
+ GetRDSDatabaseRecommendationProjectedMetricsResponse = Shapes::StructureShape.new(name: 'GetRDSDatabaseRecommendationProjectedMetricsResponse')
181
+ GetRDSDatabaseRecommendationsRequest = Shapes::StructureShape.new(name: 'GetRDSDatabaseRecommendationsRequest')
182
+ GetRDSDatabaseRecommendationsResponse = Shapes::StructureShape.new(name: 'GetRDSDatabaseRecommendationsResponse')
169
183
  GetRecommendationError = Shapes::StructureShape.new(name: 'GetRecommendationError')
170
184
  GetRecommendationErrors = Shapes::ListShape.new(name: 'GetRecommendationErrors')
171
185
  GetRecommendationPreferencesRequest = Shapes::StructureShape.new(name: 'GetRecommendationPreferencesRequest')
@@ -179,6 +193,7 @@ module Aws::ComputeOptimizer
179
193
  Gpus = Shapes::ListShape.new(name: 'Gpus')
180
194
  High = Shapes::IntegerShape.new(name: 'High')
181
195
  Identifier = Shapes::StringShape.new(name: 'Identifier')
196
+ Idle = Shapes::StringShape.new(name: 'Idle')
182
197
  IncludeMemberAccounts = Shapes::BooleanShape.new(name: 'IncludeMemberAccounts')
183
198
  InferredWorkloadSaving = Shapes::StructureShape.new(name: 'InferredWorkloadSaving')
184
199
  InferredWorkloadSavings = Shapes::ListShape.new(name: 'InferredWorkloadSavings')
@@ -274,8 +289,11 @@ module Aws::ComputeOptimizer
274
289
  MissingAuthenticationToken = Shapes::StructureShape.new(name: 'MissingAuthenticationToken')
275
290
  NextToken = Shapes::StringShape.new(name: 'NextToken')
276
291
  NullableCpu = Shapes::IntegerShape.new(name: 'NullableCpu')
292
+ NullableIOPS = Shapes::IntegerShape.new(name: 'NullableIOPS')
293
+ NullableMaxAllocatedStorage = Shapes::IntegerShape.new(name: 'NullableMaxAllocatedStorage')
277
294
  NullableMemory = Shapes::IntegerShape.new(name: 'NullableMemory')
278
295
  NullableMemoryReservation = Shapes::IntegerShape.new(name: 'NullableMemoryReservation')
296
+ NullableStorageThroughput = Shapes::IntegerShape.new(name: 'NullableStorageThroughput')
279
297
  NumberOfCores = Shapes::IntegerShape.new(name: 'NumberOfCores')
280
298
  NumberOfInvocations = Shapes::IntegerShape.new(name: 'NumberOfInvocations')
281
299
  NumberOfMemberAccountsOptedIn = Shapes::IntegerShape.new(name: 'NumberOfMemberAccountsOptedIn')
@@ -295,6 +313,37 @@ module Aws::ComputeOptimizer
295
313
  ProjectedUtilizationMetrics = Shapes::ListShape.new(name: 'ProjectedUtilizationMetrics')
296
314
  PutRecommendationPreferencesRequest = Shapes::StructureShape.new(name: 'PutRecommendationPreferencesRequest')
297
315
  PutRecommendationPreferencesResponse = Shapes::StructureShape.new(name: 'PutRecommendationPreferencesResponse')
316
+ RDSDBInstanceRecommendationOption = Shapes::StructureShape.new(name: 'RDSDBInstanceRecommendationOption')
317
+ RDSDBInstanceRecommendationOptions = Shapes::ListShape.new(name: 'RDSDBInstanceRecommendationOptions')
318
+ RDSDBMetricName = Shapes::StringShape.new(name: 'RDSDBMetricName')
319
+ RDSDBMetricStatistic = Shapes::StringShape.new(name: 'RDSDBMetricStatistic')
320
+ RDSDBProjectedUtilizationMetrics = Shapes::ListShape.new(name: 'RDSDBProjectedUtilizationMetrics')
321
+ RDSDBRecommendation = Shapes::StructureShape.new(name: 'RDSDBRecommendation')
322
+ RDSDBRecommendationFilter = Shapes::StructureShape.new(name: 'RDSDBRecommendationFilter')
323
+ RDSDBRecommendationFilterName = Shapes::StringShape.new(name: 'RDSDBRecommendationFilterName')
324
+ RDSDBRecommendationFilters = Shapes::ListShape.new(name: 'RDSDBRecommendationFilters')
325
+ RDSDBRecommendations = Shapes::ListShape.new(name: 'RDSDBRecommendations')
326
+ RDSDBStorageRecommendationOption = Shapes::StructureShape.new(name: 'RDSDBStorageRecommendationOption')
327
+ RDSDBStorageRecommendationOptions = Shapes::ListShape.new(name: 'RDSDBStorageRecommendationOptions')
328
+ RDSDBUtilizationMetric = Shapes::StructureShape.new(name: 'RDSDBUtilizationMetric')
329
+ RDSDBUtilizationMetrics = Shapes::ListShape.new(name: 'RDSDBUtilizationMetrics')
330
+ RDSDatabaseProjectedMetric = Shapes::StructureShape.new(name: 'RDSDatabaseProjectedMetric')
331
+ RDSDatabaseProjectedMetrics = Shapes::ListShape.new(name: 'RDSDatabaseProjectedMetrics')
332
+ RDSDatabaseRecommendedOptionProjectedMetric = Shapes::StructureShape.new(name: 'RDSDatabaseRecommendedOptionProjectedMetric')
333
+ RDSDatabaseRecommendedOptionProjectedMetrics = Shapes::ListShape.new(name: 'RDSDatabaseRecommendedOptionProjectedMetrics')
334
+ RDSEffectiveRecommendationPreferences = Shapes::StructureShape.new(name: 'RDSEffectiveRecommendationPreferences')
335
+ RDSInstanceEstimatedMonthlySavings = Shapes::StructureShape.new(name: 'RDSInstanceEstimatedMonthlySavings')
336
+ RDSInstanceFinding = Shapes::StringShape.new(name: 'RDSInstanceFinding')
337
+ RDSInstanceFindingReasonCode = Shapes::StringShape.new(name: 'RDSInstanceFindingReasonCode')
338
+ RDSInstanceFindingReasonCodes = Shapes::ListShape.new(name: 'RDSInstanceFindingReasonCodes')
339
+ RDSInstanceSavingsOpportunityAfterDiscounts = Shapes::StructureShape.new(name: 'RDSInstanceSavingsOpportunityAfterDiscounts')
340
+ RDSSavingsEstimationMode = Shapes::StructureShape.new(name: 'RDSSavingsEstimationMode')
341
+ RDSSavingsEstimationModeSource = Shapes::StringShape.new(name: 'RDSSavingsEstimationModeSource')
342
+ RDSStorageEstimatedMonthlySavings = Shapes::StructureShape.new(name: 'RDSStorageEstimatedMonthlySavings')
343
+ RDSStorageFinding = Shapes::StringShape.new(name: 'RDSStorageFinding')
344
+ RDSStorageFindingReasonCode = Shapes::StringShape.new(name: 'RDSStorageFindingReasonCode')
345
+ RDSStorageFindingReasonCodes = Shapes::ListShape.new(name: 'RDSStorageFindingReasonCodes')
346
+ RDSStorageSavingsOpportunityAfterDiscounts = Shapes::StructureShape.new(name: 'RDSStorageSavingsOpportunityAfterDiscounts')
298
347
  Rank = Shapes::IntegerShape.new(name: 'Rank')
299
348
  ReasonCodeSummaries = Shapes::ListShape.new(name: 'ReasonCodeSummaries')
300
349
  ReasonCodeSummary = Shapes::StructureShape.new(name: 'ReasonCodeSummary')
@@ -312,6 +361,7 @@ module Aws::ComputeOptimizer
312
361
  RecommendationSources = Shapes::ListShape.new(name: 'RecommendationSources')
313
362
  RecommendationSummaries = Shapes::ListShape.new(name: 'RecommendationSummaries')
314
363
  RecommendationSummary = Shapes::StructureShape.new(name: 'RecommendationSummary')
364
+ RecommendedDBInstanceClass = Shapes::StringShape.new(name: 'RecommendedDBInstanceClass')
315
365
  RecommendedInstanceType = Shapes::StringShape.new(name: 'RecommendedInstanceType')
316
366
  RecommendedOptionProjectedMetric = Shapes::StructureShape.new(name: 'RecommendedOptionProjectedMetric')
317
367
  RecommendedOptionProjectedMetrics = Shapes::ListShape.new(name: 'RecommendedOptionProjectedMetrics')
@@ -334,6 +384,7 @@ module Aws::ComputeOptimizer
334
384
  ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
335
385
  Status = Shapes::StringShape.new(name: 'Status')
336
386
  StatusReason = Shapes::StringShape.new(name: 'StatusReason')
387
+ StorageType = Shapes::StringShape.new(name: 'StorageType')
337
388
  Summaries = Shapes::ListShape.new(name: 'Summaries')
338
389
  Summary = Shapes::StructureShape.new(name: 'Summary')
339
390
  SummaryValue = Shapes::FloatShape.new(name: 'SummaryValue')
@@ -400,22 +451,22 @@ module Aws::ComputeOptimizer
400
451
  AutoScalingGroupRecommendation.add_member(:utilization_metrics, Shapes::ShapeRef.new(shape: UtilizationMetrics, location_name: "utilizationMetrics"))
401
452
  AutoScalingGroupRecommendation.add_member(:look_back_period_in_days, Shapes::ShapeRef.new(shape: LookBackPeriodInDays, location_name: "lookBackPeriodInDays"))
402
453
  AutoScalingGroupRecommendation.add_member(:current_configuration, Shapes::ShapeRef.new(shape: AutoScalingGroupConfiguration, location_name: "currentConfiguration"))
454
+ AutoScalingGroupRecommendation.add_member(:current_instance_gpu_info, Shapes::ShapeRef.new(shape: GpuInfo, location_name: "currentInstanceGpuInfo"))
403
455
  AutoScalingGroupRecommendation.add_member(:recommendation_options, Shapes::ShapeRef.new(shape: AutoScalingGroupRecommendationOptions, location_name: "recommendationOptions"))
404
456
  AutoScalingGroupRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
405
457
  AutoScalingGroupRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
406
458
  AutoScalingGroupRecommendation.add_member(:effective_recommendation_preferences, Shapes::ShapeRef.new(shape: EffectiveRecommendationPreferences, location_name: "effectiveRecommendationPreferences"))
407
459
  AutoScalingGroupRecommendation.add_member(:inferred_workload_types, Shapes::ShapeRef.new(shape: InferredWorkloadTypes, location_name: "inferredWorkloadTypes"))
408
- AutoScalingGroupRecommendation.add_member(:current_instance_gpu_info, Shapes::ShapeRef.new(shape: GpuInfo, location_name: "currentInstanceGpuInfo"))
409
460
  AutoScalingGroupRecommendation.struct_class = Types::AutoScalingGroupRecommendation
410
461
 
411
462
  AutoScalingGroupRecommendationOption.add_member(:configuration, Shapes::ShapeRef.new(shape: AutoScalingGroupConfiguration, location_name: "configuration"))
463
+ AutoScalingGroupRecommendationOption.add_member(:instance_gpu_info, Shapes::ShapeRef.new(shape: GpuInfo, location_name: "instanceGpuInfo"))
412
464
  AutoScalingGroupRecommendationOption.add_member(:projected_utilization_metrics, Shapes::ShapeRef.new(shape: ProjectedUtilizationMetrics, location_name: "projectedUtilizationMetrics"))
413
465
  AutoScalingGroupRecommendationOption.add_member(:performance_risk, Shapes::ShapeRef.new(shape: PerformanceRisk, location_name: "performanceRisk"))
414
466
  AutoScalingGroupRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
415
467
  AutoScalingGroupRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
416
- AutoScalingGroupRecommendationOption.add_member(:migration_effort, Shapes::ShapeRef.new(shape: MigrationEffort, location_name: "migrationEffort"))
417
- AutoScalingGroupRecommendationOption.add_member(:instance_gpu_info, Shapes::ShapeRef.new(shape: GpuInfo, location_name: "instanceGpuInfo"))
418
468
  AutoScalingGroupRecommendationOption.add_member(:savings_opportunity_after_discounts, Shapes::ShapeRef.new(shape: AutoScalingGroupSavingsOpportunityAfterDiscounts, location_name: "savingsOpportunityAfterDiscounts"))
469
+ AutoScalingGroupRecommendationOption.add_member(:migration_effort, Shapes::ShapeRef.new(shape: MigrationEffort, location_name: "migrationEffort"))
419
470
  AutoScalingGroupRecommendationOption.struct_class = Types::AutoScalingGroupRecommendationOption
420
471
 
421
472
  AutoScalingGroupRecommendationOptions.member = Shapes::ShapeRef.new(shape: AutoScalingGroupRecommendationOption)
@@ -452,6 +503,13 @@ module Aws::ComputeOptimizer
452
503
  CustomizableMetricParameters.add_member(:headroom, Shapes::ShapeRef.new(shape: CustomizableMetricHeadroom, location_name: "headroom"))
453
504
  CustomizableMetricParameters.struct_class = Types::CustomizableMetricParameters
454
505
 
506
+ DBStorageConfiguration.add_member(:storage_type, Shapes::ShapeRef.new(shape: StorageType, location_name: "storageType"))
507
+ DBStorageConfiguration.add_member(:allocated_storage, Shapes::ShapeRef.new(shape: AllocatedStorage, location_name: "allocatedStorage"))
508
+ DBStorageConfiguration.add_member(:iops, Shapes::ShapeRef.new(shape: NullableIOPS, location_name: "iops"))
509
+ DBStorageConfiguration.add_member(:max_allocated_storage, Shapes::ShapeRef.new(shape: NullableMaxAllocatedStorage, location_name: "maxAllocatedStorage"))
510
+ DBStorageConfiguration.add_member(:storage_throughput, Shapes::ShapeRef.new(shape: NullableStorageThroughput, location_name: "storageThroughput"))
511
+ DBStorageConfiguration.struct_class = Types::DBStorageConfiguration
512
+
455
513
  DeleteRecommendationPreferencesRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "resourceType"))
456
514
  DeleteRecommendationPreferencesRequest.add_member(:scope, Shapes::ShapeRef.new(shape: Scope, location_name: "scope"))
457
515
  DeleteRecommendationPreferencesRequest.add_member(:recommendation_preference_names, Shapes::ShapeRef.new(shape: RecommendationPreferenceNames, required: true, location_name: "recommendationPreferenceNames"))
@@ -537,8 +595,8 @@ module Aws::ComputeOptimizer
537
595
  ECSServiceRecommendation.add_member(:finding_reason_codes, Shapes::ShapeRef.new(shape: ECSServiceRecommendationFindingReasonCodes, location_name: "findingReasonCodes"))
538
596
  ECSServiceRecommendation.add_member(:service_recommendation_options, Shapes::ShapeRef.new(shape: ECSServiceRecommendationOptions, location_name: "serviceRecommendationOptions"))
539
597
  ECSServiceRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
540
- ECSServiceRecommendation.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
541
598
  ECSServiceRecommendation.add_member(:effective_recommendation_preferences, Shapes::ShapeRef.new(shape: ECSEffectiveRecommendationPreferences, location_name: "effectiveRecommendationPreferences"))
599
+ ECSServiceRecommendation.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
542
600
  ECSServiceRecommendation.struct_class = Types::ECSServiceRecommendation
543
601
 
544
602
  ECSServiceRecommendationFilter.add_member(:name, Shapes::ShapeRef.new(shape: ECSServiceRecommendationFilterName, location_name: "name"))
@@ -552,9 +610,9 @@ module Aws::ComputeOptimizer
552
610
  ECSServiceRecommendationOption.add_member(:memory, Shapes::ShapeRef.new(shape: NullableMemory, location_name: "memory"))
553
611
  ECSServiceRecommendationOption.add_member(:cpu, Shapes::ShapeRef.new(shape: NullableCpu, location_name: "cpu"))
554
612
  ECSServiceRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
613
+ ECSServiceRecommendationOption.add_member(:savings_opportunity_after_discounts, Shapes::ShapeRef.new(shape: ECSSavingsOpportunityAfterDiscounts, location_name: "savingsOpportunityAfterDiscounts"))
555
614
  ECSServiceRecommendationOption.add_member(:projected_utilization_metrics, Shapes::ShapeRef.new(shape: ECSServiceProjectedUtilizationMetrics, location_name: "projectedUtilizationMetrics"))
556
615
  ECSServiceRecommendationOption.add_member(:container_recommendations, Shapes::ShapeRef.new(shape: ContainerRecommendations, location_name: "containerRecommendations"))
557
- ECSServiceRecommendationOption.add_member(:savings_opportunity_after_discounts, Shapes::ShapeRef.new(shape: ECSSavingsOpportunityAfterDiscounts, location_name: "savingsOpportunityAfterDiscounts"))
558
616
  ECSServiceRecommendationOption.struct_class = Types::ECSServiceRecommendationOption
559
617
 
560
618
  ECSServiceRecommendationOptions.member = Shapes::ShapeRef.new(shape: ECSServiceRecommendationOption)
@@ -680,6 +738,19 @@ module Aws::ComputeOptimizer
680
738
  ExportLicenseRecommendationsResponse.add_member(:s3_destination, Shapes::ShapeRef.new(shape: S3Destination, location_name: "s3Destination"))
681
739
  ExportLicenseRecommendationsResponse.struct_class = Types::ExportLicenseRecommendationsResponse
682
740
 
741
+ ExportRDSDatabaseRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
742
+ ExportRDSDatabaseRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: RDSDBRecommendationFilters, location_name: "filters"))
743
+ ExportRDSDatabaseRecommendationsRequest.add_member(:fields_to_export, Shapes::ShapeRef.new(shape: ExportableRDSDBFields, location_name: "fieldsToExport"))
744
+ ExportRDSDatabaseRecommendationsRequest.add_member(:s3_destination_config, Shapes::ShapeRef.new(shape: S3DestinationConfig, required: true, location_name: "s3DestinationConfig"))
745
+ ExportRDSDatabaseRecommendationsRequest.add_member(:file_format, Shapes::ShapeRef.new(shape: FileFormat, location_name: "fileFormat"))
746
+ ExportRDSDatabaseRecommendationsRequest.add_member(:include_member_accounts, Shapes::ShapeRef.new(shape: IncludeMemberAccounts, location_name: "includeMemberAccounts"))
747
+ ExportRDSDatabaseRecommendationsRequest.add_member(:recommendation_preferences, Shapes::ShapeRef.new(shape: RecommendationPreferences, location_name: "recommendationPreferences"))
748
+ ExportRDSDatabaseRecommendationsRequest.struct_class = Types::ExportRDSDatabaseRecommendationsRequest
749
+
750
+ ExportRDSDatabaseRecommendationsResponse.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "jobId"))
751
+ ExportRDSDatabaseRecommendationsResponse.add_member(:s3_destination, Shapes::ShapeRef.new(shape: S3Destination, location_name: "s3Destination"))
752
+ ExportRDSDatabaseRecommendationsResponse.struct_class = Types::ExportRDSDatabaseRecommendationsResponse
753
+
683
754
  ExportableAutoScalingGroupFields.member = Shapes::ShapeRef.new(shape: ExportableAutoScalingGroupField)
684
755
 
685
756
  ExportableECSServiceFields.member = Shapes::ShapeRef.new(shape: ExportableECSServiceField)
@@ -690,6 +761,8 @@ module Aws::ComputeOptimizer
690
761
 
691
762
  ExportableLicenseFields.member = Shapes::ShapeRef.new(shape: ExportableLicenseField)
692
763
 
764
+ ExportableRDSDBFields.member = Shapes::ShapeRef.new(shape: ExportableRDSDBField)
765
+
693
766
  ExportableVolumeFields.member = Shapes::ShapeRef.new(shape: ExportableVolumeField)
694
767
 
695
768
  ExternalMetricStatus.add_member(:status_code, Shapes::ShapeRef.new(shape: ExternalMetricStatusCode, location_name: "statusCode"))
@@ -831,6 +904,30 @@ module Aws::ComputeOptimizer
831
904
  GetLicenseRecommendationsResponse.add_member(:errors, Shapes::ShapeRef.new(shape: GetRecommendationErrors, location_name: "errors"))
832
905
  GetLicenseRecommendationsResponse.struct_class = Types::GetLicenseRecommendationsResponse
833
906
 
907
+ GetRDSDatabaseRecommendationProjectedMetricsRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "resourceArn"))
908
+ GetRDSDatabaseRecommendationProjectedMetricsRequest.add_member(:stat, Shapes::ShapeRef.new(shape: MetricStatistic, required: true, location_name: "stat"))
909
+ GetRDSDatabaseRecommendationProjectedMetricsRequest.add_member(:period, Shapes::ShapeRef.new(shape: Period, required: true, location_name: "period"))
910
+ GetRDSDatabaseRecommendationProjectedMetricsRequest.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "startTime"))
911
+ GetRDSDatabaseRecommendationProjectedMetricsRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "endTime"))
912
+ GetRDSDatabaseRecommendationProjectedMetricsRequest.add_member(:recommendation_preferences, Shapes::ShapeRef.new(shape: RecommendationPreferences, location_name: "recommendationPreferences"))
913
+ GetRDSDatabaseRecommendationProjectedMetricsRequest.struct_class = Types::GetRDSDatabaseRecommendationProjectedMetricsRequest
914
+
915
+ GetRDSDatabaseRecommendationProjectedMetricsResponse.add_member(:recommended_option_projected_metrics, Shapes::ShapeRef.new(shape: RDSDatabaseRecommendedOptionProjectedMetrics, location_name: "recommendedOptionProjectedMetrics"))
916
+ GetRDSDatabaseRecommendationProjectedMetricsResponse.struct_class = Types::GetRDSDatabaseRecommendationProjectedMetricsResponse
917
+
918
+ GetRDSDatabaseRecommendationsRequest.add_member(:resource_arns, Shapes::ShapeRef.new(shape: ResourceArns, location_name: "resourceArns"))
919
+ GetRDSDatabaseRecommendationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
920
+ GetRDSDatabaseRecommendationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
921
+ GetRDSDatabaseRecommendationsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: RDSDBRecommendationFilters, location_name: "filters"))
922
+ GetRDSDatabaseRecommendationsRequest.add_member(:account_ids, Shapes::ShapeRef.new(shape: AccountIds, location_name: "accountIds"))
923
+ GetRDSDatabaseRecommendationsRequest.add_member(:recommendation_preferences, Shapes::ShapeRef.new(shape: RecommendationPreferences, location_name: "recommendationPreferences"))
924
+ GetRDSDatabaseRecommendationsRequest.struct_class = Types::GetRDSDatabaseRecommendationsRequest
925
+
926
+ GetRDSDatabaseRecommendationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
927
+ GetRDSDatabaseRecommendationsResponse.add_member(:rds_db_recommendations, Shapes::ShapeRef.new(shape: RDSDBRecommendations, location_name: "rdsDBRecommendations"))
928
+ GetRDSDatabaseRecommendationsResponse.add_member(:errors, Shapes::ShapeRef.new(shape: GetRecommendationErrors, location_name: "errors"))
929
+ GetRDSDatabaseRecommendationsResponse.struct_class = Types::GetRDSDatabaseRecommendationsResponse
930
+
834
931
  GetRecommendationError.add_member(:identifier, Shapes::ShapeRef.new(shape: Identifier, location_name: "identifier"))
835
932
  GetRecommendationError.add_member(:code, Shapes::ShapeRef.new(shape: Code, location_name: "code"))
836
933
  GetRecommendationError.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "message"))
@@ -904,14 +1001,14 @@ module Aws::ComputeOptimizer
904
1001
  InstanceRecommendationFindingReasonCodes.member = Shapes::ShapeRef.new(shape: InstanceRecommendationFindingReasonCode)
905
1002
 
906
1003
  InstanceRecommendationOption.add_member(:instance_type, Shapes::ShapeRef.new(shape: InstanceType, location_name: "instanceType"))
1004
+ InstanceRecommendationOption.add_member(:instance_gpu_info, Shapes::ShapeRef.new(shape: GpuInfo, location_name: "instanceGpuInfo"))
907
1005
  InstanceRecommendationOption.add_member(:projected_utilization_metrics, Shapes::ShapeRef.new(shape: ProjectedUtilizationMetrics, location_name: "projectedUtilizationMetrics"))
908
1006
  InstanceRecommendationOption.add_member(:platform_differences, Shapes::ShapeRef.new(shape: PlatformDifferences, location_name: "platformDifferences"))
909
1007
  InstanceRecommendationOption.add_member(:performance_risk, Shapes::ShapeRef.new(shape: PerformanceRisk, location_name: "performanceRisk"))
910
1008
  InstanceRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
911
1009
  InstanceRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
912
- InstanceRecommendationOption.add_member(:migration_effort, Shapes::ShapeRef.new(shape: MigrationEffort, location_name: "migrationEffort"))
913
- InstanceRecommendationOption.add_member(:instance_gpu_info, Shapes::ShapeRef.new(shape: GpuInfo, location_name: "instanceGpuInfo"))
914
1010
  InstanceRecommendationOption.add_member(:savings_opportunity_after_discounts, Shapes::ShapeRef.new(shape: InstanceSavingsOpportunityAfterDiscounts, location_name: "savingsOpportunityAfterDiscounts"))
1011
+ InstanceRecommendationOption.add_member(:migration_effort, Shapes::ShapeRef.new(shape: MigrationEffort, location_name: "migrationEffort"))
915
1012
  InstanceRecommendationOption.struct_class = Types::InstanceRecommendationOption
916
1013
 
917
1014
  InstanceRecommendations.member = Shapes::ShapeRef.new(shape: InstanceRecommendation)
@@ -972,8 +1069,8 @@ module Aws::ComputeOptimizer
972
1069
  LambdaFunctionRecommendation.add_member(:finding_reason_codes, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFindingReasonCodes, location_name: "findingReasonCodes"))
973
1070
  LambdaFunctionRecommendation.add_member(:memory_size_recommendation_options, Shapes::ShapeRef.new(shape: LambdaFunctionMemoryRecommendationOptions, location_name: "memorySizeRecommendationOptions"))
974
1071
  LambdaFunctionRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
975
- LambdaFunctionRecommendation.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
976
1072
  LambdaFunctionRecommendation.add_member(:effective_recommendation_preferences, Shapes::ShapeRef.new(shape: LambdaEffectiveRecommendationPreferences, location_name: "effectiveRecommendationPreferences"))
1073
+ LambdaFunctionRecommendation.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
977
1074
  LambdaFunctionRecommendation.struct_class = Types::LambdaFunctionRecommendation
978
1075
 
979
1076
  LambdaFunctionRecommendationFilter.add_member(:name, Shapes::ShapeRef.new(shape: LambdaFunctionRecommendationFilterName, location_name: "name"))
@@ -1094,6 +1191,104 @@ module Aws::ComputeOptimizer
1094
1191
 
1095
1192
  PutRecommendationPreferencesResponse.struct_class = Types::PutRecommendationPreferencesResponse
1096
1193
 
1194
+ RDSDBInstanceRecommendationOption.add_member(:db_instance_class, Shapes::ShapeRef.new(shape: DBInstanceClass, location_name: "dbInstanceClass"))
1195
+ RDSDBInstanceRecommendationOption.add_member(:projected_utilization_metrics, Shapes::ShapeRef.new(shape: RDSDBProjectedUtilizationMetrics, location_name: "projectedUtilizationMetrics"))
1196
+ RDSDBInstanceRecommendationOption.add_member(:performance_risk, Shapes::ShapeRef.new(shape: PerformanceRisk, location_name: "performanceRisk"))
1197
+ RDSDBInstanceRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
1198
+ RDSDBInstanceRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
1199
+ RDSDBInstanceRecommendationOption.add_member(:savings_opportunity_after_discounts, Shapes::ShapeRef.new(shape: RDSInstanceSavingsOpportunityAfterDiscounts, location_name: "savingsOpportunityAfterDiscounts"))
1200
+ RDSDBInstanceRecommendationOption.struct_class = Types::RDSDBInstanceRecommendationOption
1201
+
1202
+ RDSDBInstanceRecommendationOptions.member = Shapes::ShapeRef.new(shape: RDSDBInstanceRecommendationOption)
1203
+
1204
+ RDSDBProjectedUtilizationMetrics.member = Shapes::ShapeRef.new(shape: RDSDBUtilizationMetric)
1205
+
1206
+ RDSDBRecommendation.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "resourceArn"))
1207
+ RDSDBRecommendation.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
1208
+ RDSDBRecommendation.add_member(:engine, Shapes::ShapeRef.new(shape: Engine, location_name: "engine"))
1209
+ RDSDBRecommendation.add_member(:engine_version, Shapes::ShapeRef.new(shape: EngineVersion, location_name: "engineVersion"))
1210
+ RDSDBRecommendation.add_member(:current_db_instance_class, Shapes::ShapeRef.new(shape: CurrentDBInstanceClass, location_name: "currentDBInstanceClass"))
1211
+ RDSDBRecommendation.add_member(:current_storage_configuration, Shapes::ShapeRef.new(shape: DBStorageConfiguration, location_name: "currentStorageConfiguration"))
1212
+ RDSDBRecommendation.add_member(:idle, Shapes::ShapeRef.new(shape: Idle, location_name: "idle"))
1213
+ RDSDBRecommendation.add_member(:instance_finding, Shapes::ShapeRef.new(shape: RDSInstanceFinding, location_name: "instanceFinding"))
1214
+ RDSDBRecommendation.add_member(:storage_finding, Shapes::ShapeRef.new(shape: RDSStorageFinding, location_name: "storageFinding"))
1215
+ RDSDBRecommendation.add_member(:instance_finding_reason_codes, Shapes::ShapeRef.new(shape: RDSInstanceFindingReasonCodes, location_name: "instanceFindingReasonCodes"))
1216
+ RDSDBRecommendation.add_member(:storage_finding_reason_codes, Shapes::ShapeRef.new(shape: RDSStorageFindingReasonCodes, location_name: "storageFindingReasonCodes"))
1217
+ RDSDBRecommendation.add_member(:instance_recommendation_options, Shapes::ShapeRef.new(shape: RDSDBInstanceRecommendationOptions, location_name: "instanceRecommendationOptions"))
1218
+ RDSDBRecommendation.add_member(:storage_recommendation_options, Shapes::ShapeRef.new(shape: RDSDBStorageRecommendationOptions, location_name: "storageRecommendationOptions"))
1219
+ RDSDBRecommendation.add_member(:utilization_metrics, Shapes::ShapeRef.new(shape: RDSDBUtilizationMetrics, location_name: "utilizationMetrics"))
1220
+ RDSDBRecommendation.add_member(:effective_recommendation_preferences, Shapes::ShapeRef.new(shape: RDSEffectiveRecommendationPreferences, location_name: "effectiveRecommendationPreferences"))
1221
+ RDSDBRecommendation.add_member(:lookback_period_in_days, Shapes::ShapeRef.new(shape: LookBackPeriodInDays, location_name: "lookbackPeriodInDays"))
1222
+ RDSDBRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
1223
+ RDSDBRecommendation.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
1224
+ RDSDBRecommendation.struct_class = Types::RDSDBRecommendation
1225
+
1226
+ RDSDBRecommendationFilter.add_member(:name, Shapes::ShapeRef.new(shape: RDSDBRecommendationFilterName, location_name: "name"))
1227
+ RDSDBRecommendationFilter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValues, location_name: "values"))
1228
+ RDSDBRecommendationFilter.struct_class = Types::RDSDBRecommendationFilter
1229
+
1230
+ RDSDBRecommendationFilters.member = Shapes::ShapeRef.new(shape: RDSDBRecommendationFilter)
1231
+
1232
+ RDSDBRecommendations.member = Shapes::ShapeRef.new(shape: RDSDBRecommendation)
1233
+
1234
+ RDSDBStorageRecommendationOption.add_member(:storage_configuration, Shapes::ShapeRef.new(shape: DBStorageConfiguration, location_name: "storageConfiguration"))
1235
+ RDSDBStorageRecommendationOption.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
1236
+ RDSDBStorageRecommendationOption.add_member(:savings_opportunity, Shapes::ShapeRef.new(shape: SavingsOpportunity, location_name: "savingsOpportunity"))
1237
+ RDSDBStorageRecommendationOption.add_member(:savings_opportunity_after_discounts, Shapes::ShapeRef.new(shape: RDSStorageSavingsOpportunityAfterDiscounts, location_name: "savingsOpportunityAfterDiscounts"))
1238
+ RDSDBStorageRecommendationOption.struct_class = Types::RDSDBStorageRecommendationOption
1239
+
1240
+ RDSDBStorageRecommendationOptions.member = Shapes::ShapeRef.new(shape: RDSDBStorageRecommendationOption)
1241
+
1242
+ RDSDBUtilizationMetric.add_member(:name, Shapes::ShapeRef.new(shape: RDSDBMetricName, location_name: "name"))
1243
+ RDSDBUtilizationMetric.add_member(:statistic, Shapes::ShapeRef.new(shape: RDSDBMetricStatistic, location_name: "statistic"))
1244
+ RDSDBUtilizationMetric.add_member(:value, Shapes::ShapeRef.new(shape: MetricValue, location_name: "value"))
1245
+ RDSDBUtilizationMetric.struct_class = Types::RDSDBUtilizationMetric
1246
+
1247
+ RDSDBUtilizationMetrics.member = Shapes::ShapeRef.new(shape: RDSDBUtilizationMetric)
1248
+
1249
+ RDSDatabaseProjectedMetric.add_member(:name, Shapes::ShapeRef.new(shape: RDSDBMetricName, location_name: "name"))
1250
+ RDSDatabaseProjectedMetric.add_member(:timestamps, Shapes::ShapeRef.new(shape: Timestamps, location_name: "timestamps"))
1251
+ RDSDatabaseProjectedMetric.add_member(:values, Shapes::ShapeRef.new(shape: MetricValues, location_name: "values"))
1252
+ RDSDatabaseProjectedMetric.struct_class = Types::RDSDatabaseProjectedMetric
1253
+
1254
+ RDSDatabaseProjectedMetrics.member = Shapes::ShapeRef.new(shape: RDSDatabaseProjectedMetric)
1255
+
1256
+ RDSDatabaseRecommendedOptionProjectedMetric.add_member(:recommended_db_instance_class, Shapes::ShapeRef.new(shape: RecommendedDBInstanceClass, location_name: "recommendedDBInstanceClass"))
1257
+ RDSDatabaseRecommendedOptionProjectedMetric.add_member(:rank, Shapes::ShapeRef.new(shape: Rank, location_name: "rank"))
1258
+ RDSDatabaseRecommendedOptionProjectedMetric.add_member(:projected_metrics, Shapes::ShapeRef.new(shape: RDSDatabaseProjectedMetrics, location_name: "projectedMetrics"))
1259
+ RDSDatabaseRecommendedOptionProjectedMetric.struct_class = Types::RDSDatabaseRecommendedOptionProjectedMetric
1260
+
1261
+ RDSDatabaseRecommendedOptionProjectedMetrics.member = Shapes::ShapeRef.new(shape: RDSDatabaseRecommendedOptionProjectedMetric)
1262
+
1263
+ RDSEffectiveRecommendationPreferences.add_member(:cpu_vendor_architectures, Shapes::ShapeRef.new(shape: CpuVendorArchitectures, location_name: "cpuVendorArchitectures"))
1264
+ RDSEffectiveRecommendationPreferences.add_member(:enhanced_infrastructure_metrics, Shapes::ShapeRef.new(shape: EnhancedInfrastructureMetrics, location_name: "enhancedInfrastructureMetrics"))
1265
+ RDSEffectiveRecommendationPreferences.add_member(:look_back_period, Shapes::ShapeRef.new(shape: LookBackPeriodPreference, location_name: "lookBackPeriod"))
1266
+ RDSEffectiveRecommendationPreferences.add_member(:savings_estimation_mode, Shapes::ShapeRef.new(shape: RDSSavingsEstimationMode, location_name: "savingsEstimationMode"))
1267
+ RDSEffectiveRecommendationPreferences.struct_class = Types::RDSEffectiveRecommendationPreferences
1268
+
1269
+ RDSInstanceEstimatedMonthlySavings.add_member(:currency, Shapes::ShapeRef.new(shape: Currency, location_name: "currency"))
1270
+ RDSInstanceEstimatedMonthlySavings.add_member(:value, Shapes::ShapeRef.new(shape: Value, location_name: "value"))
1271
+ RDSInstanceEstimatedMonthlySavings.struct_class = Types::RDSInstanceEstimatedMonthlySavings
1272
+
1273
+ RDSInstanceFindingReasonCodes.member = Shapes::ShapeRef.new(shape: RDSInstanceFindingReasonCode)
1274
+
1275
+ RDSInstanceSavingsOpportunityAfterDiscounts.add_member(:savings_opportunity_percentage, Shapes::ShapeRef.new(shape: SavingsOpportunityPercentage, location_name: "savingsOpportunityPercentage"))
1276
+ RDSInstanceSavingsOpportunityAfterDiscounts.add_member(:estimated_monthly_savings, Shapes::ShapeRef.new(shape: RDSInstanceEstimatedMonthlySavings, location_name: "estimatedMonthlySavings"))
1277
+ RDSInstanceSavingsOpportunityAfterDiscounts.struct_class = Types::RDSInstanceSavingsOpportunityAfterDiscounts
1278
+
1279
+ RDSSavingsEstimationMode.add_member(:source, Shapes::ShapeRef.new(shape: RDSSavingsEstimationModeSource, location_name: "source"))
1280
+ RDSSavingsEstimationMode.struct_class = Types::RDSSavingsEstimationMode
1281
+
1282
+ RDSStorageEstimatedMonthlySavings.add_member(:currency, Shapes::ShapeRef.new(shape: Currency, location_name: "currency"))
1283
+ RDSStorageEstimatedMonthlySavings.add_member(:value, Shapes::ShapeRef.new(shape: Value, location_name: "value"))
1284
+ RDSStorageEstimatedMonthlySavings.struct_class = Types::RDSStorageEstimatedMonthlySavings
1285
+
1286
+ RDSStorageFindingReasonCodes.member = Shapes::ShapeRef.new(shape: RDSStorageFindingReasonCode)
1287
+
1288
+ RDSStorageSavingsOpportunityAfterDiscounts.add_member(:savings_opportunity_percentage, Shapes::ShapeRef.new(shape: SavingsOpportunityPercentage, location_name: "savingsOpportunityPercentage"))
1289
+ RDSStorageSavingsOpportunityAfterDiscounts.add_member(:estimated_monthly_savings, Shapes::ShapeRef.new(shape: RDSStorageEstimatedMonthlySavings, location_name: "estimatedMonthlySavings"))
1290
+ RDSStorageSavingsOpportunityAfterDiscounts.struct_class = Types::RDSStorageSavingsOpportunityAfterDiscounts
1291
+
1097
1292
  ReasonCodeSummaries.member = Shapes::ShapeRef.new(shape: ReasonCodeSummary)
1098
1293
 
1099
1294
  ReasonCodeSummary.add_member(:name, Shapes::ShapeRef.new(shape: FindingReasonCode, location_name: "name"))
@@ -1247,8 +1442,8 @@ module Aws::ComputeOptimizer
1247
1442
  VolumeRecommendation.add_member(:volume_recommendation_options, Shapes::ShapeRef.new(shape: VolumeRecommendationOptions, location_name: "volumeRecommendationOptions"))
1248
1443
  VolumeRecommendation.add_member(:last_refresh_timestamp, Shapes::ShapeRef.new(shape: LastRefreshTimestamp, location_name: "lastRefreshTimestamp"))
1249
1444
  VolumeRecommendation.add_member(:current_performance_risk, Shapes::ShapeRef.new(shape: CurrentPerformanceRisk, location_name: "currentPerformanceRisk"))
1250
- VolumeRecommendation.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
1251
1445
  VolumeRecommendation.add_member(:effective_recommendation_preferences, Shapes::ShapeRef.new(shape: EBSEffectiveRecommendationPreferences, location_name: "effectiveRecommendationPreferences"))
1446
+ VolumeRecommendation.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
1252
1447
  VolumeRecommendation.struct_class = Types::VolumeRecommendation
1253
1448
 
1254
1449
  VolumeRecommendationOption.add_member(:configuration, Shapes::ShapeRef.new(shape: VolumeConfiguration, location_name: "configuration"))
@@ -1270,9 +1465,11 @@ module Aws::ComputeOptimizer
1270
1465
 
1271
1466
  api.metadata = {
1272
1467
  "apiVersion" => "2019-11-01",
1468
+ "auth" => ["aws.auth#sigv4"],
1273
1469
  "endpointPrefix" => "compute-optimizer",
1274
1470
  "jsonVersion" => "1.0",
1275
1471
  "protocol" => "json",
1472
+ "protocols" => ["json"],
1276
1473
  "serviceFullName" => "AWS Compute Optimizer",
1277
1474
  "serviceId" => "Compute Optimizer",
1278
1475
  "signatureVersion" => "v4",
@@ -1415,6 +1612,22 @@ module Aws::ComputeOptimizer
1415
1612
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1416
1613
  end)
1417
1614
 
1615
+ api.add_operation(:export_rds_database_recommendations, Seahorse::Model::Operation.new.tap do |o|
1616
+ o.name = "ExportRDSDatabaseRecommendations"
1617
+ o.http_method = "POST"
1618
+ o.http_request_uri = "/"
1619
+ o.input = Shapes::ShapeRef.new(shape: ExportRDSDatabaseRecommendationsRequest)
1620
+ o.output = Shapes::ShapeRef.new(shape: ExportRDSDatabaseRecommendationsResponse)
1621
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
1622
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1623
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1624
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1625
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1626
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
1627
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1628
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1629
+ end)
1630
+
1418
1631
  api.add_operation(:get_auto_scaling_group_recommendations, Seahorse::Model::Operation.new.tap do |o|
1419
1632
  o.name = "GetAutoScalingGroupRecommendations"
1420
1633
  o.http_method = "POST"
@@ -1599,6 +1812,38 @@ module Aws::ComputeOptimizer
1599
1812
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1600
1813
  end)
1601
1814
 
1815
+ api.add_operation(:get_rds_database_recommendation_projected_metrics, Seahorse::Model::Operation.new.tap do |o|
1816
+ o.name = "GetRDSDatabaseRecommendationProjectedMetrics"
1817
+ o.http_method = "POST"
1818
+ o.http_request_uri = "/"
1819
+ o.input = Shapes::ShapeRef.new(shape: GetRDSDatabaseRecommendationProjectedMetricsRequest)
1820
+ o.output = Shapes::ShapeRef.new(shape: GetRDSDatabaseRecommendationProjectedMetricsResponse)
1821
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
1822
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1823
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1824
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1825
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1826
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1827
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
1828
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1829
+ end)
1830
+
1831
+ api.add_operation(:get_rds_database_recommendations, Seahorse::Model::Operation.new.tap do |o|
1832
+ o.name = "GetRDSDatabaseRecommendations"
1833
+ o.http_method = "POST"
1834
+ o.http_request_uri = "/"
1835
+ o.input = Shapes::ShapeRef.new(shape: GetRDSDatabaseRecommendationsRequest)
1836
+ o.output = Shapes::ShapeRef.new(shape: GetRDSDatabaseRecommendationsResponse)
1837
+ o.errors << Shapes::ShapeRef.new(shape: OptInRequiredException)
1838
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1839
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1840
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1841
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValueException)
1842
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1843
+ o.errors << Shapes::ShapeRef.new(shape: MissingAuthenticationToken)
1844
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1845
+ end)
1846
+
1602
1847
  api.add_operation(:get_recommendation_preferences, Seahorse::Model::Operation.new.tap do |o|
1603
1848
  o.name = "GetRecommendationPreferences"
1604
1849
  o.http_method = "POST"
@@ -124,6 +124,20 @@ module Aws::ComputeOptimizer
124
124
  end
125
125
  end
126
126
 
127
+ class ExportRDSDatabaseRecommendations
128
+ def self.build(context)
129
+ unless context.config.regional_endpoint
130
+ endpoint = context.config.endpoint.to_s
131
+ end
132
+ Aws::ComputeOptimizer::EndpointParameters.new(
133
+ region: context.config.region,
134
+ use_dual_stack: context.config.use_dualstack_endpoint,
135
+ use_fips: context.config.use_fips_endpoint,
136
+ endpoint: endpoint,
137
+ )
138
+ end
139
+ end
140
+
127
141
  class GetAutoScalingGroupRecommendations
128
142
  def self.build(context)
129
143
  unless context.config.regional_endpoint
@@ -278,6 +292,34 @@ module Aws::ComputeOptimizer
278
292
  end
279
293
  end
280
294
 
295
+ class GetRDSDatabaseRecommendationProjectedMetrics
296
+ def self.build(context)
297
+ unless context.config.regional_endpoint
298
+ endpoint = context.config.endpoint.to_s
299
+ end
300
+ Aws::ComputeOptimizer::EndpointParameters.new(
301
+ region: context.config.region,
302
+ use_dual_stack: context.config.use_dualstack_endpoint,
303
+ use_fips: context.config.use_fips_endpoint,
304
+ endpoint: endpoint,
305
+ )
306
+ end
307
+ end
308
+
309
+ class GetRDSDatabaseRecommendations
310
+ def self.build(context)
311
+ unless context.config.regional_endpoint
312
+ endpoint = context.config.endpoint.to_s
313
+ end
314
+ Aws::ComputeOptimizer::EndpointParameters.new(
315
+ region: context.config.region,
316
+ use_dual_stack: context.config.use_dualstack_endpoint,
317
+ use_fips: context.config.use_fips_endpoint,
318
+ endpoint: endpoint,
319
+ )
320
+ end
321
+ end
322
+
281
323
  class GetRecommendationPreferences
282
324
  def self.build(context)
283
325
  unless context.config.regional_endpoint
@@ -74,6 +74,8 @@ module Aws::ComputeOptimizer
74
74
  Aws::ComputeOptimizer::Endpoints::ExportLambdaFunctionRecommendations.build(context)
75
75
  when :export_license_recommendations
76
76
  Aws::ComputeOptimizer::Endpoints::ExportLicenseRecommendations.build(context)
77
+ when :export_rds_database_recommendations
78
+ Aws::ComputeOptimizer::Endpoints::ExportRDSDatabaseRecommendations.build(context)
77
79
  when :get_auto_scaling_group_recommendations
78
80
  Aws::ComputeOptimizer::Endpoints::GetAutoScalingGroupRecommendations.build(context)
79
81
  when :get_ebs_volume_recommendations
@@ -96,6 +98,10 @@ module Aws::ComputeOptimizer
96
98
  Aws::ComputeOptimizer::Endpoints::GetLambdaFunctionRecommendations.build(context)
97
99
  when :get_license_recommendations
98
100
  Aws::ComputeOptimizer::Endpoints::GetLicenseRecommendations.build(context)
101
+ when :get_rds_database_recommendation_projected_metrics
102
+ Aws::ComputeOptimizer::Endpoints::GetRDSDatabaseRecommendationProjectedMetrics.build(context)
103
+ when :get_rds_database_recommendations
104
+ Aws::ComputeOptimizer::Endpoints::GetRDSDatabaseRecommendations.build(context)
99
105
  when :get_recommendation_preferences
100
106
  Aws::ComputeOptimizer::Endpoints::GetRecommendationPreferences.build(context)
101
107
  when :get_recommendation_summaries