aws-sdk-computeoptimizer 1.35.0 → 1.36.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9208ba72141d857d64509d05f5fad6e620b2d260416af3de3144bbba67a5026
4
- data.tar.gz: 2933d38f6cb115fc1aa0039784ab076e480001c9165d3d767d1ce13a4e44e494
3
+ metadata.gz: b68204fd661f1889eba77a4701d4e5b588d63c0e82988461988dffa32019076f
4
+ data.tar.gz: a66797eab250ed6082d70cc6e9fdeb1669098f4cc6d56ff8cbaf4196b904c8b0
5
5
  SHA512:
6
- metadata.gz: 40ed2d1f666b87089584622964d20f10c1bb875cf3e66eda97c394665f74cd7717d664d8dc576fe0859955dc5854eb6f555dcb6c4c01736b895f66b1637a7e67
7
- data.tar.gz: 5d54f0e03324d66047820884a7eaed663277fcd2c235488944b196a60682163a05cf74c883319eb40214f6848ec29a141df1c47e6630a932ba3f5b99ba8e2e89
6
+ metadata.gz: 26180c3484f669a9caed27c8387bc5eeac742f8e32340a68afe6913029369f239c943d26a8d4cb38599a6aa359c637665fe489d4dc763e7d461aad39f422d428
7
+ data.tar.gz: 5c92d70b55535c4401f7f60403ba10d357c5803a731839f9ebf10cfb11ee7507e4adef5ee0f4d8b78c22a4f38e658e8825a40f89d76d9bd52f5e99ce15c69a28
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.36.0 (2022-12-22)
5
+ ------------------
6
+
7
+ * Feature - This release enables AWS Compute Optimizer to analyze and generate optimization recommendations for ecs services running on Fargate.
8
+
4
9
  1.35.0 (2022-11-29)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.35.0
1
+ 1.36.0
@@ -423,7 +423,7 @@ module Aws::ComputeOptimizer
423
423
  # @example Request syntax with placeholder values
424
424
  #
425
425
  # resp = client.delete_recommendation_preferences({
426
- # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable
426
+ # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService
427
427
  # scope: {
428
428
  # name: "Organization", # accepts Organization, AccountId, ResourceArn
429
429
  # value: "ScopeValue",
@@ -475,6 +475,8 @@ module Aws::ComputeOptimizer
475
475
  # * {Types::DescribeRecommendationExportJobsResponse#recommendation_export_jobs #recommendation_export_jobs} => Array<Types::RecommendationExportJob>
476
476
  # * {Types::DescribeRecommendationExportJobsResponse#next_token #next_token} => String
477
477
  #
478
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
479
+ #
478
480
  # @example Request syntax with placeholder values
479
481
  #
480
482
  # resp = client.describe_recommendation_export_jobs({
@@ -496,7 +498,7 @@ module Aws::ComputeOptimizer
496
498
  # resp.recommendation_export_jobs[0].destination.s3.bucket #=> String
497
499
  # resp.recommendation_export_jobs[0].destination.s3.key #=> String
498
500
  # resp.recommendation_export_jobs[0].destination.s3.metadata_key #=> String
499
- # resp.recommendation_export_jobs[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable"
501
+ # resp.recommendation_export_jobs[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable", "EcsService"
500
502
  # resp.recommendation_export_jobs[0].status #=> String, one of "Queued", "InProgress", "Complete", "Failed"
501
503
  # resp.recommendation_export_jobs[0].creation_timestamp #=> Time
502
504
  # resp.recommendation_export_jobs[0].last_updated_timestamp #=> Time
@@ -916,6 +918,136 @@ module Aws::ComputeOptimizer
916
918
  req.send_request(options)
917
919
  end
918
920
 
