aws-sdk-computeoptimizer 1.57.0 → 1.59.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -89,6 +89,11 @@ module Aws::ComputeOptimizer
89
89
 
90
90
  # @overload initialize(options)
91
91
  # @param [Hash] options
92
+ #
93
+ # @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
94
+ # A list of plugins to apply to the client. Each plugin is either a
95
+ # class name or an instance of a plugin class.
96
+ #
92
97
  # @option options [required, Aws::CredentialProvider] :credentials
93
98
  # Your AWS credentials. This can be an instance of any one of the
94
99
  # following classes:
@@ -209,7 +214,6 @@ module Aws::ComputeOptimizer
209
214
  # 'https://example.com'
210
215
  # 'http://example.com:123'
211
216
  #
212
- #
213
217
  # @option options [Integer] :endpoint_cache_max_entries (1000)
214
218
  # Used for the maximum size limit of the LRU cache storing endpoints data
215
219
  # for endpoint discovery enabled operations. Defaults to 1000.
@@ -298,7 +302,6 @@ module Aws::ComputeOptimizer
298
302
  # throttling. This is a provisional mode that may change behavior
299
303
  # in the future.
300
304
  #
301
- #
302
305
  # @option options [String] :sdk_ua_app_id
303
306
  # A unique and opaque application ID that is appended to the
304
307
  # User-Agent header as app/sdk_ua_app_id. It should have a
@@ -441,11 +444,6 @@ module Aws::ComputeOptimizer
441
444
  # option encompasses only instances that are part of an Auto Scaling
442
445
  # group.
443
446
  #
444
- # <note markdown="1"> The valid values for this parameter are `Ec2Instance` and
445
- # `AutoScalingGroup`.
446
- #
447
- # </note>
448
- #
449
447
  # @option params [Types::Scope] :scope
450
448
  # An object that describes the scope of the recommendation preference to
451
449
  # delete.
@@ -468,7 +466,7 @@ module Aws::ComputeOptimizer
468
466
  # @example Request syntax with placeholder values
469
467
  #
470
468
  # resp = client.delete_recommendation_preferences({
471
- # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService, License
469
+ # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService, License, RdsDBInstance
472
470
  # scope: {
473
471
  # name: "Organization", # accepts Organization, AccountId, ResourceArn
474
472
  # value: "ScopeValue",
@@ -543,7 +541,7 @@ module Aws::ComputeOptimizer
543
541
  # resp.recommendation_export_jobs[0].destination.s3.bucket #=> String
544
542
  # resp.recommendation_export_jobs[0].destination.s3.key #=> String
545
543
  # resp.recommendation_export_jobs[0].destination.s3.metadata_key #=> String
546
- # resp.recommendation_export_jobs[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable", "EcsService", "License"
544
+ # resp.recommendation_export_jobs[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable", "EcsService", "License", "RdsDBInstance"
547
545
  # resp.recommendation_export_jobs[0].status #=> String, one of "Queued", "InProgress", "Complete", "Failed"
548
546
  # resp.recommendation_export_jobs[0].creation_timestamp #=> Time
549
547
  # resp.recommendation_export_jobs[0].last_updated_timestamp #=> Time
@@ -669,7 +667,7 @@ module Aws::ComputeOptimizer
669
667
  # values: ["FilterValue"],
670
668
  # },
671
669
  # ],
672
- # fields_to_export: ["AccountId"], # accepts AccountId, AutoScalingGroupArn, AutoScalingGroupName, Finding, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, UtilizationMetricsEbsReadOpsPerSecondMaximum, UtilizationMetricsEbsWriteOpsPerSecondMaximum, UtilizationMetricsEbsReadBytesPerSecondMaximum, UtilizationMetricsEbsWriteBytesPerSecondMaximum, UtilizationMetricsDiskReadOpsPerSecondMaximum, UtilizationMetricsDiskWriteOpsPerSecondMaximum, UtilizationMetricsDiskReadBytesPerSecondMaximum, UtilizationMetricsDiskWriteBytesPerSecondMaximum, UtilizationMetricsNetworkInBytesPerSecondMaximum, UtilizationMetricsNetworkOutBytesPerSecondMaximum, UtilizationMetricsNetworkPacketsInPerSecondMaximum, UtilizationMetricsNetworkPacketsOutPerSecondMaximum, LookbackPeriodInDays, CurrentConfigurationInstanceType, CurrentConfigurationDesiredCapacity, CurrentConfigurationMinSize, CurrentConfigurationMaxSize, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsConfigurationInstanceType, RecommendationOptionsConfigurationDesiredCapacity, RecommendationOptionsConfigurationMinSize, RecommendationOptionsConfigurationMaxSize, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, LastRefreshTimestamp, CurrentPerformanceRisk, RecommendationOptionsSavingsOpportunityPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrency, RecommendationOptionsEstimatedMonthlySavingsValue, EffectiveRecommendationPreferencesCpuVendorArchitectures, EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics, EffectiveRecommendationPreferencesInferredWorkloadTypes, InferredWorkloadTypes, RecommendationOptionsMigrationEffort, CurrentInstanceGpuInfo, RecommendationOptionsInstanceGpuInfo, UtilizationMetricsGpuPercentageMaximum, UtilizationMetricsGpuMemoryPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum, EffectiveRecommendationPreferencesSavingsEstimationMode, RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, EffectiveRecommendationPreferencesPreferredResources, EffectiveRecommendationPreferencesLookBackPeriod
670
+ # fields_to_export: ["AccountId"], # accepts AccountId, AutoScalingGroupArn, AutoScalingGroupName, Finding, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, UtilizationMetricsEbsReadOpsPerSecondMaximum, UtilizationMetricsEbsWriteOpsPerSecondMaximum, UtilizationMetricsEbsReadBytesPerSecondMaximum, UtilizationMetricsEbsWriteBytesPerSecondMaximum, UtilizationMetricsDiskReadOpsPerSecondMaximum, UtilizationMetricsDiskWriteOpsPerSecondMaximum, UtilizationMetricsDiskReadBytesPerSecondMaximum, UtilizationMetricsDiskWriteBytesPerSecondMaximum, UtilizationMetricsNetworkInBytesPerSecondMaximum, UtilizationMetricsNetworkOutBytesPerSecondMaximum, UtilizationMetricsNetworkPacketsInPerSecondMaximum, UtilizationMetricsNetworkPacketsOutPerSecondMaximum, LookbackPeriodInDays, CurrentConfigurationInstanceType, CurrentConfigurationDesiredCapacity, CurrentConfigurationMinSize, CurrentConfigurationMaxSize, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsConfigurationInstanceType, RecommendationOptionsConfigurationDesiredCapacity, RecommendationOptionsConfigurationMinSize, RecommendationOptionsConfigurationMaxSize, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPerformanceRisk, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, LastRefreshTimestamp, CurrentPerformanceRisk, RecommendationOptionsSavingsOpportunityPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrency, RecommendationOptionsEstimatedMonthlySavingsValue, EffectiveRecommendationPreferencesCpuVendorArchitectures, EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics, EffectiveRecommendationPreferencesInferredWorkloadTypes, EffectiveRecommendationPreferencesPreferredResources, EffectiveRecommendationPreferencesLookBackPeriod, InferredWorkloadTypes, RecommendationOptionsMigrationEffort, CurrentInstanceGpuInfo, RecommendationOptionsInstanceGpuInfo, UtilizationMetricsGpuPercentageMaximum, UtilizationMetricsGpuMemoryPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum, EffectiveRecommendationPreferencesSavingsEstimationMode, RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts
673
671
  # s3_destination_config: { # required