921
+ # Exports optimization recommendations for Amazon ECS services on
922
+ # Fargate.
923
+ #
924
+ # Recommendations are exported in a CSV file, and its metadata in a JSON
925
+ # file, to an existing Amazon Simple Storage Service (Amazon S3) bucket
926
+ # that you specify. For more information, see [Exporting
927
+ # Recommendations][1] in the *Compute Optimizer User Guide*.
928
+ #
929
+ # You can only have one Amazon ECS service export job in progress per
930
+ # Amazon Web Services Region.
931
+ #
932
+ #
933
+ #
934
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/exporting-recommendations.html
935
+ #
936
+ # @option params [Array<String>] :account_ids
937
+ # The Amazon Web Services account IDs for the export ECS service
938
+ # recommendations.
939
+ #
940
+ # If your account is the management account or the delegated
941
+ # administrator of an organization, use this parameter to specify the
942
+ # member account you want to export recommendations to.
943
+ #
944
+ # This parameter can't be specified together with the include member
945
+ # accounts parameter. The parameters are mutually exclusive.
946
+ #
947
+ # If this parameter or the include member accounts parameter is omitted,
948
+ # the recommendations for member accounts aren't included in the
949
+ # export.
950
+ #
951
+ # You can specify multiple account IDs per request.
952
+ #
953
+ # @option params [Array<Types::ECSServiceRecommendationFilter>] :filters
954
+ # An array of objects to specify a filter that exports a more specific
955
+ # set of ECS service recommendations.
956
+ #
957
+ # @option params [Array<String>] :fields_to_export
958
+ # The recommendations data to include in the export file. For more
959
+ # information about the fields that can be exported, see [Exported
960
+ # files][1] in the *Compute Optimizer User Guide*.
961
+ #
962
+ #
963
+ #
964
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/exporting-recommendations.html#exported-files
965
+ #
966
+ # @option params [required, Types::S3DestinationConfig] :s3_destination_config
967
+ # Describes the destination Amazon Simple Storage Service (Amazon S3)
968
+ # bucket name and key prefix for a recommendations export job.
969
+ #
970
+ # You must create the destination Amazon S3 bucket for your
971
+ # recommendations export before you create the export job. Compute
972
+ # Optimizer does not create the S3 bucket for you. After you create the
973
+ # S3 bucket, ensure that it has the required permission policy to allow
974
+ # Compute Optimizer to write the export file to it. If you plan to
975
+ # specify an object prefix when you create the export job, you must
976
+ # include the object prefix in the policy that you add to the S3 bucket.
977
+ # For more information, see [Amazon S3 Bucket Policy for Compute
978
+ # Optimizer][1] in the *Compute Optimizer User Guide*.
979
+ #
980
+ #
981
+ #
982
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/create-s3-bucket-policy-for-compute-optimizer.html
983
+ #
984
+ # @option params [String] :file_format
985
+ # The format of the export file.
986
+ #
987
+ # The CSV file is the only export file format currently supported.
988
+ #
989
+ # @option params [Boolean] :include_member_accounts
990
+ # If your account is the management account or the delegated
991
+ # administrator of an organization, this parameter indicates whether to
992
+ # include recommendations for resources in all member accounts of the
993
+ # organization.
994
+ #
995
+ # The member accounts must also be opted in to Compute Optimizer, and
996
+ # trusted access for Compute Optimizer must be enabled in the
997
+ # organization account. For more information, see [Compute Optimizer and
998
+ # Amazon Web Services Organizations trusted access][1] in the *Compute
999
+ # Optimizer User Guide*.
1000
+ #
1001
+ # If this parameter is omitted, recommendations for member accounts of
1002
+ # the organization aren't included in the export file.
1003
+ #
1004
+ # If this parameter or the account ID parameter is omitted,
1005
+ # recommendations for member accounts aren't included in the export.
1006
+ #
1007
+ #
1008
+ #
1009
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/security-iam.html#trusted-service-access
1010
+ #
1011
+ # @return [Types::ExportECSServiceRecommendationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1012
+ #
1013
+ # * {Types::ExportECSServiceRecommendationsResponse#job_id #job_id} => String
1014
+ # * {Types::ExportECSServiceRecommendationsResponse#s3_destination #s3_destination} => Types::S3Destination
1015
+ #
1016
+ # @example Request syntax with placeholder values
1017
+ #
1018
+ # resp = client.export_ecs_service_recommendations({
1019
+ # account_ids: ["AccountId"],
1020
+ # filters: [
1021
+ # {
1022
+ # name: "Finding", # accepts Finding, FindingReasonCode
1023
+ # values: ["FilterValue"],
1024
+ # },
1025
+ # ],
1026
+ # fields_to_export: ["AccountId"], # accepts AccountId, ServiceArn, LookbackPeriodInDays, LastRefreshTimestamp, LaunchType, CurrentPerformanceRisk, CurrentServiceConfigurationMemory, CurrentServiceConfigurationCpu, CurrentServiceConfigurationTaskDefinitionArn, CurrentServiceConfigurationAutoScalingConfiguration, CurrentServiceContainerConfigurations, UtilizationMetricsCpuMaximum, UtilizationMetricsMemoryMaximum, Finding, FindingReasonCodes, RecommendationOptionsMemory, RecommendationOptionsCpu, RecommendationOptionsSavingsOpportunityPercentage, RecommendationOptionsEstimatedMonthlySavingsCurrency, RecommendationOptionsEstimatedMonthlySavingsValue, RecommendationOptionsContainerRecommendations, RecommendationOptionsProjectedUtilizationMetricsCpuMaximum, RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum
1027
+ # s3_destination_config: { # required
1028
+ # bucket: "DestinationBucket",
1029
+ # key_prefix: "DestinationKeyPrefix",
1030
+ # },
1031
+ # file_format: "Csv", # accepts Csv
1032
+ # include_member_accounts: false,
1033
+ # })
1034
+ #
1035
+ # @example Response structure
1036
+ #
1037
+ # resp.job_id #=> String
1038
+ # resp.s3_destination.bucket #=> String
1039
+ # resp.s3_destination.key #=> String
1040
+ # resp.s3_destination.metadata_key #=> String
1041
+ #
1042
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ExportECSServiceRecommendations AWS API Documentation
1043
+ #
1044
+ # @overload export_ecs_service_recommendations(params = {})
1045
+ # @param [Hash] params ({})
1046
+ def export_ecs_service_recommendations(params = {}, options = {})
1047
+ req = build_request(:export_ecs_service_recommendations, params)
1048
+ req.send_request(options)
1049
+ end
1050
+
919
1051
  # Exports optimization recommendations for Lambda functions.