674
672
  # bucket: "DestinationBucket",
675
673
  # key_prefix: "DestinationKeyPrefix",
@@ -803,7 +801,7 @@ module Aws::ComputeOptimizer
803
801
  # values: ["FilterValue"],
804
802
  # },
805
803
  # ],
806
- # fields_to_export: ["AccountId"], # accepts AccountId, VolumeArn, Finding, UtilizationMetricsVolumeReadOpsPerSecondMaximum, UtilizationMetricsVolumeWriteOpsPerSecondMaximum, UtilizationMetricsVolumeReadBytesPerSecondMaximum, UtilizationMetricsVolumeWriteBytesPerSecondMaximum, LookbackPeriodInDays, CurrentConfigurationVolumeType, CurrentConfigurationVolumeBaselineIOPS, CurrentConfigurationVolumeBaselineThroughput, CurrentConfigurationVolumeBurstIOPS, CurrentConfigurationVolumeBurstThroughput, CurrentConfigurationVolumeSize, CurrentMonthlyPrice, RecommendationOptionsConfigurationVolumeType, RecommendationOptionsConfigurationVolumeBaselineIOPS, RecommendationOptionsConfigurationVolumeBaselineThroughput, RecommendationOptionsConfigurationVolumeBurstIOPS, RecommendationOptionsConfigurationVolumeBurstThroughput, RecommendationOptionsConfigurationVolumeSize, RecommendationOptionsMonthlyPrice, RecommendationOptionsPerformanceRisk, LastRefreshTimestamp, CurrentPerformanceRisk, RecommendationOptionsSavingsOpportunityPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrency, RecommendationOptionsEstimatedMonthlySavingsValue, RootVolume, Tags, CurrentConfigurationRootVolume, EffectiveRecommendationPreferencesSavingsEstimationMode, RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts
804
+ # fields_to_export: ["AccountId"], # accepts AccountId, VolumeArn, Finding, UtilizationMetricsVolumeReadOpsPerSecondMaximum, UtilizationMetricsVolumeWriteOpsPerSecondMaximum, UtilizationMetricsVolumeReadBytesPerSecondMaximum, UtilizationMetricsVolumeWriteBytesPerSecondMaximum, LookbackPeriodInDays, CurrentConfigurationVolumeType, CurrentConfigurationVolumeBaselineIOPS, CurrentConfigurationVolumeBaselineThroughput, CurrentConfigurationVolumeBurstIOPS, CurrentConfigurationVolumeBurstThroughput, CurrentConfigurationVolumeSize, CurrentMonthlyPrice, RecommendationOptionsConfigurationVolumeType, RecommendationOptionsConfigurationVolumeBaselineIOPS, RecommendationOptionsConfigurationVolumeBaselineThroughput, RecommendationOptionsConfigurationVolumeBurstIOPS, RecommendationOptionsConfigurationVolumeBurstThroughput, RecommendationOptionsConfigurationVolumeSize, RecommendationOptionsMonthlyPrice, RecommendationOptionsPerformanceRisk, LastRefreshTimestamp, CurrentPerformanceRisk, RecommendationOptionsSavingsOpportunityPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrency, RecommendationOptionsEstimatedMonthlySavingsValue, Tags, RootVolume, CurrentConfigurationRootVolume, EffectiveRecommendationPreferencesSavingsEstimationMode, RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts
807
805
  # s3_destination_config: { # required
808
806
  # bucket: "DestinationBucket",
809
807
  # key_prefix: "DestinationKeyPrefix",
@@ -935,7 +933,7 @@ module Aws::ComputeOptimizer
935
933
  # values: ["FilterValue"],
936
934
  # },
937
935
  # ],
938
- # fields_to_export: ["AccountId"], # accepts AccountId, InstanceArn, InstanceName, Finding, FindingReasonCodes, LookbackPeriodInDays, CurrentInstanceType, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, UtilizationMetricsEbsReadOpsPerSecondMaximum, UtilizationMetricsEbsWriteOpsPerSecondMaximum, UtilizationMetricsEbsReadBytesPerSecondMaximum, UtilizationMetricsEbsWriteBytesPerSecondMaximum, UtilizationMetricsDiskReadOpsPerSecondMaximum, UtilizationMetricsDiskWriteOpsPerSecondMaximum, UtilizationMetricsDiskReadBytesPerSecondMaximum, UtilizationMetricsDiskWriteBytesPerSecondMaximum, UtilizationMetricsNetworkInBytesPerSecondMaximum, UtilizationMetricsNetworkOutBytesPerSecondMaximum, UtilizationMetricsNetworkPacketsInPerSecondMaximum, UtilizationMetricsNetworkPacketsOutPerSecondMaximum, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsInstanceType, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPlatformDifferences, RecommendationOptionsPerformanceRisk, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationsSourcesRecommendationSourceArn, RecommendationsSourcesRecommendationSourceType, LastRefreshTimestamp, CurrentPerformanceRisk, RecommendationOptionsSavingsOpportunityPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrency, RecommendationOptionsEstimatedMonthlySavingsValue, EffectiveRecommendationPreferencesCpuVendorArchitectures, EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics, EffectiveRecommendationPreferencesInferredWorkloadTypes, InferredWorkloadTypes, RecommendationOptionsMigrationEffort, EffectiveRecommendationPreferencesExternalMetricsSource, InstanceState, Tags, ExternalMetricStatusCode, ExternalMetricStatusReason, CurrentInstanceGpuInfo, RecommendationOptionsInstanceGpuInfo, UtilizationMetricsGpuPercentageMaximum, UtilizationMetricsGpuMemoryPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum, Idle, EffectiveRecommendationPreferencesPreferredResources, EffectiveRecommendationPreferencesLookBackPeriod, EffectiveRecommendationPreferencesUtilizationPreferences, EffectiveRecommendationPreferencesSavingsEstimationMode, RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts
936
+ # fields_to_export: ["AccountId"], # accepts AccountId, InstanceArn, InstanceName, Finding, FindingReasonCodes, LookbackPeriodInDays, CurrentInstanceType, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, UtilizationMetricsEbsReadOpsPerSecondMaximum, UtilizationMetricsEbsWriteOpsPerSecondMaximum, UtilizationMetricsEbsReadBytesPerSecondMaximum, UtilizationMetricsEbsWriteBytesPerSecondMaximum, UtilizationMetricsDiskReadOpsPerSecondMaximum, UtilizationMetricsDiskWriteOpsPerSecondMaximum, UtilizationMetricsDiskReadBytesPerSecondMaximum, UtilizationMetricsDiskWriteBytesPerSecondMaximum, UtilizationMetricsNetworkInBytesPerSecondMaximum, UtilizationMetricsNetworkOutBytesPerSecondMaximum, UtilizationMetricsNetworkPacketsInPerSecondMaximum, UtilizationMetricsNetworkPacketsOutPerSecondMaximum, CurrentOnDemandPrice, CurrentStandardOneYearNoUpfrontReservedPrice, CurrentStandardThreeYearNoUpfrontReservedPrice, CurrentVCpus, CurrentMemory, CurrentStorage, CurrentNetwork, RecommendationOptionsInstanceType, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum, RecommendationOptionsPlatformDifferences, RecommendationOptionsPerformanceRisk, RecommendationOptionsVcpus, RecommendationOptionsMemory, RecommendationOptionsStorage, RecommendationOptionsNetwork, RecommendationOptionsOnDemandPrice, RecommendationOptionsStandardOneYearNoUpfrontReservedPrice, RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice, RecommendationsSourcesRecommendationSourceArn, RecommendationsSourcesRecommendationSourceType, LastRefreshTimestamp, CurrentPerformanceRisk, RecommendationOptionsSavingsOpportunityPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrency, RecommendationOptionsEstimatedMonthlySavingsValue, EffectiveRecommendationPreferencesCpuVendorArchitectures, EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics, EffectiveRecommendationPreferencesInferredWorkloadTypes, InferredWorkloadTypes, RecommendationOptionsMigrationEffort, EffectiveRecommendationPreferencesExternalMetricsSource, Tags, InstanceState, ExternalMetricStatusCode, ExternalMetricStatusReason, CurrentInstanceGpuInfo, RecommendationOptionsInstanceGpuInfo, UtilizationMetricsGpuPercentageMaximum, UtilizationMetricsGpuMemoryPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum, RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum, Idle, EffectiveRecommendationPreferencesPreferredResources, EffectiveRecommendationPreferencesLookBackPeriod, EffectiveRecommendationPreferencesUtilizationPreferences, EffectiveRecommendationPreferencesSavingsEstimationMode, RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts
939
937
  # s3_destination_config: { # required