920
1052
  #
921
1053
  # Recommendations are exported in a comma-separated values (.csv) file,
@@ -1376,7 +1508,7 @@ module Aws::ComputeOptimizer
1376
1508
  # resp.instance_recommendations[0].recommendation_options[0].migration_effort #=> String, one of "VeryLow", "Low", "Medium", "High"
1377
1509
  # resp.instance_recommendations[0].recommendation_sources #=> Array
1378
1510
  # resp.instance_recommendations[0].recommendation_sources[0].recommendation_source_arn #=> String
1379
- # resp.instance_recommendations[0].recommendation_sources[0].recommendation_source_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction"
1511
+ # resp.instance_recommendations[0].recommendation_sources[0].recommendation_source_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "EcsService"
1380
1512
  # resp.instance_recommendations[0].last_refresh_timestamp #=> Time
1381
1513
  # resp.instance_recommendations[0].current_performance_risk #=> String, one of "VeryLow", "Low", "Medium", "High"
1382
1514
  # resp.instance_recommendations[0].effective_recommendation_preferences.cpu_vendor_architectures #=> Array
@@ -1473,6 +1605,183 @@ module Aws::ComputeOptimizer
1473
1605
  req.send_request(options)
1474
1606
  end
1475
1607
 
1608
+ # Returns the projected metrics of Amazon ECS service recommendations.
1609
+ #
1610
+ # @option params [required, String] :service_arn
1611
+ # The ARN that identifies the ECS service.
1612
+ #
1613
+ # The following is the format of the ARN:
1614
+ #
1615
+ # `arn:aws:ecs:region:aws_account_id:service/cluster-name/service-name`
1616
+ #
1617
+ # @option params [required, String] :stat
1618
+ # The statistic of the projected metrics.
1619
+ #
1620
+ # @option params [required, Integer] :period
1621
+ # The granularity, in seconds, of the projected metrics data points.
1622
+ #
1623
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
1624
+ # The timestamp of the first projected metrics data point to return.
1625
+ #
1626
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
1627
+ # The timestamp of the last projected metrics data point to return.
1628
+ #
1629
+ # @return [Types::GetECSServiceRecommendationProjectedMetricsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1630
+ #
1631
+ # * {Types::GetECSServiceRecommendationProjectedMetricsResponse#recommended_option_projected_metrics #recommended_option_projected_metrics} => Array&lt;Types::ECSServiceRecommendedOptionProjectedMetric&gt;
1632
+ #
1633
+ # @example Request syntax with placeholder values
1634
+ #
1635
+ # resp = client.get_ecs_service_recommendation_projected_metrics({
1636
+ # service_arn: "ServiceArn", # required
1637
+ # stat: "Maximum", # required, accepts Maximum, Average
1638
+ # period: 1, # required
1639
+ # start_time: Time.now, # required
1640
+ # end_time: Time.now, # required
1641
+ # })
1642
+ #
1643
+ # @example Response structure
1644
+ #
1645
+ # resp.recommended_option_projected_metrics #=> Array
1646
+ # resp.recommended_option_projected_metrics[0].recommended_cpu_units #=> Integer
1647
+ # resp.recommended_option_projected_metrics[0].recommended_memory_size #=> Integer
1648
+ # resp.recommended_option_projected_metrics[0].projected_metrics #=> Array
1649
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].name #=> String, one of "Cpu", "Memory"
1650
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].timestamps #=> Array
1651
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].timestamps[0] #=> Time
1652
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].upper_bound_values #=> Array
1653
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].upper_bound_values[0] #=> Float
1654
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].lower_bound_values #=> Array
1655
+ # resp.recommended_option_projected_metrics[0].projected_metrics[0].lower_bound_values[0] #=> Float
1656
+ #
1657
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetECSServiceRecommendationProjectedMetrics AWS API Documentation
1658
+ #
1659
+ # @overload get_ecs_service_recommendation_projected_metrics(params = {})
1660
+ # @param [Hash] params ({})
1661
+ def get_ecs_service_recommendation_projected_metrics(params = {}, options = {})
1662
+ req = build_request(:get_ecs_service_recommendation_projected_metrics, params)
1663
+ req.send_request(options)
1664
+ end
1665
+
1666
+ # Returns Amazon ECS service recommendations.
1667
+ #
1668
+ # Compute Optimizer generates recommendations for Amazon ECS services on
1669
+ # Fargate that meet a specific set of requirements. For more
1670
+ # information, see the [Supported resources and requirements][1] in the
1671
+ # *Compute Optimizer User Guide*.
1672
+ #
1673
+ #
1674
+ #
1675
+ # [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/requirements.html
1676
+ #
1677
+ # @option params [Array<String>] :service_arns
1678
+ # The ARN that identifies the ECS service.
1679
+ #
1680
+ # The following is the format of the ARN:
1681
+ #
1682
+ # `arn:aws:ecs:region:aws_account_id:service/cluster-name/service-name`
1683
+ #
1684
+ # @option params [String] :next_token
1685
+ # The token to advance to the next page of ECS service recommendations.
1686
+ #
1687
+ # @option params [Integer] :max_results
1688
+ # The maximum number of ECS service recommendations to return with a
1689
+ # single request.
1690
+ #
1691
+ # To retrieve the remaining results, make another request with the
1692
+ # returned `nextToken` value.
1693
+ #
1694
+ # @option params [Array<Types::ECSServiceRecommendationFilter>] :filters
1695
+ # An array of objects to specify a filter that returns a more specific
1696
+ # list of ECS service recommendations.
1697
+ #
1698
+ # @option params [Array<String>] :account_ids
1699
+ # Return the ECS service recommendations to the specified Amazon Web
1700
+ # Services account IDs.
1701
+ #
1702
+ # If your account is the management account or the delegated
1703
+ # administrator of an organization, use this parameter to return the ECS
1704
+ # service recommendations to specific member accounts.
1705
+ #
1706
+ # You can only specify one account ID per request.
1707
+ #
1708
+ # @return [Types::GetECSServiceRecommendationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1709
+ #
1710
+ # * {Types::GetECSServiceRecommendationsResponse#next_token #next_token} => String
1711
+ # * {Types::GetECSServiceRecommendationsResponse#ecs_service_recommendations #ecs_service_recommendations} => Array&lt;Types::ECSServiceRecommendation&gt;
1712
+ # * {Types::GetECSServiceRecommendationsResponse#errors #errors} => Array&lt;Types::GetRecommendationError&gt;
1713
+ #
1714
+ # @example Request syntax with placeholder values
1715
+ #
1716
+ # resp = client.get_ecs_service_recommendations({
1717
+ # service_arns: ["ServiceArn"],
1718
+ # next_token: "NextToken",
1719
+ # max_results: 1,
1720
+ # filters: [
1721
+ # {
1722
+ # name: "Finding", # accepts Finding, FindingReasonCode
1723
+ # values: ["FilterValue"],
1724
+ # },
1725
+ # ],
1726
+ # account_ids: ["AccountId"],
1727
+ # })
1728
+ #
1729
+ # @example Response structure
1730
+ #
1731
+ # resp.next_token #=> String
1732
+ # resp.ecs_service_recommendations #=> Array
1733
+ # resp.ecs_service_recommendations[0].service_arn #=> String
1734
+ # resp.ecs_service_recommendations[0].account_id #=> String
1735
+ # resp.ecs_service_recommendations[0].current_service_configuration.memory #=> Integer
1736
+ # resp.ecs_service_recommendations[0].current_service_configuration.cpu #=> Integer
1737
+ # resp.ecs_service_recommendations[0].current_service_configuration.container_configurations #=> Array
1738
+ # resp.ecs_service_recommendations[0].current_service_configuration.container_configurations[0].container_name #=> String
1739
+ # resp.ecs_service_recommendations[0].current_service_configuration.container_configurations[0].memory_size_configuration.memory #=> Integer
1740
+ # resp.ecs_service_recommendations[0].current_service_configuration.container_configurations[0].memory_size_configuration.memory_reservation #=> Integer
1741
+ # resp.ecs_service_recommendations[0].current_service_configuration.container_configurations[0].cpu #=> Integer
1742
+ # resp.ecs_service_recommendations[0].current_service_configuration.auto_scaling_configuration #=> String, one of "TargetTrackingScalingCpu", "TargetTrackingScalingMemory"
1743
+ # resp.ecs_service_recommendations[0].current_service_configuration.task_definition_arn #=> String
1744
+ # resp.ecs_service_recommendations[0].utilization_metrics #=> Array
1745
+ # resp.ecs_service_recommendations[0].utilization_metrics[0].name #=> String, one of "Cpu", "Memory"
1746
+ # resp.ecs_service_recommendations[0].utilization_metrics[0].statistic #=> String, one of "Maximum", "Average"
1747
+ # resp.ecs_service_recommendations[0].utilization_metrics[0].value #=> Float
1748
+ # resp.ecs_service_recommendations[0].lookback_period_in_days #=> Float
1749
+ # resp.ecs_service_recommendations[0].launch_type #=> String, one of "EC2", "Fargate"
1750
+ # resp.ecs_service_recommendations[0].last_refresh_timestamp #=> Time
1751
+ # resp.ecs_service_recommendations[0].finding #=> String, one of "Optimized", "Underprovisioned", "Overprovisioned"
1752
+ # resp.ecs_service_recommendations[0].finding_reason_codes #=> Array
1753
+ # resp.ecs_service_recommendations[0].finding_reason_codes[0] #=> String, one of "MemoryOverprovisioned", "MemoryUnderprovisioned", "CPUOverprovisioned", "CPUUnderprovisioned"
1754
+ # resp.ecs_service_recommendations[0].service_recommendation_options #=> Array
1755
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].memory #=> Integer
1756
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].cpu #=> Integer
1757
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity.savings_opportunity_percentage #=> Float
1758
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
1759
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].savings_opportunity.estimated_monthly_savings.value #=> Float
1760
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics #=> Array
1761
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics[0].name #=> String, one of "Cpu", "Memory"
1762
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics[0].statistic #=> String, one of "Maximum", "Average"
1763
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics[0].lower_bound_value #=> Float
1764
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].projected_utilization_metrics[0].upper_bound_value #=> Float
1765
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations #=> Array
1766
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations[0].container_name #=> String
1767
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations[0].memory_size_configuration.memory #=> Integer
1768
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations[0].memory_size_configuration.memory_reservation #=> Integer
1769
+ # resp.ecs_service_recommendations[0].service_recommendation_options[0].container_recommendations[0].cpu #=> Integer
1770
+ # resp.ecs_service_recommendations[0].current_performance_risk #=> String, one of "VeryLow", "Low", "Medium", "High"
1771
+ # resp.errors #=> Array
1772
+ # resp.errors[0].identifier #=> String
1773
+ # resp.errors[0].code #=> String
1774
+ # resp.errors[0].message #=> String
1775
+ #
1776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetECSServiceRecommendations AWS API Documentation
1777
+ #
1778
+ # @overload get_ecs_service_recommendations(params = {})
1779
+ # @param [Hash] params ({})
1780
+ def get_ecs_service_recommendations(params = {}, options = {})
1781
+ req = build_request(:get_ecs_service_recommendations, params)
1782
+ req.send_request(options)
1783
+ end
1784
+
1476
1785
  # Returns the recommendation preferences that are in effect for a given
1477
1786
  # resource, such as enhanced infrastructure metrics. Considers all
1478
1787
  # applicable preferences that you might have set at the resource,
@@ -1573,6 +1882,8 @@ module Aws::ComputeOptimizer
1573
1882
  # * {Types::GetEnrollmentStatusesForOrganizationResponse#account_enrollment_statuses #account_enrollment_statuses} => Array&lt;Types::AccountEnrollmentStatus&gt;
1574
1883
  # * {Types::GetEnrollmentStatusesForOrganizationResponse#next_token #next_token} => String
1575
1884
  #
1885
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1886
+ #
1576
1887
  # @example Request syntax with placeholder values
1577
1888
  #
1578
1889
  # resp = client.get_enrollment_statuses_for_organization({
@@ -1659,6 +1970,8 @@ module Aws::ComputeOptimizer
1659
1970
  # * {Types::GetLambdaFunctionRecommendationsResponse#next_token #next_token} => String
1660
1971
  # * {Types::GetLambdaFunctionRecommendationsResponse#lambda_function_recommendations #lambda_function_recommendations} => Array&lt;Types::LambdaFunctionRecommendation&gt;
1661
1972
  #
1973
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1974
+ #
1662
1975
  # @example Request syntax with placeholder values
1663
1976
  #
1664
1977
  # resp = client.get_lambda_function_recommendations({