940
938
  # bucket: "DestinationBucket",
941
939
  # key_prefix: "DestinationKeyPrefix",
@@ -1352,6 +1350,146 @@ module Aws::ComputeOptimizer
1352
1350
  req.send_request(options)
1353
1351
  end
1354
1352
 
1353
+ # Export optimization recommendations for your Amazon Relational
1354
+ # Database Service (Amazon RDS).
1355
+ #
1356
+ # Recommendations are exported in a comma-separated values (CSV) file,
1357
+ # and its metadata in a JavaScript Object Notation (JSON) file, to an
1358
+ # existing Amazon Simple Storage Service (Amazon S3) bucket that you
1359
+ # specify. For more information, see [Exporting Recommendations][1] in
1360
+ # the *Compute Optimizer User Guide*.
1361
+ #
1362
+ # You can have only one Amazon RDS export job in progress per Amazon Web
1363
+ # Services Region.
1364
+ #
1365
+ #
1366
+ #
1367
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/exporting-recommendations.html
1368
+ #
1369
+ # @option params [Array<String>] :account_ids
1370
+ # The Amazon Web Services account IDs for the export Amazon RDS
1371
+ # recommendations.
1372
+ #
1373
+ # If your account is the management account or the delegated
1374
+ # administrator of an organization, use this parameter to specify the
1375
+ # member account you want to export recommendations to.
1376
+ #
1377
+ # This parameter can't be specified together with the include member
1378
+ # accounts parameter. The parameters are mutually exclusive.
1379
+ #
1380
+ # If this parameter or the include member accounts parameter is omitted,
1381
+ # the recommendations for member accounts aren't included in the
1382
+ # export.
1383
+ #
1384
+ # You can specify multiple account IDs per request.
1385
+ #
1386
+ # @option params [Array<Types::RDSDBRecommendationFilter>] :filters
1387
+ # An array of objects to specify a filter that exports a more specific
1388
+ # set of Amazon RDS recommendations.
1389
+ #
1390
+ # @option params [Array<String>] :fields_to_export
1391
+ # The recommendations data to include in the export file. For more
1392
+ # information about the fields that can be exported, see [Exported
1393
+ # files][1] in the *Compute Optimizer User Guide*.
1394
+ #
1395
+ #
1396
+ #
1397
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/exporting-recommendations.html#exported-files
1398
+ #
1399
+ # @option params [required, Types::S3DestinationConfig] :s3_destination_config
1400
+ # Describes the destination Amazon Simple Storage Service (Amazon S3)
1401
+ # bucket name and key prefix for a recommendations export job.
1402
+ #
1403
+ # You must create the destination Amazon S3 bucket for your
1404
+ # recommendations export before you create the export job. Compute
1405
+ # Optimizer does not create the S3 bucket for you. After you create the
1406
+ # S3 bucket, ensure that it has the required permission policy to allow
1407
+ # Compute Optimizer to write the export file to it. If you plan to
1408
+ # specify an object prefix when you create the export job, you must
1409
+ # include the object prefix in the policy that you add to the S3 bucket.
1410
+ # For more information, see [Amazon S3 Bucket Policy for Compute
1411
+ # Optimizer][1] in the *Compute Optimizer User Guide*.
1412
+ #
1413
+ #
1414
+ #
1415
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/create-s3-bucket-policy-for-compute-optimizer.html
1416
+ #
1417
+ # @option params [String] :file_format
1418
+ # The format of the export file.
1419
+ #
1420
+ # The CSV file is the only export file format currently supported.
1421
+ #
1422
+ # @option params [Boolean] :include_member_accounts
1423
+ # If your account is the management account or the delegated
1424
+ # administrator of an organization, this parameter indicates whether to
1425
+ # include recommendations for resources in all member accounts of the
1426
+ # organization.
1427
+ #
1428
+ # The member accounts must also be opted in to Compute Optimizer, and
1429
+ # trusted access for Compute Optimizer must be enabled in the
1430
+ # organization account. For more information, see [Compute Optimizer and
1431
+ # Amazon Web Services Organizations trusted access][1] in the *Compute
1432
+ # Optimizer User Guide*.
1433
+ #
1434
+ # If this parameter is omitted, recommendations for member accounts of
1435
+ # the organization aren't included in the export file.
1436
+ #
1437
+ # If this parameter or the account ID parameter is omitted,
1438
+ # recommendations for member accounts aren't included in the export.
1439
+ #
1440
+ #
1441
+ #
1442
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/security-iam.html#trusted-service-access
1443
+ #
1444
+ # @option params [Types::RecommendationPreferences] :recommendation_preferences
1445
+ # Describes the recommendation preferences to return in the response of
1446
+ # a GetAutoScalingGroupRecommendations, GetEC2InstanceRecommendations,
1447
+ # GetEC2RecommendationProjectedMetrics, GetRDSDatabaseRecommendations,
1448
+ # and GetRDSDatabaseRecommendationProjectedMetrics request.
1449
+ #
1450
+ # @return [Types::ExportRDSDatabaseRecommendationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1451
+ #
1452
+ # * {Types::ExportRDSDatabaseRecommendationsResponse#job_id #job_id} => String
1453
+ # * {Types::ExportRDSDatabaseRecommendationsResponse#s3_destination #s3_destination} => Types::S3Destination
1454
+ #
1455
+ # @example Request syntax with placeholder values
1456
+ #
1457
+ # resp = client.export_rds_database_recommendations({
1458
+ # account_ids: ["AccountId"],
1459
+ # filters: [
1460
+ # {
1461
+ # name: "InstanceFinding", # accepts InstanceFinding, InstanceFindingReasonCode, StorageFinding, StorageFindingReasonCode, Idle
1462
+ # values: ["FilterValue"],
1463
+ # },
1464
+ # ],
1465
+ # fields_to_export: ["ResourceArn"], # accepts ResourceArn, AccountId, Engine, EngineVersion, Idle, MultiAZDBInstance, CurrentDBInstanceClass, CurrentStorageConfigurationStorageType, CurrentStorageConfigurationAllocatedStorage, CurrentStorageConfigurationMaxAllocatedStorage, CurrentStorageConfigurationIOPS, CurrentStorageConfigurationStorageThroughput, CurrentInstanceOnDemandHourlyPrice, CurrentStorageOnDemandMonthlyPrice, LookbackPeriodInDays, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, UtilizationMetricsEBSVolumeStorageSpaceUtilizationMaximum, UtilizationMetricsNetworkReceiveThroughputMaximum, UtilizationMetricsNetworkTransmitThroughputMaximum, UtilizationMetricsEBSVolumeReadIOPSMaximum, UtilizationMetricsEBSVolumeWriteIOPSMaximum, UtilizationMetricsEBSVolumeReadThroughputMaximum, UtilizationMetricsEBSVolumeWriteThroughputMaximum, UtilizationMetricsDatabaseConnectionsMaximum, InstanceFinding, InstanceFindingReasonCodes, StorageFinding, StorageFindingReasonCodes, InstanceRecommendationOptionsDBInstanceClass, InstanceRecommendationOptionsRank, InstanceRecommendationOptionsPerformanceRisk, InstanceRecommendationOptionsProjectedUtilizationMetricsCpuMaximum, StorageRecommendationOptionsStorageType, StorageRecommendationOptionsAllocatedStorage, StorageRecommendationOptionsMaxAllocatedStorage, StorageRecommendationOptionsIOPS, StorageRecommendationOptionsStorageThroughput, StorageRecommendationOptionsRank, InstanceRecommendationOptionsInstanceOnDemandHourlyPrice, InstanceRecommendationOptionsSavingsOpportunityPercentage, InstanceRecommendationOptionsEstimatedMonthlySavingsCurrency, InstanceRecommendationOptionsEstimatedMonthlySavingsValue, InstanceRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, InstanceRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, InstanceRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, StorageRecommendationOptionsOnDemandMonthlyPrice, StorageRecommendationOptionsSavingsOpportunityPercentage, StorageRecommendationOptionsEstimatedMonthlySavingsCurrency, StorageRecommendationOptionsEstimatedMonthlySavingsValue, StorageRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage, StorageRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts, StorageRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts, EffectiveRecommendationPreferencesCpuVendorArchitectures, EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics, EffectiveRecommendationPreferencesLookBackPeriod, EffectiveRecommendationPreferencesSavingsEstimationMode, LastRefreshTimestamp, Tags
1466
+ # s3_destination_config: { # required
1467
+ # bucket: "DestinationBucket",
1468
+ # key_prefix: "DestinationKeyPrefix",
1469
+ # },
1470
+ # file_format: "Csv", # accepts Csv
1471
+ # include_member_accounts: false,
1472
+ # recommendation_preferences: {
1473
+ # cpu_vendor_architectures: ["AWS_ARM64"], # accepts AWS_ARM64, CURRENT
1474
+ # },
1475
+ # })
1476
+ #
1477
+ # @example Response structure
1478
+ #
1479
+ # resp.job_id #=> String
1480
+ # resp.s3_destination.bucket #=> String
1481
+ # resp.s3_destination.key #=> String
1482
+ # resp.s3_destination.metadata_key #=> String
1483
+ #
1484
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ExportRDSDatabaseRecommendations AWS API Documentation
1485
+ #
1486
+ # @overload export_rds_database_recommendations(params = {})
1487
+ # @param [Hash] params ({})
1488
+ def export_rds_database_recommendations(params = {}, options = {})
1489
+ req = build_request(:export_rds_database_recommendations, params)
1490
+ req.send_request(options)
1491
+ end
1492
+
1355
1493
  # Returns Auto Scaling group recommendations.