@@ -1771,10 +2084,12 @@ module Aws::ComputeOptimizer
1771
2084
  # * {Types::GetRecommendationPreferencesResponse#next_token #next_token} => String
1772
2085
  # * {Types::GetRecommendationPreferencesResponse#recommendation_preferences_details #recommendation_preferences_details} => Array&lt;Types::RecommendationPreferencesDetail&gt;
1773
2086
  #
2087
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2088
+ #
1774
2089
  # @example Request syntax with placeholder values
1775
2090
  #
1776
2091
  # resp = client.get_recommendation_preferences({
1777
- # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable
2092
+ # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService
1778
2093
  # scope: {
1779
2094
  # name: "Organization", # accepts Organization, AccountId, ResourceArn
1780
2095
  # value: "ScopeValue",
@@ -1789,7 +2104,7 @@ module Aws::ComputeOptimizer
1789
2104
  # resp.recommendation_preferences_details #=> Array
1790
2105
  # resp.recommendation_preferences_details[0].scope.name #=> String, one of "Organization", "AccountId", "ResourceArn"
1791
2106
  # resp.recommendation_preferences_details[0].scope.value #=> String
1792
- # resp.recommendation_preferences_details[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable"
2107
+ # resp.recommendation_preferences_details[0].resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "NotApplicable", "EcsService"
1793
2108
  # resp.recommendation_preferences_details[0].enhanced_infrastructure_metrics #=> String, one of "Active", "Inactive"