1356
1494
  #
1357
1495
  # Compute Optimizer generates recommendations for Amazon EC2 Auto
@@ -1437,11 +1575,17 @@ module Aws::ComputeOptimizer
1437
1575
  # resp.auto_scaling_group_recommendations[0].current_configuration.min_size #=> Integer
1438
1576
  # resp.auto_scaling_group_recommendations[0].current_configuration.max_size #=> Integer
1439
1577
  # resp.auto_scaling_group_recommendations[0].current_configuration.instance_type #=> String
1578
+ # resp.auto_scaling_group_recommendations[0].current_instance_gpu_info.gpus #=> Array
1579
+ # resp.auto_scaling_group_recommendations[0].current_instance_gpu_info.gpus[0].gpu_count #=> Integer
1580
+ # resp.auto_scaling_group_recommendations[0].current_instance_gpu_info.gpus[0].gpu_memory_size_in_mi_b #=> Integer
1440
1581
  # resp.auto_scaling_group_recommendations[0].recommendation_options #=> Array
1441
1582
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].configuration.desired_capacity #=> Integer
1442
1583
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].configuration.min_size #=> Integer
1443
1584
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].configuration.max_size #=> Integer
1444
1585
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].configuration.instance_type #=> String
1586
+ # resp.auto_scaling_group_recommendations[0].recommendation_options[0].instance_gpu_info.gpus #=> Array
1587
+ # resp.auto_scaling_group_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_count #=> Integer
1588
+ # resp.auto_scaling_group_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_memory_size_in_mi_b #=> Integer
1445
1589
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].projected_utilization_metrics #=> Array
1446
1590
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].projected_utilization_metrics[0].name #=> String, one of "Cpu", "Memory", "EBS_READ_OPS_PER_SECOND", "EBS_WRITE_OPS_PER_SECOND", "EBS_READ_BYTES_PER_SECOND", "EBS_WRITE_BYTES_PER_SECOND", "DISK_READ_OPS_PER_SECOND", "DISK_WRITE_OPS_PER_SECOND", "DISK_READ_BYTES_PER_SECOND", "DISK_WRITE_BYTES_PER_SECOND", "NETWORK_IN_BYTES_PER_SECOND", "NETWORK_OUT_BYTES_PER_SECOND", "NETWORK_PACKETS_IN_PER_SECOND", "NETWORK_PACKETS_OUT_PER_SECOND", "GPU_PERCENTAGE", "GPU_MEMORY_PERCENTAGE"
1447
1591
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].projected_utilization_metrics[0].statistic #=> String, one of "Maximum", "Average"
@@ -1451,13 +1595,10 @@ module Aws::ComputeOptimizer
1451
1595
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].savings_opportunity.savings_opportunity_percentage #=> Float
1452
1596
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
1453
1597
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].savings_opportunity.estimated_monthly_savings.value #=> Float
1454
- # resp.auto_scaling_group_recommendations[0].recommendation_options[0].migration_effort #=> String, one of "VeryLow", "Low", "Medium", "High"
1455
- # resp.auto_scaling_group_recommendations[0].recommendation_options[0].instance_gpu_info.gpus #=> Array
1456
- # resp.auto_scaling_group_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_count #=> Integer
1457
- # resp.auto_scaling_group_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_memory_size_in_mi_b #=> Integer
1458
1598
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].savings_opportunity_after_discounts.savings_opportunity_percentage #=> Float
1459
1599
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
1460
1600
  # resp.auto_scaling_group_recommendations[0].recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
1601
+ # resp.auto_scaling_group_recommendations[0].recommendation_options[0].migration_effort #=> String, one of "VeryLow", "Low", "Medium", "High"
1461
1602
  # resp.auto_scaling_group_recommendations[0].last_refresh_timestamp #=> Time
1462
1603
  # resp.auto_scaling_group_recommendations[0].current_performance_risk #=> String, one of "VeryLow", "Low", "Medium", "High"
1463
1604
  # resp.auto_scaling_group_recommendations[0].effective_recommendation_preferences.cpu_vendor_architectures #=> Array
@@ -1481,9 +1622,6 @@ module Aws::ComputeOptimizer
1481
1622
  # resp.auto_scaling_group_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
1482
1623
  # resp.auto_scaling_group_recommendations[0].inferred_workload_types #=> Array
1483
1624
  # resp.auto_scaling_group_recommendations[0].inferred_workload_types[0] #=> String, one of "AmazonEmr", "ApacheCassandra", "ApacheHadoop", "Memcached", "Nginx", "PostgreSql", "Redis", "Kafka", "SQLServer"
1484
- # resp.auto_scaling_group_recommendations[0].current_instance_gpu_info.gpus #=> Array
1485
- # resp.auto_scaling_group_recommendations[0].current_instance_gpu_info.gpus[0].gpu_count #=> Integer
1486
- # resp.auto_scaling_group_recommendations[0].current_instance_gpu_info.gpus[0].gpu_memory_size_in_mi_b #=> Integer
1487
1625
  # resp.errors #=> Array
1488
1626
  # resp.errors[0].identifier #=> String
1489
1627
  # resp.errors[0].code #=> String
@@ -1596,10 +1734,10 @@ module Aws::ComputeOptimizer
1596
1734
  # resp.volume_recommendations[0].volume_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
1597
1735
  # resp.volume_recommendations[0].last_refresh_timestamp #=> Time
1598
1736
  # resp.volume_recommendations[0].current_performance_risk #=> String, one of "VeryLow", "Low", "Medium", "High"
1737
+ # resp.volume_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
1599
1738
  # resp.volume_recommendations[0].tags #=> Array
1600
1739
  # resp.volume_recommendations[0].tags[0].key #=> String
1601
1740
  # resp.volume_recommendations[0].tags[0].value #=> String
1602
- # resp.volume_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
1603
1741
  # resp.errors #=> Array
1604
1742
  # resp.errors[0].identifier #=> String
1605
1743
  # resp.errors[0].code #=> String
@@ -1699,6 +1837,9 @@ module Aws::ComputeOptimizer
1699
1837
  # resp.instance_recommendations[0].look_back_period_in_days #=> Float
1700
1838
  # resp.instance_recommendations[0].recommendation_options #=> Array
1701
1839
  # resp.instance_recommendations[0].recommendation_options[0].instance_type #=> String
1840
+ # resp.instance_recommendations[0].recommendation_options[0].instance_gpu_info.gpus #=> Array
1841
+ # resp.instance_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_count #=> Integer
1842
+ # resp.instance_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_memory_size_in_mi_b #=> Integer
1702
1843
  # resp.instance_recommendations[0].recommendation_options[0].projected_utilization_metrics #=> Array
1703
1844
  # resp.instance_recommendations[0].recommendation_options[0].projected_utilization_metrics[0].name #=> String, one of "Cpu", "Memory", "EBS_READ_OPS_PER_SECOND", "EBS_WRITE_OPS_PER_SECOND", "EBS_READ_BYTES_PER_SECOND", "EBS_WRITE_BYTES_PER_SECOND", "DISK_READ_OPS_PER_SECOND", "DISK_WRITE_OPS_PER_SECOND", "DISK_READ_BYTES_PER_SECOND", "DISK_WRITE_BYTES_PER_SECOND", "NETWORK_IN_BYTES_PER_SECOND", "NETWORK_OUT_BYTES_PER_SECOND", "NETWORK_PACKETS_IN_PER_SECOND", "NETWORK_PACKETS_OUT_PER_SECOND", "GPU_PERCENTAGE", "GPU_MEMORY_PERCENTAGE"
1704
1845
  # resp.instance_recommendations[0].recommendation_options[0].projected_utilization_metrics[0].statistic #=> String, one of "Maximum", "Average"
@@ -1710,16 +1851,13 @@ module Aws::ComputeOptimizer
1710
1851
  # resp.instance_recommendations[0].recommendation_options[0].savings_opportunity.savings_opportunity_percentage #=> Float
1711
1852
  # resp.instance_recommendations[0].recommendation_options[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
1712
1853
  # resp.instance_recommendations[0].recommendation_options[0].savings_opportunity.estimated_monthly_savings.value #=> Float
1713
- # resp.instance_recommendations[0].recommendation_options[0].migration_effort #=> String, one of "VeryLow", "Low", "Medium", "High"
1714
- # resp.instance_recommendations[0].recommendation_options[0].instance_gpu_info.gpus #=> Array
1715
- # resp.instance_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_count #=> Integer
1716
- # resp.instance_recommendations[0].recommendation_options[0].instance_gpu_info.gpus[0].gpu_memory_size_in_mi_b #=> Integer
1717
1854
  # resp.instance_recommendations[0].recommendation_options[0].savings_opportunity_after_discounts.savings_opportunity_percentage #=> Float
1718
1855
  # resp.instance_recommendations[0].recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
1719
1856
  # resp.instance_recommendations[0].recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
1857
+ # resp.instance_recommendations[0].recommendation_options[0].migration_effort #=> String, one of "VeryLow", "Low", "Medium", "High"
1720
1858
  # resp.instance_recommendations[0].recommendation_sources #=> Array
1721
1859
  # resp.instance_recommendations[0].recommendation_sources[0].recommendation_source_arn #=> String
1722
- # resp.instance_recommendations[0].recommendation_sources[0].recommendation_source_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "EcsService", "License"
1860
+ # resp.instance_recommendations[0].recommendation_sources[0].recommendation_source_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "EcsService", "License", "RdsDBInstance", "RdsDBInstanceStorage"
1723
1861
  # resp.instance_recommendations[0].last_refresh_timestamp #=> Time
1724
1862
  # resp.instance_recommendations[0].current_performance_risk #=> String, one of "VeryLow", "Low", "Medium", "High"
1725
1863
  # resp.instance_recommendations[0].effective_recommendation_preferences.cpu_vendor_architectures #=> Array