1794
2109
  # resp.recommendation_preferences_details[0].inferred_workload_types #=> String, one of "Active", "Inactive"
1795
2110
  # resp.recommendation_preferences_details[0].external_metrics_preference.source #=> String, one of "Datadog", "Dynatrace", "NewRelic", "Instana"
@@ -1819,6 +2134,9 @@ module Aws::ComputeOptimizer
1819
2134
  # * Lambda functions in an account that are `NotOptimized`, or
1820
2135
  # `Optimized`.
1821
2136
  #
2137
+ # * Amazon ECS services in an account that are `Underprovisioned`,
2138
+ # `Overprovisioned`, or `Optimized`.
2139
+ #
1822
2140
  # @option params [Array<String>] :account_ids
1823
2141
  # The ID of the Amazon Web Services account for which to return
1824
2142
  # recommendation summaries.
@@ -1844,6 +2162,8 @@ module Aws::ComputeOptimizer
1844
2162
  # * {Types::GetRecommendationSummariesResponse#next_token #next_token} => String
1845
2163
  # * {Types::GetRecommendationSummariesResponse#recommendation_summaries #recommendation_summaries} => Array&lt;Types::RecommendationSummary&gt;
1846
2164
  #
2165
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2166
+ #
1847
2167
  # @example Request syntax with placeholder values