@@ -1993,6 +2131,9 @@ module Aws::ComputeOptimizer
1993
2131
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity.savings_opportunity_percentage #=> Float
1994
2132
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
1995
2133
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity.estimated_monthly_savings.value #=> Float
2134
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity_after_discounts.savings_opportunity_percentage #=> Float
2135
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
2136
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
1996
2137
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics #=> Array
1997
2138
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics[0].name #=> String, one of "Cpu", "Memory"
1998
2139
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics[0].statistic #=> String, one of "Maximum", "Average"
@@ -2003,14 +2144,11 @@ module Aws::ComputeOptimizer
2003
2144
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations[0].memory_size_configuration.memory #=> Integer
2004
2145
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations[0].memory_size_configuration.memory_reservation #=> Integer
2005
2146
  # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations[0].cpu #=> Integer
2006
- # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity_after_discounts.savings_opportunity_percentage #=> Float
2007
- # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
2008
- # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
2009
2147
  # resp.ecs_service_recommendations[0].current_performance_risk #=> String, one of "VeryLow", "Low", "Medium", "High"
2148
+ # resp.ecs_service_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
2010
2149
  # resp.ecs_service_recommendations[0].tags #=> Array
2011
2150
  # resp.ecs_service_recommendations[0].tags[0].key #=> String
2012
2151
  # resp.ecs_service_recommendations[0].tags[0].value #=> String
2013
- # resp.ecs_service_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
2014
2152
  # resp.errors #=> Array
2015
2153
  # resp.errors[0].identifier #=> String
2016
2154
  # resp.errors[0].code #=> String
@@ -2278,10 +2416,10 @@ module Aws::ComputeOptimizer
2278
2416
  # resp.lambda_function_recommendations[0].memory_size_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
2279
2417
  # resp.lambda_function_recommendations[0].memory_size_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
2280
2418
  # resp.lambda_function_recommendations[0].current_performance_risk #=> String, one of "VeryLow", "Low", "Medium", "High"
2419
+ # resp.lambda_function_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
2281
2420
  # resp.lambda_function_recommendations[0].tags #=> Array
2282
2421
  # resp.lambda_function_recommendations[0].tags[0].key #=> String
2283
2422
  # resp.lambda_function_recommendations[0].tags[0].value #=> String
2284
- # resp.lambda_function_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
2285
2423
  #
2286
2424
  # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetLambdaFunctionRecommendations AWS API Documentation
2287
2425
  #
@@ -2401,6 +2539,222 @@ module Aws::ComputeOptimizer
2401
2539
  req.send_request(options)
2402
2540
  end
2403
2541
 