1848
2168
  #
1849
2169
  # resp = client.get_recommendation_summaries({
@@ -1862,7 +2182,7 @@ module Aws::ComputeOptimizer
1862
2182
  # resp.recommendation_summaries[0].summaries[0].reason_code_summaries #=> Array
1863
2183
  # resp.recommendation_summaries[0].summaries[0].reason_code_summaries[0].name #=> String, one of "MemoryOverprovisioned", "MemoryUnderprovisioned"
1864
2184
  # resp.recommendation_summaries[0].summaries[0].reason_code_summaries[0].value #=> Float
1865
- # resp.recommendation_summaries[0].recommendation_resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction"
2185
+ # resp.recommendation_summaries[0].recommendation_resource_type #=> String, one of "Ec2Instance", "AutoScalingGroup", "EbsVolume", "LambdaFunction", "EcsService"
1866
2186
  # resp.recommendation_summaries[0].account_id #=> String
1867
2187
  # resp.recommendation_summaries[0].savings_opportunity.savings_opportunity_percentage #=> Float
1868
2188
  # resp.recommendation_summaries[0].savings_opportunity.estimated_monthly_savings.currency #=> String, one of "USD", "CNY"
@@ -1985,7 +2305,7 @@ module Aws::ComputeOptimizer
1985
2305
  # @example Request syntax with placeholder values
1986
2306
  #
1987
2307
  # resp = client.put_recommendation_preferences({
1988
- # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable
2308
+ # resource_type: "Ec2Instance", # required, accepts Ec2Instance, AutoScalingGroup, EbsVolume, LambdaFunction, NotApplicable, EcsService
1989
2309
  # scope: {
1990
2310
  # name: "Organization", # accepts Organization, AccountId, ResourceArn
1991
2311
  # value: "ScopeValue",
@@ -2095,7 +2415,7 @@ module Aws::ComputeOptimizer
2095
2415
  params: params,
2096
2416
  config: config)
2097
2417
  context[:gem_name] = 'aws-sdk-computeoptimizer'
2098
- context[:gem_version] = '1.35.0'
2418
+ context[:gem_version] = '1.36.0'
2099
2419
  Seahorse::Client::Request.new(handlers, context)
2100
2420
  end
2101
2421