2542
+ # Returns the projected metrics of Amazon RDS recommendations.
2543
+ #
2544
+ # @option params [required, String] :resource_arn
2545
+ # The ARN that identifies the Amazon RDS.
2546
+ #
2547
+ # The following is the format of the ARN:
2548
+ #
2549
+ # `arn:aws:rds:\{region\}:\{accountId\}:db:\{resourceName\}`
2550
+ #
2551
+ # @option params [required, String] :stat
2552
+ # The statistic of the projected metrics.
2553
+ #
2554
+ # @option params [required, Integer] :period
2555
+ # The granularity, in seconds, of the projected metrics data points.
2556
+ #
2557
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
2558
+ # The timestamp of the first projected metrics data point to return.
2559
+ #
2560
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
2561
+ # The timestamp of the last projected metrics data point to return.
2562
+ #
2563
+ # @option params [Types::RecommendationPreferences] :recommendation_preferences
2564
+ # Describes the recommendation preferences to return in the response of
2565
+ # a GetAutoScalingGroupRecommendations, GetEC2InstanceRecommendations,
2566
+ # GetEC2RecommendationProjectedMetrics, GetRDSDatabaseRecommendations,
2567
+ # and GetRDSDatabaseRecommendationProjectedMetrics request.
2568
+ #
2569
+ # @return [Types::GetRDSDatabaseRecommendationProjectedMetricsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2570
+ #
2571
+ # * {Types::GetRDSDatabaseRecommendationProjectedMetricsResponse#recommended_option_projected_metrics #recommended_option_projected_metrics} => Array&lt;Types::RDSDatabaseRecommendedOptionProjectedMetric&gt;
2572
+ #
2573
+ # @example Request syntax with placeholder values
2574
+ #
2575
+ # resp = client.get_rds_database_recommendation_projected_metrics({
2576
+ # resource_arn: "ResourceArn", # required
2577
+ # stat: "Maximum", # required, accepts Maximum, Average
2578
+ # period: 1, # required
2579
+ # start_time: Time.now, # required
2580
+ # end_time: Time.now, # required
2581
+ # recommendation_preferences: {
2582
+ # cpu_vendor_architectures: ["AWS_ARM64"], # accepts AWS_ARM64, CURRENT
2583
+ # },
2584
+ # })
2585
+ #
2586
+ # @example Response structure
2587
+ #
2588
+ # resp.recommended_option_projected_metrics #=> Array
2589
+ # resp.recommended_option_projected_metrics[0].recommended_db_instance_class #=> String
2590
+ # resp.recommended_option_projected_metrics[0].rank #=> Integer
2591
+ # resp.recommended_option_projected_metrics[0].projected_metrics #=> Array
2592
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].name #=> String, one of "CPU", "Memory", "EBSVolumeStorageSpaceUtilization", "NetworkReceiveThroughput", "NetworkTransmitThroughput", "EBSVolumeReadIOPS", "EBSVolumeWriteIOPS", "EBSVolumeReadThroughput", "EBSVolumeWriteThroughput", "DatabaseConnections"
2593
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].timestamps #=> Array
2594
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].timestamps[0] #=> Time
2595
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].values #=> Array
2596
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].values[0] #=> Float
2597
+ #
2598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetRDSDatabaseRecommendationProjectedMetrics AWS API Documentation
2599
+ #
2600
+ # @overload get_rds_database_recommendation_projected_metrics(params = {})
2601
+ # @param [Hash] params ({})
2602
+ def get_rds_database_recommendation_projected_metrics(params = {}, options = {})
2603
+ req = build_request(:get_rds_database_recommendation_projected_metrics, params)
2604
+ req.send_request(options)
2605
+ end
2606
+
2607
+ # Returns Amazon RDS recommendations.
2608
+ #
2609
+ # Compute Optimizer generates recommendations for Amazon RDS that meet a
2610
+ # specific set of requirements. For more information, see the [Supported
2611
+ # resources and requirements][1] in the *Compute Optimizer User Guide*.
2612
+ #
2613
+ #
2614
+ #
2615
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/requirements.html
2616
+ #
2617
+ # @option params [Array<String>] :resource_arns
2618
+ # The ARN that identifies the Amazon RDS.
2619
+ #
2620
+ # The following is the format of the ARN:
2621
+ #
2622
+ # `arn:aws:rds:\{region\}:\{accountId\}:db:\{resourceName\}`
2623
+ #
2624
+ # The following is the format of a DB Cluster ARN:
2625
+ #
2626
+ # `arn:aws:rds:\{region\}:\{accountId\}:cluster:\{resourceName\}`
2627
+ #
2628
+ # @option params [String] :next_token
2629
+ # The token to advance to the next page of Amazon RDS recommendations.
2630
+ #
2631
+ # @option params [Integer] :max_results
2632
+ # The maximum number of Amazon RDS recommendations to return with a
2633
+ # single request.
2634
+ #
2635
+ # To retrieve the remaining results, make another request with the
2636
+ # returned `nextToken` value.
2637
+ #
2638
+ # @option params [Array<Types::RDSDBRecommendationFilter>] :filters
2639
+ # An array of objects to specify a filter that returns a more specific
2640
+ # list of Amazon RDS recommendations.
2641
+ #
2642
+ # @option params [Array<String>] :account_ids
2643
+ # Return the Amazon RDS recommendations to the specified Amazon Web
2644
+ # Services account IDs.
2645
+ #
2646
+ # If your account is the management account or the delegated
2647
+ # administrator of an organization, use this parameter to return the
2648
+ # Amazon RDS recommendations to specific member accounts.
2649
+ #
2650
+ # You can only specify one account ID per request.
2651
+ #
2652
+ # @option params [Types::RecommendationPreferences] :recommendation_preferences
2653
+ # Describes the recommendation preferences to return in the response of
2654
+ # a GetAutoScalingGroupRecommendations, GetEC2InstanceRecommendations,
2655
+ # GetEC2RecommendationProjectedMetrics, GetRDSDatabaseRecommendations,
2656
+ # and GetRDSDatabaseRecommendationProjectedMetrics request.
2657
+ #
2658
+ # @return [Types::GetRDSDatabaseRecommendationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2659
+ #
2660
+ # * {Types::GetRDSDatabaseRecommendationsResponse#next_token #next_token} => String
2661
+ # * {Types::GetRDSDatabaseRecommendationsResponse#rds_db_recommendations #rds_db_recommendations} => Array&lt;Types::RDSDBRecommendation&gt;
2662
+ # * {Types::GetRDSDatabaseRecommendationsResponse#errors #errors} => Array&lt;Types::GetRecommendationError&gt;
2663
+ #
2664
+ # @example Request syntax with placeholder values
2665
+ #
2666
+ # resp = client.get_rds_database_recommendations({
2667
+ # resource_arns: ["ResourceArn"],
2668
+ # next_token: "NextToken",
2669
+ # max_results: 1,
2670
+ # filters: [
2671
+ # {
2672
+ # name: "InstanceFinding", # accepts InstanceFinding, InstanceFindingReasonCode, StorageFinding, StorageFindingReasonCode, Idle
2673
+ # values: ["FilterValue"],
2674
+ # },
2675
+ # ],
2676
+ # account_ids: ["AccountId"],
2677
+ # recommendation_preferences: {
2678
+ # cpu_vendor_architectures: ["AWS_ARM64"], # accepts AWS_ARM64, CURRENT
2679
+ # },
2680
+ # })
2681
+ #
2682
+ # @example Response structure
2683
+ #
2684
+ # resp.next_token #=> String
2685
+ # resp.rds_db_recommendations #=> Array
2686
+ # resp.rds_db_recommendations[0].resource_arn #=> String
2687
+ # resp.rds_db_recommendations[0].account_id #=> String
2688
+ # resp.rds_db_recommendations[0].engine #=> String
2689
+ # resp.rds_db_recommendations[0].engine_version #=> String
2690
+ # resp.rds_db_recommendations[0].current_db_instance_class #=> String
2691
+ # resp.rds_db_recommendations[0].current_storage_configuration.storage_type #=> String
2692
+ # resp.rds_db_recommendations[0].current_storage_configuration.allocated_storage #=> Integer
2693
+ # resp.rds_db_recommendations[0].current_storage_configuration.iops #=> Integer
2694
+ # resp.rds_db_recommendations[0].current_storage_configuration.max_allocated_storage #=> Integer
2695
+ # resp.rds_db_recommendations[0].current_storage_configuration.storage_throughput #=> Integer
2696
+ # resp.rds_db_recommendations[0].idle #=> String, one of "True", "False"
2697
+ # resp.rds_db_recommendations[0].instance_finding #=> String, one of "Optimized", "Underprovisioned", "Overprovisioned"
2698
+ # resp.rds_db_recommendations[0].storage_finding #=> String, one of "Optimized", "Underprovisioned", "Overprovisioned"
2699
+ # resp.rds_db_recommendations[0].instance_finding_reason_codes #=> Array
2700
+ # resp.rds_db_recommendations[0].instance_finding_reason_codes[0] #=> String, one of "CPUOverprovisioned", "NetworkBandwidthOverprovisioned", "EBSIOPSOverprovisioned", "EBSThroughputOverprovisioned", "CPUUnderprovisioned", "NetworkBandwidthUnderprovisioned", "EBSThroughputUnderprovisioned", "NewGenerationDBInstanceClassAvailable", "NewEngineVersionAvailable"
2701
+ # resp.rds_db_recommendations[0].storage_finding_reason_codes #=> Array
2702
+ # resp.rds_db_recommendations[0].storage_finding_reason_codes[0] #=> String, one of "EBSVolumeAllocatedStorageUnderprovisioned", "EBSVolumeThroughputUnderprovisioned", "EBSVolumeIOPSOverprovisioned", "EBSVolumeThroughputOverprovisioned", "NewGenerationStorageTypeAvailable"
2703
+ # resp.rds_db_recommendations[0].instance_recommendation_options #=> Array
2704
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].db_instance_class #=> String
2705
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].projected_utilization_metrics #=> Array
2706
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].projected_utilization_metrics[0].name #=> String, one of "CPU", "Memory", "EBSVolumeStorageSpaceUtilization", "NetworkReceiveThroughput", "NetworkTransmitThroughput", "EBSVolumeReadIOPS", "EBSVolumeWriteIOPS", "EBSVolumeReadThroughput", "EBSVolumeWriteThroughput", "DatabaseConnections"
2707
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].projected_utilization_metrics[0].statistic #=> String, one of "Maximum", "Minimum", "Average"
2708
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].projected_utilization_metrics[0].value #=> Float
2709
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].performance_risk #=> Float
2710
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].rank #=> Integer
2711
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].savings_opportunity.savings_opportunity_percentage #=> Float
2712
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
2713
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].savings_opportunity.estimated_monthly_savings.value #=> Float
2714
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].savings_opportunity_after_discounts.savings_opportunity_percentage #=> Float
2715
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
2716
+ # resp.rds_db_recommendations[0].instance_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
2717
+ # resp.rds_db_recommendations[0].storage_recommendation_options #=> Array
2718
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].storage_configuration.storage_type #=> String
2719
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].storage_configuration.allocated_storage #=> Integer
2720
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].storage_configuration.iops #=> Integer
2721
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].storage_configuration.max_allocated_storage #=> Integer
2722
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].storage_configuration.storage_throughput #=> Integer
2723
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].rank #=> Integer
2724
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].savings_opportunity.savings_opportunity_percentage #=> Float
2725
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
2726
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].savings_opportunity.estimated_monthly_savings.value #=> Float
2727
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].savings_opportunity_after_discounts.savings_opportunity_percentage #=> Float
2728
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
2729
+ # resp.rds_db_recommendations[0].storage_recommendation_options[0].savings_opportunity_after_discounts.estimated_monthly_savings.value #=> Float
2730
+ # resp.rds_db_recommendations[0].utilization_metrics #=> Array
2731
+ # resp.rds_db_recommendations[0].utilization_metrics[0].name #=> String, one of "CPU", "Memory", "EBSVolumeStorageSpaceUtilization", "NetworkReceiveThroughput", "NetworkTransmitThroughput", "EBSVolumeReadIOPS", "EBSVolumeWriteIOPS", "EBSVolumeReadThroughput", "EBSVolumeWriteThroughput", "DatabaseConnections"
2732
+ # resp.rds_db_recommendations[0].utilization_metrics[0].statistic #=> String, one of "Maximum", "Minimum", "Average"
2733
+ # resp.rds_db_recommendations[0].utilization_metrics[0].value #=> Float
2734
+ # resp.rds_db_recommendations[0].effective_recommendation_preferences.cpu_vendor_architectures #=> Array
2735
+ # resp.rds_db_recommendations[0].effective_recommendation_preferences.cpu_vendor_architectures[0] #=> String, one of "AWS_ARM64", "CURRENT"
2736
+ # resp.rds_db_recommendations[0].effective_recommendation_preferences.enhanced_infrastructure_metrics #=> String, one of "Active", "Inactive"
2737
+ # resp.rds_db_recommendations[0].effective_recommendation_preferences.look_back_period #=> String, one of "DAYS_14", "DAYS_32", "DAYS_93"
2738
+ # resp.rds_db_recommendations[0].effective_recommendation_preferences.savings_estimation_mode.source #=> String, one of "PublicPricing", "CostExplorerRightsizing", "CostOptimizationHub"
2739
+ # resp.rds_db_recommendations[0].lookback_period_in_days #=> Float
2740
+ # resp.rds_db_recommendations[0].last_refresh_timestamp #=> Time
2741
+ # resp.rds_db_recommendations[0].tags #=> Array
2742
+ # resp.rds_db_recommendations[0].tags[0].key #=> String
2743
+ # resp.rds_db_recommendations[0].tags[0].value #=> String
2744
+ # resp.errors #=> Array
2745
+ # resp.errors[0].identifier #=> String
2746
+ # resp.errors[0].code #=> String
2747
+ # resp.errors[0].message #=> String
2748
+ #
2749
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetRDSDatabaseRecommendations AWS API Documentation
2750
+ #
2751
+ # @overload get_rds_database_recommendations(params = {})
2752
+ # @param [Hash] params ({})
2753
+ def get_rds_database_recommendations(params = {}, options = {})
2754
+ req = build_request(:get_rds_database_recommendations, params)
2755
+ req.send_request(options)
2756
+ end
2757
+
2404
2758
  # Returns existing recommendation preferences, such as enhanced
2405
2759
  # infrastructure metrics.
2406
2760
  #
@@ -2425,11 +2779,6 @@ module Aws::ComputeOptimizer
2425
2779
  # option encompasses only instances that are part of an Auto Scaling
2426
2780
  # group.
2427
2781
  #
2428
- # <note markdown="1"> The valid values for this parameter are `Ec2Instance` and
2429
- # `AutoScalingGroup`.
2430
- #
2431
- # </note>
2432
- #
2433
2782
  # @option params [Types::Scope] :scope
2434
2783
  # An object that describes the scope of the recommendation preference to
2435
2784
  # return.
@@ -2464,7 +2813,7 @@ module Aws::ComputeOptimizer
2464
2813
  # @example Request syntax with placeholder values
2465
2814
  #
2466
2815
  # resp = client.get_recommendation_preferences({
2467
- # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService, License
2816
+ # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService, License, RdsDBInstance
2468
2817
  # scope: {
2469
2818
  # name: "Organization", # accepts Organization, AccountId, ResourceArn
2470
2819
  # value: "ScopeValue",
@@ -2479,7 +2828,7 @@ module Aws::ComputeOptimizer
2479
2828
  # resp.recommendation_preferences_details #=> Array
2480
2829
  # resp.recommendation_preferences_details[0].scope.name #=> String, one of "Organization", "AccountId", "ResourceArn"
2481
2830
  # resp.recommendation_preferences_details[0].scope.value #=> String
2482
- # resp.recommendation_preferences_details[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable", "EcsService", "License"
2831
+ # resp.recommendation_preferences_details[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable", "EcsService", "License", "RdsDBInstance"
2483
2832
  # resp.recommendation_preferences_details[0].enhanced_infrastructure_metrics #=> String, one of "Active", "Inactive"
2484
2833
  # resp.recommendation_preferences_details[0].inferred_workload_types #=> String, one of "Active", "Inactive"
2485
2834
  # resp.recommendation_preferences_details[0].external_metrics_preference.source #=> String, one of "Datadog", "Dynatrace", "NewRelic", "Instana"
@@ -2571,7 +2920,7 @@ module Aws::ComputeOptimizer
2571
2920
  # resp.recommendation_summaries[0].summaries[0].reason_code_summaries #=> Array
2572
2921
  # resp.recommendation_summaries[0].summaries[0].reason_code_summaries[0].name #=> String, one of "MemoryOverprovisioned", "MemoryUnderprovisioned"
2573
2922
  # resp.recommendation_summaries[0].summaries[0].reason_code_summaries[0].value #=> Float
2574
- # resp.recommendation_summaries[0].recommendation_resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "EcsService", "License"
2923
+ # resp.recommendation_summaries[0].recommendation_resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "EcsService", "License", "RdsDBInstance", "RdsDBInstanceStorage"
2575
2924
  # resp.recommendation_summaries[0].account_id #=> String
2576
2925
  # resp.recommendation_summaries[0].savings_opportunity.savings_opportunity_percentage #=> Float
2577
2926
  # resp.recommendation_summaries[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
@@ -2613,11 +2962,6 @@ module Aws::ComputeOptimizer
2613
2962
  # option encompasses only instances that are part of an Auto Scaling
2614
2963
  # group.
2615
2964
  #
2616
- # <note markdown="1"> The valid values for this parameter are `Ec2Instance` and
2617
- # `AutoScalingGroup`.
2618
- #
2619
- # </note>
2620
- #
2621
2965
  # @option params [Types::Scope] :scope
2622
2966
  # An object that describes the scope of the recommendation preference to
2623
2967
  # create.
@@ -2762,7 +3106,7 @@ module Aws::ComputeOptimizer
2762
3106
  # @example Request syntax with placeholder values
2763
3107
  #
2764
3108
  # resp = client.put_recommendation_preferences({
2765
- # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService, License
3109
+ # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService, License, RdsDBInstance
2766
3110
  # scope: {
2767
3111
  # name: "Organization", # accepts Organization, AccountId, ResourceArn
2768
3112
  # value: "ScopeValue",
@@ -2890,7 +3234,7 @@ module Aws::ComputeOptimizer
2890
3234
  params: params,
2891
3235
  config: config)
2892
3236
  context[:gem_name] = 'aws-sdk-computeoptimizer'
2893
- context[:gem_version] = '1.57.0'
3237
+ context[:gem_version] = '1.59.0'
2894
3238
  Seahorse::Client::Request.new(handlers, context)
2895
3239
  end
2896
3240