aws-sdk-computeoptimizer 1.9.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk-computeoptimizer.rb +1 -1
- data/lib/aws-sdk-computeoptimizer/client.rb +273 -28
- data/lib/aws-sdk-computeoptimizer/client_api.rb +200 -0
- data/lib/aws-sdk-computeoptimizer/types.rb +874 -51
- metadata +4 -4
| @@ -84,11 +84,6 @@ module Aws::ComputeOptimizer | |
| 84 84 | 
             
                #     group is correctly provisioned to run your workload based on the
         | 
| 85 85 | 
             
                #     chosen instance type. For optimized resources, Compute Optimizer
         | 
| 86 86 | 
             
                #     might recommend a new generation instance type.
         | 
| 87 | 
            -
                #
         | 
| 88 | 
            -
                #   <note markdown="1"> The values that are returned might be `NOT_OPTIMIZED` or
         | 
| 89 | 
            -
                #   `OPTIMIZED`.
         | 
| 90 | 
            -
                #
         | 
| 91 | 
            -
                #    </note>
         | 
| 92 87 | 
             
                #   @return [String]
         | 
| 93 88 | 
             
                #
         | 
| 94 89 | 
             
                # @!attribute [rw] utilization_metrics
         | 
| @@ -257,6 +252,102 @@ module Aws::ComputeOptimizer | |
| 257 252 | 
             
                  include Aws::Structure
         | 
| 258 253 | 
             
                end
         | 
| 259 254 |  | 
| 255 | 
            +
                # Describes a filter that returns a more specific list of Amazon Elastic
         | 
| 256 | 
            +
                # Block Store (Amazon EBS) volume recommendations.
         | 
| 257 | 
            +
                #
         | 
| 258 | 
            +
                # This filter is used with the `GetEBSVolumeRecommendations` action.
         | 
| 259 | 
            +
                #
         | 
| 260 | 
            +
                # @note When making an API call, you may pass EBSFilter
         | 
| 261 | 
            +
                #   data as a hash:
         | 
| 262 | 
            +
                #
         | 
| 263 | 
            +
                #       {
         | 
| 264 | 
            +
                #         name: "Finding", # accepts Finding
         | 
| 265 | 
            +
                #         values: ["FilterValue"],
         | 
| 266 | 
            +
                #       }
         | 
| 267 | 
            +
                #
         | 
| 268 | 
            +
                # @!attribute [rw] name
         | 
| 269 | 
            +
                #   The name of the filter.
         | 
| 270 | 
            +
                #
         | 
| 271 | 
            +
                #   Specify `Finding` to return recommendations with a specific finding
         | 
| 272 | 
            +
                #   classification (e.g., `Optimized`).
         | 
| 273 | 
            +
                #   @return [String]
         | 
| 274 | 
            +
                #
         | 
| 275 | 
            +
                # @!attribute [rw] values
         | 
| 276 | 
            +
                #   The value of the filter.
         | 
| 277 | 
            +
                #
         | 
| 278 | 
            +
                #   The valid values are `Optimized`, or `NotOptimized`.
         | 
| 279 | 
            +
                #   @return [Array<String>]
         | 
| 280 | 
            +
                #
         | 
| 281 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/EBSFilter AWS API Documentation
         | 
| 282 | 
            +
                #
         | 
| 283 | 
            +
                class EBSFilter < Struct.new(
         | 
| 284 | 
            +
                  :name,
         | 
| 285 | 
            +
                  :values)
         | 
| 286 | 
            +
                  SENSITIVE = []
         | 
| 287 | 
            +
                  include Aws::Structure
         | 
| 288 | 
            +
                end
         | 
| 289 | 
            +
             | 
| 290 | 
            +
                # Describes a utilization metric of an Amazon Elastic Block Store
         | 
| 291 | 
            +
                # (Amazon EBS) volume.
         | 
| 292 | 
            +
                #
         | 
| 293 | 
            +
                # Compare the utilization metric data of your resource against its
         | 
| 294 | 
            +
                # projected utilization metric data to determine the performance
         | 
| 295 | 
            +
                # difference between your current resource and the recommended option.
         | 
| 296 | 
            +
                #
         | 
| 297 | 
            +
                # @!attribute [rw] name
         | 
| 298 | 
            +
                #   The name of the utilization metric.
         | 
| 299 | 
            +
                #
         | 
| 300 | 
            +
                #   The following utilization metrics are available:
         | 
| 301 | 
            +
                #
         | 
| 302 | 
            +
                #   * `VolumeReadOpsPerSecond` - The completed read operations per
         | 
| 303 | 
            +
                #     second from the volume in a specified period of time.
         | 
| 304 | 
            +
                #
         | 
| 305 | 
            +
                #     Unit: Count
         | 
| 306 | 
            +
                #
         | 
| 307 | 
            +
                #   * `VolumeWriteOpsPerSecond` - The completed write operations per
         | 
| 308 | 
            +
                #     second to the volume in a specified period of time.
         | 
| 309 | 
            +
                #
         | 
| 310 | 
            +
                #     Unit: Count
         | 
| 311 | 
            +
                #
         | 
| 312 | 
            +
                #   * `VolumeReadBytesPerSecond` - The bytes read per second from the
         | 
| 313 | 
            +
                #     volume in a specified period of time.
         | 
| 314 | 
            +
                #
         | 
| 315 | 
            +
                #     Unit: Bytes
         | 
| 316 | 
            +
                #
         | 
| 317 | 
            +
                #   * `VolumeWriteBytesPerSecond` - The bytes written to the volume in a
         | 
| 318 | 
            +
                #     specified period of time.
         | 
| 319 | 
            +
                #
         | 
| 320 | 
            +
                #     Unit: Bytes
         | 
| 321 | 
            +
                #   @return [String]
         | 
| 322 | 
            +
                #
         | 
| 323 | 
            +
                # @!attribute [rw] statistic
         | 
| 324 | 
            +
                #   The statistic of the utilization metric.
         | 
| 325 | 
            +
                #
         | 
| 326 | 
            +
                #   The following statistics are available:
         | 
| 327 | 
            +
                #
         | 
| 328 | 
            +
                #   * `Average` - This is the value of Sum / SampleCount during the
         | 
| 329 | 
            +
                #     specified period, or the average value observed during the
         | 
| 330 | 
            +
                #     specified period.
         | 
| 331 | 
            +
                #
         | 
| 332 | 
            +
                #   * `Maximum` - The highest value observed during the specified
         | 
| 333 | 
            +
                #     period. Use this value to determine high volumes of activity for
         | 
| 334 | 
            +
                #     your application.
         | 
| 335 | 
            +
                #   @return [String]
         | 
| 336 | 
            +
                #
         | 
| 337 | 
            +
                # @!attribute [rw] value
         | 
| 338 | 
            +
                #   The value of the utilization metric.
         | 
| 339 | 
            +
                #   @return [Float]
         | 
| 340 | 
            +
                #
         | 
| 341 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/EBSUtilizationMetric AWS API Documentation
         | 
| 342 | 
            +
                #
         | 
| 343 | 
            +
                class EBSUtilizationMetric < Struct.new(
         | 
| 344 | 
            +
                  :name,
         | 
| 345 | 
            +
                  :statistic,
         | 
| 346 | 
            +
                  :value)
         | 
| 347 | 
            +
                  SENSITIVE = []
         | 
| 348 | 
            +
                  include Aws::Structure
         | 
| 349 | 
            +
                end
         | 
| 350 | 
            +
             | 
| 260 351 | 
             
                # @note When making an API call, you may pass ExportAutoScalingGroupRecommendationsRequest
         | 
| 261 352 | 
             
                #   data as a hash:
         | 
| 262 353 | 
             
                #
         | 
| @@ -281,8 +372,8 @@ module Aws::ComputeOptimizer | |
| 281 372 | 
             
                #   The IDs of the AWS accounts for which to export Auto Scaling group
         | 
| 282 373 | 
             
                #   recommendations.
         | 
| 283 374 | 
             
                #
         | 
| 284 | 
            -
                #   If your account is the  | 
| 285 | 
            -
                #   parameter to specify the member  | 
| 375 | 
            +
                #   If your account is the management account of an organization, use
         | 
| 376 | 
            +
                #   this parameter to specify the member account for which you want to
         | 
| 286 377 | 
             
                #   export recommendations.
         | 
| 287 378 | 
             
                #
         | 
| 288 379 | 
             
                #   This parameter cannot be specified together with the include member
         | 
| @@ -337,8 +428,8 @@ module Aws::ComputeOptimizer | |
| 337 428 | 
             
                #
         | 
| 338 429 | 
             
                # @!attribute [rw] include_member_accounts
         | 
| 339 430 | 
             
                #   Indicates whether to include recommendations for resources in all
         | 
| 340 | 
            -
                #   member accounts of the organization if your account is the | 
| 341 | 
            -
                #   account of an organization.
         | 
| 431 | 
            +
                #   member accounts of the organization if your account is the
         | 
| 432 | 
            +
                #   management account of an organization.
         | 
| 342 433 | 
             
                #
         | 
| 343 434 | 
             
                #   The member accounts must also be opted in to Compute Optimizer.
         | 
| 344 435 | 
             
                #
         | 
| @@ -427,8 +518,8 @@ module Aws::ComputeOptimizer | |
| 427 518 | 
             
                #   The IDs of the AWS accounts for which to export instance
         | 
| 428 519 | 
             
                #   recommendations.
         | 
| 429 520 | 
             
                #
         | 
| 430 | 
            -
                #   If your account is the  | 
| 431 | 
            -
                #   parameter to specify the member  | 
| 521 | 
            +
                #   If your account is the management account of an organization, use
         | 
| 522 | 
            +
                #   this parameter to specify the member account for which you want to
         | 
| 432 523 | 
             
                #   export recommendations.
         | 
| 433 524 | 
             
                #
         | 
| 434 525 | 
             
                #   This parameter cannot be specified together with the include member
         | 
| @@ -483,8 +574,8 @@ module Aws::ComputeOptimizer | |
| 483 574 | 
             
                #
         | 
| 484 575 | 
             
                # @!attribute [rw] include_member_accounts
         | 
| 485 576 | 
             
                #   Indicates whether to include recommendations for resources in all
         | 
| 486 | 
            -
                #   member accounts of the organization if your account is the | 
| 487 | 
            -
                #   account of an organization.
         | 
| 577 | 
            +
                #   member accounts of the organization if your account is the
         | 
| 578 | 
            +
                #   management account of an organization.
         | 
| 488 579 | 
             
                #
         | 
| 489 580 | 
             
                #   The member accounts must also be opted in to Compute Optimizer.
         | 
| 490 581 | 
             
                #
         | 
| @@ -532,6 +623,9 @@ module Aws::ComputeOptimizer | |
| 532 623 | 
             
                # Describes a filter that returns a more specific list of
         | 
| 533 624 | 
             
                # recommendations.
         | 
| 534 625 | 
             
                #
         | 
| 626 | 
            +
                # This filter is used with the `GetAutoScalingGroupRecommendations` and
         | 
| 627 | 
            +
                # `GetEC2InstanceRecommendations` actions.
         | 
| 628 | 
            +
                #
         | 
| 535 629 | 
             
                # @note When making an API call, you may pass Filter
         | 
| 536 630 | 
             
                #   data as a hash:
         | 
| 537 631 | 
             
                #
         | 
| @@ -543,7 +637,7 @@ module Aws::ComputeOptimizer | |
| 543 637 | 
             
                # @!attribute [rw] name
         | 
| 544 638 | 
             
                #   The name of the filter.
         | 
| 545 639 | 
             
                #
         | 
| 546 | 
            -
                #   Specify `Finding` to return recommendations with a specific  | 
| 640 | 
            +
                #   Specify `Finding` to return recommendations with a specific finding
         | 
| 547 641 | 
             
                #   classification (e.g., `Overprovisioned`).
         | 
| 548 642 | 
             
                #
         | 
| 549 643 | 
             
                #   Specify `RecommendationSourceType` to return recommendations of a
         | 
| @@ -553,17 +647,20 @@ module Aws::ComputeOptimizer | |
| 553 647 | 
             
                # @!attribute [rw] values
         | 
| 554 648 | 
             
                #   The value of the filter.
         | 
| 555 649 | 
             
                #
         | 
| 556 | 
            -
                #    | 
| 557 | 
            -
                #    | 
| 558 | 
            -
                #    | 
| 559 | 
            -
                #   `Optimized`.
         | 
| 650 | 
            +
                #   The valid values for this parameter are as follows, depending on
         | 
| 651 | 
            +
                #   what you specify for the `name` parameter and the resource type that
         | 
| 652 | 
            +
                #   you wish to filter results for:
         | 
| 560 653 | 
             
                #
         | 
| 561 | 
            -
                #    | 
| 562 | 
            -
                # | 
| 563 | 
            -
                # | 
| 654 | 
            +
                #   * Specify `Optimized` or `NotOptimized` if you specified the `name`
         | 
| 655 | 
            +
                #     parameter as `Finding` and you want to filter results for Auto
         | 
| 656 | 
            +
                #     Scaling groups.
         | 
| 564 657 | 
             
                #
         | 
| 565 | 
            -
                #    | 
| 566 | 
            -
                # | 
| 658 | 
            +
                #   * Specify `Underprovisioned`, `Overprovisioned`, or `Optimized` if
         | 
| 659 | 
            +
                #     you specified the `name` parameter as `Finding` and you want to
         | 
| 660 | 
            +
                #     filter results for EC2 instances.
         | 
| 661 | 
            +
                #
         | 
| 662 | 
            +
                #   * Specify `Ec2Instance` or `AutoScalingGroup` if you specified the
         | 
| 663 | 
            +
                #     `name` parameter as `RecommendationSourceType`.
         | 
| 567 664 | 
             
                #   @return [Array<String>]
         | 
| 568 665 | 
             
                #
         | 
| 569 666 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/Filter AWS API Documentation
         | 
| @@ -592,11 +689,11 @@ module Aws::ComputeOptimizer | |
| 592 689 | 
             
                #       }
         | 
| 593 690 | 
             
                #
         | 
| 594 691 | 
             
                # @!attribute [rw] account_ids
         | 
| 595 | 
            -
                #   The  | 
| 692 | 
            +
                #   The ID of the AWS account for which to return Auto Scaling group
         | 
| 596 693 | 
             
                #   recommendations.
         | 
| 597 694 | 
             
                #
         | 
| 598 | 
            -
                #   If your account is the  | 
| 599 | 
            -
                #   parameter to specify the member  | 
| 695 | 
            +
                #   If your account is the management account of an organization, use
         | 
| 696 | 
            +
                #   this parameter to specify the member account for which you want to
         | 
| 600 697 | 
             
                #   return Auto Scaling group recommendations.
         | 
| 601 698 | 
             
                #
         | 
| 602 699 | 
             
                #   Only one account ID can be specified per request.
         | 
| @@ -667,6 +764,96 @@ module Aws::ComputeOptimizer | |
| 667 764 | 
             
                  include Aws::Structure
         | 
| 668 765 | 
             
                end
         | 
| 669 766 |  | 
| 767 | 
            +
                # @note When making an API call, you may pass GetEBSVolumeRecommendationsRequest
         | 
| 768 | 
            +
                #   data as a hash:
         | 
| 769 | 
            +
                #
         | 
| 770 | 
            +
                #       {
         | 
| 771 | 
            +
                #         volume_arns: ["VolumeArn"],
         | 
| 772 | 
            +
                #         next_token: "NextToken",
         | 
| 773 | 
            +
                #         max_results: 1,
         | 
| 774 | 
            +
                #         filters: [
         | 
| 775 | 
            +
                #           {
         | 
| 776 | 
            +
                #             name: "Finding", # accepts Finding
         | 
| 777 | 
            +
                #             values: ["FilterValue"],
         | 
| 778 | 
            +
                #           },
         | 
| 779 | 
            +
                #         ],
         | 
| 780 | 
            +
                #         account_ids: ["AccountId"],
         | 
| 781 | 
            +
                #       }
         | 
| 782 | 
            +
                #
         | 
| 783 | 
            +
                # @!attribute [rw] volume_arns
         | 
| 784 | 
            +
                #   The Amazon Resource Name (ARN) of the volumes for which to return
         | 
| 785 | 
            +
                #   recommendations.
         | 
| 786 | 
            +
                #   @return [Array<String>]
         | 
| 787 | 
            +
                #
         | 
| 788 | 
            +
                # @!attribute [rw] next_token
         | 
| 789 | 
            +
                #   The token to advance to the next page of volume recommendations.
         | 
| 790 | 
            +
                #   @return [String]
         | 
| 791 | 
            +
                #
         | 
| 792 | 
            +
                # @!attribute [rw] max_results
         | 
| 793 | 
            +
                #   The maximum number of volume recommendations to return with a single
         | 
| 794 | 
            +
                #   request.
         | 
| 795 | 
            +
                #
         | 
| 796 | 
            +
                #   To retrieve the remaining results, make another request with the
         | 
| 797 | 
            +
                #   returned `NextToken` value.
         | 
| 798 | 
            +
                #   @return [Integer]
         | 
| 799 | 
            +
                #
         | 
| 800 | 
            +
                # @!attribute [rw] filters
         | 
| 801 | 
            +
                #   An array of objects that describe a filter that returns a more
         | 
| 802 | 
            +
                #   specific list of volume recommendations.
         | 
| 803 | 
            +
                #   @return [Array<Types::EBSFilter>]
         | 
| 804 | 
            +
                #
         | 
| 805 | 
            +
                # @!attribute [rw] account_ids
         | 
| 806 | 
            +
                #   The ID of the AWS account for which to return volume
         | 
| 807 | 
            +
                #   recommendations.
         | 
| 808 | 
            +
                #
         | 
| 809 | 
            +
                #   If your account is the management account of an organization, use
         | 
| 810 | 
            +
                #   this parameter to specify the member account for which you want to
         | 
| 811 | 
            +
                #   return volume recommendations.
         | 
| 812 | 
            +
                #
         | 
| 813 | 
            +
                #   Only one account ID can be specified per request.
         | 
| 814 | 
            +
                #   @return [Array<String>]
         | 
| 815 | 
            +
                #
         | 
| 816 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEBSVolumeRecommendationsRequest AWS API Documentation
         | 
| 817 | 
            +
                #
         | 
| 818 | 
            +
                class GetEBSVolumeRecommendationsRequest < Struct.new(
         | 
| 819 | 
            +
                  :volume_arns,
         | 
| 820 | 
            +
                  :next_token,
         | 
| 821 | 
            +
                  :max_results,
         | 
| 822 | 
            +
                  :filters,
         | 
| 823 | 
            +
                  :account_ids)
         | 
| 824 | 
            +
                  SENSITIVE = []
         | 
| 825 | 
            +
                  include Aws::Structure
         | 
| 826 | 
            +
                end
         | 
| 827 | 
            +
             | 
| 828 | 
            +
                # @!attribute [rw] next_token
         | 
| 829 | 
            +
                #   The token to use to advance to the next page of volume
         | 
| 830 | 
            +
                #   recommendations.
         | 
| 831 | 
            +
                #
         | 
| 832 | 
            +
                #   This value is null when there are no more pages of volume
         | 
| 833 | 
            +
                #   recommendations to return.
         | 
| 834 | 
            +
                #   @return [String]
         | 
| 835 | 
            +
                #
         | 
| 836 | 
            +
                # @!attribute [rw] volume_recommendations
         | 
| 837 | 
            +
                #   An array of objects that describe volume recommendations.
         | 
| 838 | 
            +
                #   @return [Array<Types::VolumeRecommendation>]
         | 
| 839 | 
            +
                #
         | 
| 840 | 
            +
                # @!attribute [rw] errors
         | 
| 841 | 
            +
                #   An array of objects that describe errors of the request.
         | 
| 842 | 
            +
                #
         | 
| 843 | 
            +
                #   For example, an error is returned if you request recommendations for
         | 
| 844 | 
            +
                #   an unsupported volume.
         | 
| 845 | 
            +
                #   @return [Array<Types::GetRecommendationError>]
         | 
| 846 | 
            +
                #
         | 
| 847 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEBSVolumeRecommendationsResponse AWS API Documentation
         | 
| 848 | 
            +
                #
         | 
| 849 | 
            +
                class GetEBSVolumeRecommendationsResponse < Struct.new(
         | 
| 850 | 
            +
                  :next_token,
         | 
| 851 | 
            +
                  :volume_recommendations,
         | 
| 852 | 
            +
                  :errors)
         | 
| 853 | 
            +
                  SENSITIVE = []
         | 
| 854 | 
            +
                  include Aws::Structure
         | 
| 855 | 
            +
                end
         | 
| 856 | 
            +
             | 
| 670 857 | 
             
                # @note When making an API call, you may pass GetEC2InstanceRecommendationsRequest
         | 
| 671 858 | 
             
                #   data as a hash:
         | 
| 672 859 | 
             
                #
         | 
| @@ -706,11 +893,11 @@ module Aws::ComputeOptimizer | |
| 706 893 | 
             
                #   @return [Array<Types::Filter>]
         | 
| 707 894 | 
             
                #
         | 
| 708 895 | 
             
                # @!attribute [rw] account_ids
         | 
| 709 | 
            -
                #   The  | 
| 896 | 
            +
                #   The ID of the AWS account for which to return instance
         | 
| 710 897 | 
             
                #   recommendations.
         | 
| 711 898 | 
             
                #
         | 
| 712 | 
            -
                #   If your account is the  | 
| 713 | 
            -
                #   parameter to specify the member  | 
| 899 | 
            +
                #   If your account is the management account of an organization, use
         | 
| 900 | 
            +
                #   this parameter to specify the member account for which you want to
         | 
| 714 901 | 
             
                #   return instance recommendations.
         | 
| 715 902 | 
             
                #
         | 
| 716 903 | 
             
                #   Only one account ID can be specified per request.
         | 
| @@ -833,7 +1020,8 @@ module Aws::ComputeOptimizer | |
| 833 1020 | 
             
                #
         | 
| 834 1021 | 
             
                # @!attribute [rw] member_accounts_enrolled
         | 
| 835 1022 | 
             
                #   Confirms the enrollment status of member accounts within the
         | 
| 836 | 
            -
                #   organization, if the account is a  | 
| 1023 | 
            +
                #   organization, if the account is a management account of an
         | 
| 1024 | 
            +
                #   organization.
         | 
| 837 1025 | 
             
                #   @return [Boolean]
         | 
| 838 1026 | 
             
                #
         | 
| 839 1027 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEnrollmentStatusResponse AWS API Documentation
         | 
| @@ -846,6 +1034,101 @@ module Aws::ComputeOptimizer | |
| 846 1034 | 
             
                  include Aws::Structure
         | 
| 847 1035 | 
             
                end
         | 
| 848 1036 |  | 
| 1037 | 
            +
                # @note When making an API call, you may pass GetLambdaFunctionRecommendationsRequest
         | 
| 1038 | 
            +
                #   data as a hash:
         | 
| 1039 | 
            +
                #
         | 
| 1040 | 
            +
                #       {
         | 
| 1041 | 
            +
                #         function_arns: ["FunctionArn"],
         | 
| 1042 | 
            +
                #         account_ids: ["AccountId"],
         | 
| 1043 | 
            +
                #         filters: [
         | 
| 1044 | 
            +
                #           {
         | 
| 1045 | 
            +
                #             name: "Finding", # accepts Finding, FindingReasonCode
         | 
| 1046 | 
            +
                #             values: ["FilterValue"],
         | 
| 1047 | 
            +
                #           },
         | 
| 1048 | 
            +
                #         ],
         | 
| 1049 | 
            +
                #         next_token: "NextToken",
         | 
| 1050 | 
            +
                #         max_results: 1,
         | 
| 1051 | 
            +
                #       }
         | 
| 1052 | 
            +
                #
         | 
| 1053 | 
            +
                # @!attribute [rw] function_arns
         | 
| 1054 | 
            +
                #   The Amazon Resource Name (ARN) of the functions for which to return
         | 
| 1055 | 
            +
                #   recommendations.
         | 
| 1056 | 
            +
                #
         | 
| 1057 | 
            +
                #   You can specify a qualified or unqualified ARN. If you specify an
         | 
| 1058 | 
            +
                #   unqualified ARN without a function version suffix, Compute Optimizer
         | 
| 1059 | 
            +
                #   will return recommendations for the latest (`$LATEST`) version of
         | 
| 1060 | 
            +
                #   the function. If you specify a qualified ARN with a version suffix,
         | 
| 1061 | 
            +
                #   Compute Optimizer will return recommendations for the specified
         | 
| 1062 | 
            +
                #   function version. For more information about using function
         | 
| 1063 | 
            +
                #   versions, see [Using versions][1] in the *AWS Lambda Developer
         | 
| 1064 | 
            +
                #   Guide*.
         | 
| 1065 | 
            +
                #
         | 
| 1066 | 
            +
                #
         | 
| 1067 | 
            +
                #
         | 
| 1068 | 
            +
                #   [1]: https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html#versioning-versions-using
         | 
| 1069 | 
            +
                #   @return [Array<String>]
         | 
| 1070 | 
            +
                #
         | 
| 1071 | 
            +
                # @!attribute [rw] account_ids
         | 
| 1072 | 
            +
                #   The ID of the AWS account for which to return function
         | 
| 1073 | 
            +
                #   recommendations.
         | 
| 1074 | 
            +
                #
         | 
| 1075 | 
            +
                #   If your account is the management account of an organization, use
         | 
| 1076 | 
            +
                #   this parameter to specify the member account for which you want to
         | 
| 1077 | 
            +
                #   return function recommendations.
         | 
| 1078 | 
            +
                #
         | 
| 1079 | 
            +
                #   Only one account ID can be specified per request.
         | 
| 1080 | 
            +
                #   @return [Array<String>]
         | 
| 1081 | 
            +
                #
         | 
| 1082 | 
            +
                # @!attribute [rw] filters
         | 
| 1083 | 
            +
                #   An array of objects that describe a filter that returns a more
         | 
| 1084 | 
            +
                #   specific list of function recommendations.
         | 
| 1085 | 
            +
                #   @return [Array<Types::LambdaFunctionRecommendationFilter>]
         | 
| 1086 | 
            +
                #
         | 
| 1087 | 
            +
                # @!attribute [rw] next_token
         | 
| 1088 | 
            +
                #   The token to advance to the next page of function recommendations.
         | 
| 1089 | 
            +
                #   @return [String]
         | 
| 1090 | 
            +
                #
         | 
| 1091 | 
            +
                # @!attribute [rw] max_results
         | 
| 1092 | 
            +
                #   The maximum number of function recommendations to return with a
         | 
| 1093 | 
            +
                #   single request.
         | 
| 1094 | 
            +
                #
         | 
| 1095 | 
            +
                #   To retrieve the remaining results, make another request with the
         | 
| 1096 | 
            +
                #   returned `NextToken` value.
         | 
| 1097 | 
            +
                #   @return [Integer]
         | 
| 1098 | 
            +
                #
         | 
| 1099 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetLambdaFunctionRecommendationsRequest AWS API Documentation
         | 
| 1100 | 
            +
                #
         | 
| 1101 | 
            +
                class GetLambdaFunctionRecommendationsRequest < Struct.new(
         | 
| 1102 | 
            +
                  :function_arns,
         | 
| 1103 | 
            +
                  :account_ids,
         | 
| 1104 | 
            +
                  :filters,
         | 
| 1105 | 
            +
                  :next_token,
         | 
| 1106 | 
            +
                  :max_results)
         | 
| 1107 | 
            +
                  SENSITIVE = []
         | 
| 1108 | 
            +
                  include Aws::Structure
         | 
| 1109 | 
            +
                end
         | 
| 1110 | 
            +
             | 
| 1111 | 
            +
                # @!attribute [rw] next_token
         | 
| 1112 | 
            +
                #   The token to use to advance to the next page of function
         | 
| 1113 | 
            +
                #   recommendations.
         | 
| 1114 | 
            +
                #
         | 
| 1115 | 
            +
                #   This value is null when there are no more pages of function
         | 
| 1116 | 
            +
                #   recommendations to return.
         | 
| 1117 | 
            +
                #   @return [String]
         | 
| 1118 | 
            +
                #
         | 
| 1119 | 
            +
                # @!attribute [rw] lambda_function_recommendations
         | 
| 1120 | 
            +
                #   An array of objects that describe function recommendations.
         | 
| 1121 | 
            +
                #   @return [Array<Types::LambdaFunctionRecommendation>]
         | 
| 1122 | 
            +
                #
         | 
| 1123 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetLambdaFunctionRecommendationsResponse AWS API Documentation
         | 
| 1124 | 
            +
                #
         | 
| 1125 | 
            +
                class GetLambdaFunctionRecommendationsResponse < Struct.new(
         | 
| 1126 | 
            +
                  :next_token,
         | 
| 1127 | 
            +
                  :lambda_function_recommendations)
         | 
| 1128 | 
            +
                  SENSITIVE = []
         | 
| 1129 | 
            +
                  include Aws::Structure
         | 
| 1130 | 
            +
                end
         | 
| 1131 | 
            +
             | 
| 849 1132 | 
             
                # Describes an error experienced when getting recommendations.
         | 
| 850 1133 | 
             
                #
         | 
| 851 1134 | 
             
                # For example, an error is returned if you request recommendations for
         | 
| @@ -884,11 +1167,11 @@ module Aws::ComputeOptimizer | |
| 884 1167 | 
             
                #       }
         | 
| 885 1168 | 
             
                #
         | 
| 886 1169 | 
             
                # @!attribute [rw] account_ids
         | 
| 887 | 
            -
                #   The  | 
| 1170 | 
            +
                #   The ID of the AWS account for which to return recommendation
         | 
| 888 1171 | 
             
                #   summaries.
         | 
| 889 1172 | 
             
                #
         | 
| 890 | 
            -
                #   If your account is the  | 
| 891 | 
            -
                #   parameter to specify the member  | 
| 1173 | 
            +
                #   If your account is the management account of an organization, use
         | 
| 1174 | 
            +
                #   this parameter to specify the member account for which you want to
         | 
| 892 1175 | 
             
                #   return recommendation summaries.
         | 
| 893 1176 | 
             
                #
         | 
| 894 1177 | 
             
                #   Only one account ID can be specified per request.
         | 
| @@ -980,11 +1263,6 @@ module Aws::ComputeOptimizer | |
| 980 1263 | 
             
                #     your workloads with optimal performance and infrastructure cost.
         | 
| 981 1264 | 
             
                #     For optimized resources, AWS Compute Optimizer might recommend a
         | 
| 982 1265 | 
             
                #     new generation instance type.
         | 
| 983 | 
            -
                #
         | 
| 984 | 
            -
                #   <note markdown="1"> The values that are returned might be `UNDER_PROVISIONED`,
         | 
| 985 | 
            -
                #   `OVER_PROVISIONED`, or `OPTIMIZED`.
         | 
| 986 | 
            -
                #
         | 
| 987 | 
            -
                #    </note>
         | 
| 988 1266 | 
             
                #   @return [String]
         | 
| 989 1267 | 
             
                #
         | 
| 990 1268 | 
             
                # @!attribute [rw] utilization_metrics
         | 
| @@ -1132,11 +1410,16 @@ module Aws::ComputeOptimizer | |
| 1132 1410 | 
             
                # @!attribute [rw] values
         | 
| 1133 1411 | 
             
                #   The value of the filter.
         | 
| 1134 1412 | 
             
                #
         | 
| 1135 | 
            -
                #    | 
| 1136 | 
            -
                #    | 
| 1413 | 
            +
                #   The valid values for this parameter are as follows, depending on
         | 
| 1414 | 
            +
                #   what you specify for the `name` parameter:
         | 
| 1415 | 
            +
                #
         | 
| 1416 | 
            +
                #   * Specify `Ec2Instance` or `AutoScalingGroup` if you specified the
         | 
| 1417 | 
            +
                #     `name` parameter as `ResourceType`. There is no filter for EBS
         | 
| 1418 | 
            +
                #     volumes because volume recommendations cannot be exported at this
         | 
| 1419 | 
            +
                #     time.
         | 
| 1137 1420 | 
             
                #
         | 
| 1138 | 
            -
                #    | 
| 1139 | 
            -
                # | 
| 1421 | 
            +
                #   * Specify `Queued`, `InProgress`, `Complete`, or `Failed` if you
         | 
| 1422 | 
            +
                #     specified the `name` parameter as `JobStatus`.
         | 
| 1140 1423 | 
             
                #   @return [Array<String>]
         | 
| 1141 1424 | 
             
                #
         | 
| 1142 1425 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/JobFilter AWS API Documentation
         | 
| @@ -1148,6 +1431,269 @@ module Aws::ComputeOptimizer | |
| 1148 1431 | 
             
                  include Aws::Structure
         | 
| 1149 1432 | 
             
                end
         | 
| 1150 1433 |  | 
| 1434 | 
            +
                # Describes a projected utilization metric of an AWS Lambda function
         | 
| 1435 | 
            +
                # recommendation option.
         | 
| 1436 | 
            +
                #
         | 
| 1437 | 
            +
                # @!attribute [rw] name
         | 
| 1438 | 
            +
                #   The name of the projected utilization metric.
         | 
| 1439 | 
            +
                #   @return [String]
         | 
| 1440 | 
            +
                #
         | 
| 1441 | 
            +
                # @!attribute [rw] statistic
         | 
| 1442 | 
            +
                #   The statistic of the projected utilization metric.
         | 
| 1443 | 
            +
                #   @return [String]
         | 
| 1444 | 
            +
                #
         | 
| 1445 | 
            +
                # @!attribute [rw] value
         | 
| 1446 | 
            +
                #   The values of the projected utilization metrics.
         | 
| 1447 | 
            +
                #   @return [Float]
         | 
| 1448 | 
            +
                #
         | 
| 1449 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionMemoryProjectedMetric AWS API Documentation
         | 
| 1450 | 
            +
                #
         | 
| 1451 | 
            +
                class LambdaFunctionMemoryProjectedMetric < Struct.new(
         | 
| 1452 | 
            +
                  :name,
         | 
| 1453 | 
            +
                  :statistic,
         | 
| 1454 | 
            +
                  :value)
         | 
| 1455 | 
            +
                  SENSITIVE = []
         | 
| 1456 | 
            +
                  include Aws::Structure
         | 
| 1457 | 
            +
                end
         | 
| 1458 | 
            +
             | 
| 1459 | 
            +
                # Describes a recommendation option for an AWS Lambda function.
         | 
| 1460 | 
            +
                #
         | 
| 1461 | 
            +
                # @!attribute [rw] rank
         | 
| 1462 | 
            +
                #   The rank of the function recommendation option.
         | 
| 1463 | 
            +
                #
         | 
| 1464 | 
            +
                #   The top recommendation option is ranked as `1`.
         | 
| 1465 | 
            +
                #   @return [Integer]
         | 
| 1466 | 
            +
                #
         | 
| 1467 | 
            +
                # @!attribute [rw] memory_size
         | 
| 1468 | 
            +
                #   The memory size, in MB, of the function recommendation option.
         | 
| 1469 | 
            +
                #   @return [Integer]
         | 
| 1470 | 
            +
                #
         | 
| 1471 | 
            +
                # @!attribute [rw] projected_utilization_metrics
         | 
| 1472 | 
            +
                #   An array of objects that describe the projected utilization metrics
         | 
| 1473 | 
            +
                #   of the function recommendation option.
         | 
| 1474 | 
            +
                #   @return [Array<Types::LambdaFunctionMemoryProjectedMetric>]
         | 
| 1475 | 
            +
                #
         | 
| 1476 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionMemoryRecommendationOption AWS API Documentation
         | 
| 1477 | 
            +
                #
         | 
| 1478 | 
            +
                class LambdaFunctionMemoryRecommendationOption < Struct.new(
         | 
| 1479 | 
            +
                  :rank,
         | 
| 1480 | 
            +
                  :memory_size,
         | 
| 1481 | 
            +
                  :projected_utilization_metrics)
         | 
| 1482 | 
            +
                  SENSITIVE = []
         | 
| 1483 | 
            +
                  include Aws::Structure
         | 
| 1484 | 
            +
                end
         | 
| 1485 | 
            +
             | 
| 1486 | 
            +
                # Describes an AWS Lambda function recommendation.
         | 
| 1487 | 
            +
                #
         | 
| 1488 | 
            +
                # @!attribute [rw] function_arn
         | 
| 1489 | 
            +
                #   The Amazon Resource Name (ARN) of the current function.
         | 
| 1490 | 
            +
                #   @return [String]
         | 
| 1491 | 
            +
                #
         | 
| 1492 | 
            +
                # @!attribute [rw] function_version
         | 
| 1493 | 
            +
                #   The version number of the current function.
         | 
| 1494 | 
            +
                #   @return [String]
         | 
| 1495 | 
            +
                #
         | 
| 1496 | 
            +
                # @!attribute [rw] account_id
         | 
| 1497 | 
            +
                #   The AWS account ID of the function.
         | 
| 1498 | 
            +
                #   @return [String]
         | 
| 1499 | 
            +
                #
         | 
| 1500 | 
            +
                # @!attribute [rw] current_memory_size
         | 
| 1501 | 
            +
                #   The amount of memory, in MB, that's allocated to the current
         | 
| 1502 | 
            +
                #   function.
         | 
| 1503 | 
            +
                #   @return [Integer]
         | 
| 1504 | 
            +
                #
         | 
| 1505 | 
            +
                # @!attribute [rw] number_of_invocations
         | 
| 1506 | 
            +
                #   The number of times your function code was executed during the
         | 
| 1507 | 
            +
                #   look-back period.
         | 
| 1508 | 
            +
                #   @return [Integer]
         | 
| 1509 | 
            +
                #
         | 
| 1510 | 
            +
                # @!attribute [rw] utilization_metrics
         | 
| 1511 | 
            +
                #   An array of objects that describe the utilization metrics of the
         | 
| 1512 | 
            +
                #   function.
         | 
| 1513 | 
            +
                #   @return [Array<Types::LambdaFunctionUtilizationMetric>]
         | 
| 1514 | 
            +
                #
         | 
| 1515 | 
            +
                # @!attribute [rw] lookback_period_in_days
         | 
| 1516 | 
            +
                #   The number of days for which utilization metrics were analyzed for
         | 
| 1517 | 
            +
                #   the function.
         | 
| 1518 | 
            +
                #   @return [Float]
         | 
| 1519 | 
            +
                #
         | 
| 1520 | 
            +
                # @!attribute [rw] last_refresh_timestamp
         | 
| 1521 | 
            +
                #   The time stamp of when the function recommendation was last
         | 
| 1522 | 
            +
                #   refreshed.
         | 
| 1523 | 
            +
                #   @return [Time]
         | 
| 1524 | 
            +
                #
         | 
| 1525 | 
            +
                # @!attribute [rw] finding
         | 
| 1526 | 
            +
                #   The finding classification for the function.
         | 
| 1527 | 
            +
                #
         | 
| 1528 | 
            +
                #   Findings for functions include:
         | 
| 1529 | 
            +
                #
         | 
| 1530 | 
            +
                #   * <b> <code>Optimized</code> </b> — The function is correctly
         | 
| 1531 | 
            +
                #     provisioned to run your workload based on its current
         | 
| 1532 | 
            +
                #     configuration and its utilization history. This finding
         | 
| 1533 | 
            +
                #     classification does not include finding reason codes.
         | 
| 1534 | 
            +
                #
         | 
| 1535 | 
            +
                #   * <b> <code>NotOptimized</code> </b> — The function is performing at
         | 
| 1536 | 
            +
                #     a higher level (over-provisioned) or at a lower level
         | 
| 1537 | 
            +
                #     (under-provisioned) than required for your workload because its
         | 
| 1538 | 
            +
                #     current configuration is not optimal. Over-provisioned resources
         | 
| 1539 | 
            +
                #     might lead to unnecessary infrastructure cost, and
         | 
| 1540 | 
            +
                #     under-provisioned resources might lead to poor application
         | 
| 1541 | 
            +
                #     performance. This finding classification can include the
         | 
| 1542 | 
            +
                #     `MemoryUnderprovisioned` and `MemoryUnderprovisioned` finding
         | 
| 1543 | 
            +
                #     reason codes.
         | 
| 1544 | 
            +
                #
         | 
| 1545 | 
            +
                #   * <b> <code>Unavailable</code> </b> — Compute Optimizer was unable
         | 
| 1546 | 
            +
                #     to generate a recommendation for the function. This could be
         | 
| 1547 | 
            +
                #     because the function has not accumulated sufficient metric data,
         | 
| 1548 | 
            +
                #     or the function does not qualify for a recommendation. This
         | 
| 1549 | 
            +
                #     finding classification can include the `InsufficientData` and
         | 
| 1550 | 
            +
                #     `Inconclusive` finding reason codes.
         | 
| 1551 | 
            +
                #
         | 
| 1552 | 
            +
                #     <note markdown="1"> Functions with a finding of unavailable are not returned unless
         | 
| 1553 | 
            +
                #     you specify the `filter` parameter with a value of `Unavailable`
         | 
| 1554 | 
            +
                #     in your `GetLambdaFunctionRecommendations` request.
         | 
| 1555 | 
            +
                #
         | 
| 1556 | 
            +
                #      </note>
         | 
| 1557 | 
            +
                #   @return [String]
         | 
| 1558 | 
            +
                #
         | 
| 1559 | 
            +
                # @!attribute [rw] finding_reason_codes
         | 
| 1560 | 
            +
                #   The reason for the finding classification of the function.
         | 
| 1561 | 
            +
                #
         | 
| 1562 | 
            +
                #   <note markdown="1"> Functions that have a finding classification of `Optimized` don't
         | 
| 1563 | 
            +
                #   have a finding reason code.
         | 
| 1564 | 
            +
                #
         | 
| 1565 | 
            +
                #    </note>
         | 
| 1566 | 
            +
                #
         | 
| 1567 | 
            +
                #   Reason codes include:
         | 
| 1568 | 
            +
                #
         | 
| 1569 | 
            +
                #   * <b> <code>MemoryOverprovisioned</code> </b> — The function is
         | 
| 1570 | 
            +
                #     over-provisioned when its memory configuration can be sized down
         | 
| 1571 | 
            +
                #     while still meeting the performance requirements of your workload.
         | 
| 1572 | 
            +
                #     An over-provisioned function might lead to unnecessary
         | 
| 1573 | 
            +
                #     infrastructure cost. This finding reason code is part of the
         | 
| 1574 | 
            +
                #     `NotOptimized` finding classification.
         | 
| 1575 | 
            +
                #
         | 
| 1576 | 
            +
                #   * <b> <code>MemoryUnderprovisioned</code> </b> — The function is
         | 
| 1577 | 
            +
                #     under-provisioned when its memory configuration doesn't meet the
         | 
| 1578 | 
            +
                #     performance requirements of the workload. An under-provisioned
         | 
| 1579 | 
            +
                #     function might lead to poor application performance. This finding
         | 
| 1580 | 
            +
                #     reason code is part of the `NotOptimized` finding classification.
         | 
| 1581 | 
            +
                #
         | 
| 1582 | 
            +
                #   * <b> <code>InsufficientData</code> </b> — The function does not
         | 
| 1583 | 
            +
                #     have sufficient metric data for Compute Optimizer to generate a
         | 
| 1584 | 
            +
                #     recommendation. For more information, see the [Supported resources
         | 
| 1585 | 
            +
                #     and requirements][1] in the *AWS Compute Optimizer User Guide*.
         | 
| 1586 | 
            +
                #     This finding reason code is part of the `Unavailable` finding
         | 
| 1587 | 
            +
                #     classification.
         | 
| 1588 | 
            +
                #
         | 
| 1589 | 
            +
                #   * <b> <code>Inconclusive</code> </b> — The function does not qualify
         | 
| 1590 | 
            +
                #     for a recommendation because Compute Optimizer cannot generate a
         | 
| 1591 | 
            +
                #     recommendation with a high degree of confidence. This finding
         | 
| 1592 | 
            +
                #     reason code is part of the `Unavailable` finding classification.
         | 
| 1593 | 
            +
                #
         | 
| 1594 | 
            +
                #
         | 
| 1595 | 
            +
                #
         | 
| 1596 | 
            +
                #   [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/requirements.html
         | 
| 1597 | 
            +
                #   @return [Array<String>]
         | 
| 1598 | 
            +
                #
         | 
| 1599 | 
            +
                # @!attribute [rw] memory_size_recommendation_options
         | 
| 1600 | 
            +
                #   An array of objects that describe the memory configuration
         | 
| 1601 | 
            +
                #   recommendation options for the function.
         | 
| 1602 | 
            +
                #   @return [Array<Types::LambdaFunctionMemoryRecommendationOption>]
         | 
| 1603 | 
            +
                #
         | 
| 1604 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionRecommendation AWS API Documentation
         | 
| 1605 | 
            +
                #
         | 
| 1606 | 
            +
                class LambdaFunctionRecommendation < Struct.new(
         | 
| 1607 | 
            +
                  :function_arn,
         | 
| 1608 | 
            +
                  :function_version,
         | 
| 1609 | 
            +
                  :account_id,
         | 
| 1610 | 
            +
                  :current_memory_size,
         | 
| 1611 | 
            +
                  :number_of_invocations,
         | 
| 1612 | 
            +
                  :utilization_metrics,
         | 
| 1613 | 
            +
                  :lookback_period_in_days,
         | 
| 1614 | 
            +
                  :last_refresh_timestamp,
         | 
| 1615 | 
            +
                  :finding,
         | 
| 1616 | 
            +
                  :finding_reason_codes,
         | 
| 1617 | 
            +
                  :memory_size_recommendation_options)
         | 
| 1618 | 
            +
                  SENSITIVE = []
         | 
| 1619 | 
            +
                  include Aws::Structure
         | 
| 1620 | 
            +
                end
         | 
| 1621 | 
            +
             | 
| 1622 | 
            +
                # Describes a filter that returns a more specific list of AWS Lambda
         | 
| 1623 | 
            +
                # function recommendations.
         | 
| 1624 | 
            +
                #
         | 
| 1625 | 
            +
                # @note When making an API call, you may pass LambdaFunctionRecommendationFilter
         | 
| 1626 | 
            +
                #   data as a hash:
         | 
| 1627 | 
            +
                #
         | 
| 1628 | 
            +
                #       {
         | 
| 1629 | 
            +
                #         name: "Finding", # accepts Finding, FindingReasonCode
         | 
| 1630 | 
            +
                #         values: ["FilterValue"],
         | 
| 1631 | 
            +
                #       }
         | 
| 1632 | 
            +
                #
         | 
| 1633 | 
            +
                # @!attribute [rw] name
         | 
| 1634 | 
            +
                #   The name of the filter.
         | 
| 1635 | 
            +
                #
         | 
| 1636 | 
            +
                #   Specify `Finding` to return recommendations with a specific finding
         | 
| 1637 | 
            +
                #   classification (e.g., `NotOptimized`).
         | 
| 1638 | 
            +
                #
         | 
| 1639 | 
            +
                #   Specify `FindingReasonCode` to return recommendations with a
         | 
| 1640 | 
            +
                #   specific finding reason code (e.g., `MemoryUnderprovisioned`).
         | 
| 1641 | 
            +
                #   @return [String]
         | 
| 1642 | 
            +
                #
         | 
| 1643 | 
            +
                # @!attribute [rw] values
         | 
| 1644 | 
            +
                #   The value of the filter.
         | 
| 1645 | 
            +
                #
         | 
| 1646 | 
            +
                #   The valid values for this parameter are as follows, depending on
         | 
| 1647 | 
            +
                #   what you specify for the `name` parameter:
         | 
| 1648 | 
            +
                #
         | 
| 1649 | 
            +
                #   * Specify `Optimized`, `NotOptimized`, or `Unavailable` if you
         | 
| 1650 | 
            +
                #     specified the `name` parameter as `Finding`.
         | 
| 1651 | 
            +
                #
         | 
| 1652 | 
            +
                #   * Specify `MemoryOverprovisioned`, `MemoryUnderprovisioned`,
         | 
| 1653 | 
            +
                #     `InsufficientData`, or `Inconclusive` if you specified the `name`
         | 
| 1654 | 
            +
                #     parameter as `FindingReasonCode`.
         | 
| 1655 | 
            +
                #   @return [Array<String>]
         | 
| 1656 | 
            +
                #
         | 
| 1657 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionRecommendationFilter AWS API Documentation
         | 
| 1658 | 
            +
                #
         | 
| 1659 | 
            +
                class LambdaFunctionRecommendationFilter < Struct.new(
         | 
| 1660 | 
            +
                  :name,
         | 
| 1661 | 
            +
                  :values)
         | 
| 1662 | 
            +
                  SENSITIVE = []
         | 
| 1663 | 
            +
                  include Aws::Structure
         | 
| 1664 | 
            +
                end
         | 
| 1665 | 
            +
             | 
| 1666 | 
            +
                # Describes a utilization metric of an AWS Lambda function.
         | 
| 1667 | 
            +
                #
         | 
| 1668 | 
            +
                # @!attribute [rw] name
         | 
| 1669 | 
            +
                #   The name of the utilization metric.
         | 
| 1670 | 
            +
                #
         | 
| 1671 | 
            +
                #   The following utilization metrics are available:
         | 
| 1672 | 
            +
                #
         | 
| 1673 | 
            +
                #   * `Duration` - The amount of time that your function code spends
         | 
| 1674 | 
            +
                #     processing an event.
         | 
| 1675 | 
            +
                #
         | 
| 1676 | 
            +
                #   * `Memory` - The amount of memory used per invocation.
         | 
| 1677 | 
            +
                #   @return [String]
         | 
| 1678 | 
            +
                #
         | 
| 1679 | 
            +
                # @!attribute [rw] statistic
         | 
| 1680 | 
            +
                #   The statistic of the utilization metric.
         | 
| 1681 | 
            +
                #   @return [String]
         | 
| 1682 | 
            +
                #
         | 
| 1683 | 
            +
                # @!attribute [rw] value
         | 
| 1684 | 
            +
                #   The value of the utilization metric.
         | 
| 1685 | 
            +
                #   @return [Float]
         | 
| 1686 | 
            +
                #
         | 
| 1687 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/LambdaFunctionUtilizationMetric AWS API Documentation
         | 
| 1688 | 
            +
                #
         | 
| 1689 | 
            +
                class LambdaFunctionUtilizationMetric < Struct.new(
         | 
| 1690 | 
            +
                  :name,
         | 
| 1691 | 
            +
                  :statistic,
         | 
| 1692 | 
            +
                  :value)
         | 
| 1693 | 
            +
                  SENSITIVE = []
         | 
| 1694 | 
            +
                  include Aws::Structure
         | 
| 1695 | 
            +
                end
         | 
| 1696 | 
            +
             | 
| 1151 1697 | 
             
                # The request exceeds a limit of the service.
         | 
| 1152 1698 | 
             
                #
         | 
| 1153 1699 | 
             
                # @!attribute [rw] message
         | 
| @@ -1189,7 +1735,13 @@ module Aws::ComputeOptimizer | |
| 1189 1735 | 
             
                end
         | 
| 1190 1736 |  | 
| 1191 1737 | 
             
                # Describes a projected utilization metric of a recommendation option,
         | 
| 1192 | 
            -
                # such as an Amazon EC2 instance.
         | 
| 1738 | 
            +
                # such as an Amazon EC2 instance. This represents the projected
         | 
| 1739 | 
            +
                # utilization of a recommendation option had you used that resource
         | 
| 1740 | 
            +
                # during the analyzed period.
         | 
| 1741 | 
            +
                #
         | 
| 1742 | 
            +
                # Compare the utilization metric data of your resource against its
         | 
| 1743 | 
            +
                # projected utilization metric data to determine the performance
         | 
| 1744 | 
            +
                # difference between your current resource and the recommended option.
         | 
| 1193 1745 | 
             
                #
         | 
| 1194 1746 | 
             
                # <note markdown="1"> The `Cpu` and `Memory` metrics are the only projected utilization
         | 
| 1195 1747 | 
             
                # metrics returned when you run the
         | 
| @@ -1206,6 +1758,37 @@ module Aws::ComputeOptimizer | |
| 1206 1758 | 
             
                #
         | 
| 1207 1759 | 
             
                # @!attribute [rw] name
         | 
| 1208 1760 | 
             
                #   The name of the projected utilization metric.
         | 
| 1761 | 
            +
                #
         | 
| 1762 | 
            +
                #   The following projected utilization metrics are returned:
         | 
| 1763 | 
            +
                #
         | 
| 1764 | 
            +
                #   * `Cpu` - The projected percentage of allocated EC2 compute units
         | 
| 1765 | 
            +
                #     that would be in use on the recommendation option had you used
         | 
| 1766 | 
            +
                #     that resource during the analyzed period. This metric identifies
         | 
| 1767 | 
            +
                #     the processing power required to run an application on the
         | 
| 1768 | 
            +
                #     recommendation option.
         | 
| 1769 | 
            +
                #
         | 
| 1770 | 
            +
                #     Depending on the instance type, tools in your operating system can
         | 
| 1771 | 
            +
                #     show a lower percentage than CloudWatch when the instance is not
         | 
| 1772 | 
            +
                #     allocated a full processor core.
         | 
| 1773 | 
            +
                #
         | 
| 1774 | 
            +
                #     Units: Percent
         | 
| 1775 | 
            +
                #
         | 
| 1776 | 
            +
                #   * `Memory` - The percentage of memory that would be in use on the
         | 
| 1777 | 
            +
                #     recommendation option had you used that resource during the
         | 
| 1778 | 
            +
                #     analyzed period. This metric identifies the amount of memory
         | 
| 1779 | 
            +
                #     required to run an application on the recommendation option.
         | 
| 1780 | 
            +
                #
         | 
| 1781 | 
            +
                #     Units: Percent
         | 
| 1782 | 
            +
                #
         | 
| 1783 | 
            +
                #     <note markdown="1"> The `Memory` metric is returned only for resources that have the
         | 
| 1784 | 
            +
                #     unified CloudWatch agent installed on them. For more information,
         | 
| 1785 | 
            +
                #     see [Enabling Memory Utilization with the CloudWatch Agent][1].
         | 
| 1786 | 
            +
                #
         | 
| 1787 | 
            +
                #      </note>
         | 
| 1788 | 
            +
                #
         | 
| 1789 | 
            +
                #
         | 
| 1790 | 
            +
                #
         | 
| 1791 | 
            +
                #   [1]: https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent
         | 
| 1209 1792 | 
             
                #   @return [String]
         | 
| 1210 1793 | 
             
                #
         | 
| 1211 1794 | 
             
                # @!attribute [rw] timestamps
         | 
| @@ -1226,6 +1809,25 @@ module Aws::ComputeOptimizer | |
| 1226 1809 | 
             
                  include Aws::Structure
         | 
| 1227 1810 | 
             
                end
         | 
| 1228 1811 |  | 
| 1812 | 
            +
                # A summary of a finding reason code.
         | 
| 1813 | 
            +
                #
         | 
| 1814 | 
            +
                # @!attribute [rw] name
         | 
| 1815 | 
            +
                #   The name of the finding reason code.
         | 
| 1816 | 
            +
                #   @return [String]
         | 
| 1817 | 
            +
                #
         | 
| 1818 | 
            +
                # @!attribute [rw] value
         | 
| 1819 | 
            +
                #   The value of the finding reason code summary.
         | 
| 1820 | 
            +
                #   @return [Float]
         | 
| 1821 | 
            +
                #
         | 
| 1822 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/ReasonCodeSummary AWS API Documentation
         | 
| 1823 | 
            +
                #
         | 
| 1824 | 
            +
                class ReasonCodeSummary < Struct.new(
         | 
| 1825 | 
            +
                  :name,
         | 
| 1826 | 
            +
                  :value)
         | 
| 1827 | 
            +
                  SENSITIVE = []
         | 
| 1828 | 
            +
                  include Aws::Structure
         | 
| 1829 | 
            +
                end
         | 
| 1830 | 
            +
             | 
| 1229 1831 | 
             
                # Describes a recommendation export job.
         | 
| 1230 1832 | 
             
                #
         | 
| 1231 1833 | 
             
                # Use the `DescribeRecommendationExportJobs` action to view your
         | 
| @@ -1477,11 +2079,16 @@ module Aws::ComputeOptimizer | |
| 1477 2079 | 
             
                #   The value of the recommendation summary.
         | 
| 1478 2080 | 
             
                #   @return [Float]
         | 
| 1479 2081 | 
             
                #
         | 
| 2082 | 
            +
                # @!attribute [rw] reason_code_summaries
         | 
| 2083 | 
            +
                #   An array of objects that summarize a finding reason code.
         | 
| 2084 | 
            +
                #   @return [Array<Types::ReasonCodeSummary>]
         | 
| 2085 | 
            +
                #
         | 
| 1480 2086 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/Summary AWS API Documentation
         | 
| 1481 2087 | 
             
                #
         | 
| 1482 2088 | 
             
                class Summary < Struct.new(
         | 
| 1483 2089 | 
             
                  :name,
         | 
| 1484 | 
            -
                  :value | 
| 2090 | 
            +
                  :value,
         | 
| 2091 | 
            +
                  :reason_code_summaries)
         | 
| 1485 2092 | 
             
                  SENSITIVE = []
         | 
| 1486 2093 | 
             
                  include Aws::Structure
         | 
| 1487 2094 | 
             
                end
         | 
| @@ -1510,13 +2117,32 @@ module Aws::ComputeOptimizer | |
| 1510 2117 | 
             
                # @!attribute [rw] status
         | 
| 1511 2118 | 
             
                #   The new enrollment status of the account.
         | 
| 1512 2119 | 
             
                #
         | 
| 1513 | 
            -
                #    | 
| 1514 | 
            -
                # | 
| 2120 | 
            +
                #   The following status options are available:
         | 
| 2121 | 
            +
                #
         | 
| 2122 | 
            +
                #   * `Active` - Opts in your account to the Compute Optimizer service.
         | 
| 2123 | 
            +
                #     Compute Optimizer begins analyzing the configuration and
         | 
| 2124 | 
            +
                #     utilization metrics of your AWS resources after you opt in. For
         | 
| 2125 | 
            +
                #     more information, see [Metrics analyzed by AWS Compute
         | 
| 2126 | 
            +
                #     Optimizer][1] in the *Compute Optimizer User Guide*.
         | 
| 2127 | 
            +
                #
         | 
| 2128 | 
            +
                #   * `Inactive` - Opts out your account from the Compute Optimizer
         | 
| 2129 | 
            +
                #     service. Your account's recommendations and related metrics data
         | 
| 2130 | 
            +
                #     will be deleted from Compute Optimizer after you opt out.
         | 
| 2131 | 
            +
                #
         | 
| 2132 | 
            +
                #   <note markdown="1"> The `Pending` and `Failed` options cannot be used to update the
         | 
| 2133 | 
            +
                #   enrollment status of an account. They are returned in the response
         | 
| 2134 | 
            +
                #   of a request to update the enrollment status of an account.
         | 
| 2135 | 
            +
                #
         | 
| 2136 | 
            +
                #    </note>
         | 
| 2137 | 
            +
                #
         | 
| 2138 | 
            +
                #
         | 
| 2139 | 
            +
                #
         | 
| 2140 | 
            +
                #   [1]: https://docs.aws.amazon.com/compute-optimizer/ug/metrics.html
         | 
| 1515 2141 | 
             
                #   @return [String]
         | 
| 1516 2142 | 
             
                #
         | 
| 1517 2143 | 
             
                # @!attribute [rw] include_member_accounts
         | 
| 1518 2144 | 
             
                #   Indicates whether to enroll member accounts of the organization if
         | 
| 1519 | 
            -
                #   the  | 
| 2145 | 
            +
                #   the account is the management account of an organization.
         | 
| 1520 2146 | 
             
                #   @return [Boolean]
         | 
| 1521 2147 | 
             
                #
         | 
| 1522 2148 | 
             
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/UpdateEnrollmentStatusRequest AWS API Documentation
         | 
| @@ -1550,14 +2176,58 @@ module Aws::ComputeOptimizer | |
| 1550 2176 | 
             
                # Describes a utilization metric of a resource, such as an Amazon EC2
         | 
| 1551 2177 | 
             
                # instance.
         | 
| 1552 2178 | 
             
                #
         | 
| 2179 | 
            +
                # Compare the utilization metric data of your resource against its
         | 
| 2180 | 
            +
                # projected utilization metric data to determine the performance
         | 
| 2181 | 
            +
                # difference between your current resource and the recommended option.
         | 
| 2182 | 
            +
                #
         | 
| 1553 2183 | 
             
                # @!attribute [rw] name
         | 
| 1554 2184 | 
             
                #   The name of the utilization metric.
         | 
| 1555 2185 | 
             
                #
         | 
| 1556 | 
            -
                #    | 
| 1557 | 
            -
                #   unified CloudWatch agent installed on them. For more information,
         | 
| 1558 | 
            -
                #   see [Enabling Memory Utilization with the CloudWatch Agent][1].
         | 
| 2186 | 
            +
                #   The following utilization metrics are available:
         | 
| 1559 2187 | 
             
                #
         | 
| 1560 | 
            -
                # | 
| 2188 | 
            +
                #   * `Cpu` - The percentage of allocated EC2 compute units that are
         | 
| 2189 | 
            +
                #     currently in use on the instance. This metric identifies the
         | 
| 2190 | 
            +
                #     processing power required to run an application on the instance.
         | 
| 2191 | 
            +
                #
         | 
| 2192 | 
            +
                #     Depending on the instance type, tools in your operating system can
         | 
| 2193 | 
            +
                #     show a lower percentage than CloudWatch when the instance is not
         | 
| 2194 | 
            +
                #     allocated a full processor core.
         | 
| 2195 | 
            +
                #
         | 
| 2196 | 
            +
                #     Units: Percent
         | 
| 2197 | 
            +
                #
         | 
| 2198 | 
            +
                #   * `Memory` - The percentage of memory that is currently in use on
         | 
| 2199 | 
            +
                #     the instance. This metric identifies the amount of memory required
         | 
| 2200 | 
            +
                #     to run an application on the instance.
         | 
| 2201 | 
            +
                #
         | 
| 2202 | 
            +
                #     Units: Percent
         | 
| 2203 | 
            +
                #
         | 
| 2204 | 
            +
                #     <note markdown="1"> The `Memory` metric is returned only for resources that have the
         | 
| 2205 | 
            +
                #     unified CloudWatch agent installed on them. For more information,
         | 
| 2206 | 
            +
                #     see [Enabling Memory Utilization with the CloudWatch Agent][1].
         | 
| 2207 | 
            +
                #
         | 
| 2208 | 
            +
                #      </note>
         | 
| 2209 | 
            +
                #
         | 
| 2210 | 
            +
                #   * `EBS_READ_OPS_PER_SECOND` - The completed read operations from all
         | 
| 2211 | 
            +
                #     EBS volumes attached to the instance in a specified period of
         | 
| 2212 | 
            +
                #     time.
         | 
| 2213 | 
            +
                #
         | 
| 2214 | 
            +
                #     Unit: Count
         | 
| 2215 | 
            +
                #
         | 
| 2216 | 
            +
                #   * `EBS_WRITE_OPS_PER_SECOND` - The completed write operations to all
         | 
| 2217 | 
            +
                #     EBS volumes attached to the instance in a specified period of
         | 
| 2218 | 
            +
                #     time.
         | 
| 2219 | 
            +
                #
         | 
| 2220 | 
            +
                #     Unit: Count
         | 
| 2221 | 
            +
                #
         | 
| 2222 | 
            +
                #   * `EBS_READ_BYTES_PER_SECOND` - The bytes read from all EBS volumes
         | 
| 2223 | 
            +
                #     attached to the instance in a specified period of time.
         | 
| 2224 | 
            +
                #
         | 
| 2225 | 
            +
                #     Unit: Bytes
         | 
| 2226 | 
            +
                #
         | 
| 2227 | 
            +
                #   * `EBS_WRITE_BYTES_PER_SECOND` - The bytes written to all EBS
         | 
| 2228 | 
            +
                #     volumes attached to the instance in a specified period of time.
         | 
| 2229 | 
            +
                #
         | 
| 2230 | 
            +
                #     Unit: Bytes
         | 
| 1561 2231 | 
             
                #
         | 
| 1562 2232 | 
             
                #
         | 
| 1563 2233 | 
             
                #
         | 
| @@ -1566,6 +2236,16 @@ module Aws::ComputeOptimizer | |
| 1566 2236 | 
             
                #
         | 
| 1567 2237 | 
             
                # @!attribute [rw] statistic
         | 
| 1568 2238 | 
             
                #   The statistic of the utilization metric.
         | 
| 2239 | 
            +
                #
         | 
| 2240 | 
            +
                #   The following statistics are available:
         | 
| 2241 | 
            +
                #
         | 
| 2242 | 
            +
                #   * `Average` - This is the value of Sum / SampleCount during the
         | 
| 2243 | 
            +
                #     specified period, or the average value observed during the
         | 
| 2244 | 
            +
                #     specified period.
         | 
| 2245 | 
            +
                #
         | 
| 2246 | 
            +
                #   * `Maximum` - The highest value observed during the specified
         | 
| 2247 | 
            +
                #     period. Use this value to determine high volumes of activity for
         | 
| 2248 | 
            +
                #     your application.
         | 
| 1569 2249 | 
             
                #   @return [String]
         | 
| 1570 2250 | 
             
                #
         | 
| 1571 2251 | 
             
                # @!attribute [rw] value
         | 
| @@ -1582,5 +2262,148 @@ module Aws::ComputeOptimizer | |
| 1582 2262 | 
             
                  include Aws::Structure
         | 
| 1583 2263 | 
             
                end
         | 
| 1584 2264 |  | 
| 2265 | 
            +
                # Describes the configuration of an Amazon Elastic Block Store (Amazon
         | 
| 2266 | 
            +
                # EBS) volume.
         | 
| 2267 | 
            +
                #
         | 
| 2268 | 
            +
                # @!attribute [rw] volume_type
         | 
| 2269 | 
            +
                #   The volume type.
         | 
| 2270 | 
            +
                #
         | 
| 2271 | 
            +
                #   This can be `gp2` for General Purpose SSD, `io1` or `io2` for
         | 
| 2272 | 
            +
                #   Provisioned IOPS SSD, `st1` for Throughput Optimized HDD, `sc1` for
         | 
| 2273 | 
            +
                #   Cold HDD, or `standard` for Magnetic volumes.
         | 
| 2274 | 
            +
                #   @return [String]
         | 
| 2275 | 
            +
                #
         | 
| 2276 | 
            +
                # @!attribute [rw] volume_size
         | 
| 2277 | 
            +
                #   The size of the volume, in GiB.
         | 
| 2278 | 
            +
                #   @return [Integer]
         | 
| 2279 | 
            +
                #
         | 
| 2280 | 
            +
                # @!attribute [rw] volume_baseline_iops
         | 
| 2281 | 
            +
                #   The baseline IOPS of the volume.
         | 
| 2282 | 
            +
                #   @return [Integer]
         | 
| 2283 | 
            +
                #
         | 
| 2284 | 
            +
                # @!attribute [rw] volume_burst_iops
         | 
| 2285 | 
            +
                #   The burst IOPS of the volume.
         | 
| 2286 | 
            +
                #   @return [Integer]
         | 
| 2287 | 
            +
                #
         | 
| 2288 | 
            +
                # @!attribute [rw] volume_baseline_throughput
         | 
| 2289 | 
            +
                #   The baseline throughput of the volume.
         | 
| 2290 | 
            +
                #   @return [Integer]
         | 
| 2291 | 
            +
                #
         | 
| 2292 | 
            +
                # @!attribute [rw] volume_burst_throughput
         | 
| 2293 | 
            +
                #   The burst throughput of the volume.
         | 
| 2294 | 
            +
                #   @return [Integer]
         | 
| 2295 | 
            +
                #
         | 
| 2296 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/VolumeConfiguration AWS API Documentation
         | 
| 2297 | 
            +
                #
         | 
| 2298 | 
            +
                class VolumeConfiguration < Struct.new(
         | 
| 2299 | 
            +
                  :volume_type,
         | 
| 2300 | 
            +
                  :volume_size,
         | 
| 2301 | 
            +
                  :volume_baseline_iops,
         | 
| 2302 | 
            +
                  :volume_burst_iops,
         | 
| 2303 | 
            +
                  :volume_baseline_throughput,
         | 
| 2304 | 
            +
                  :volume_burst_throughput)
         | 
| 2305 | 
            +
                  SENSITIVE = []
         | 
| 2306 | 
            +
                  include Aws::Structure
         | 
| 2307 | 
            +
                end
         | 
| 2308 | 
            +
             | 
| 2309 | 
            +
                # Describes an Amazon Elastic Block Store (Amazon EBS) volume
         | 
| 2310 | 
            +
                # recommendation.
         | 
| 2311 | 
            +
                #
         | 
| 2312 | 
            +
                # @!attribute [rw] volume_arn
         | 
| 2313 | 
            +
                #   The Amazon Resource Name (ARN) of the current volume.
         | 
| 2314 | 
            +
                #   @return [String]
         | 
| 2315 | 
            +
                #
         | 
| 2316 | 
            +
                # @!attribute [rw] account_id
         | 
| 2317 | 
            +
                #   The AWS account ID of the volume.
         | 
| 2318 | 
            +
                #   @return [String]
         | 
| 2319 | 
            +
                #
         | 
| 2320 | 
            +
                # @!attribute [rw] current_configuration
         | 
| 2321 | 
            +
                #   An array of objects that describe the current configuration of the
         | 
| 2322 | 
            +
                #   volume.
         | 
| 2323 | 
            +
                #   @return [Types::VolumeConfiguration]
         | 
| 2324 | 
            +
                #
         | 
| 2325 | 
            +
                # @!attribute [rw] finding
         | 
| 2326 | 
            +
                #   The finding classification for the volume.
         | 
| 2327 | 
            +
                #
         | 
| 2328 | 
            +
                #   Findings for volumes include:
         | 
| 2329 | 
            +
                #
         | 
| 2330 | 
            +
                #   * <b> <code>NotOptimized</code> </b>—A volume is considered not
         | 
| 2331 | 
            +
                #     optimized when AWS Compute Optimizer identifies a recommendation
         | 
| 2332 | 
            +
                #     that can provide better performance for your workload.
         | 
| 2333 | 
            +
                #
         | 
| 2334 | 
            +
                #   * <b> <code>Optimized</code> </b>—An volume is considered optimized
         | 
| 2335 | 
            +
                #     when Compute Optimizer determines that the volume is correctly
         | 
| 2336 | 
            +
                #     provisioned to run your workload based on the chosen volume type.
         | 
| 2337 | 
            +
                #     For optimized resources, Compute Optimizer might recommend a new
         | 
| 2338 | 
            +
                #     generation volume type.
         | 
| 2339 | 
            +
                #   @return [String]
         | 
| 2340 | 
            +
                #
         | 
| 2341 | 
            +
                # @!attribute [rw] utilization_metrics
         | 
| 2342 | 
            +
                #   An array of objects that describe the utilization metrics of the
         | 
| 2343 | 
            +
                #   volume.
         | 
| 2344 | 
            +
                #   @return [Array<Types::EBSUtilizationMetric>]
         | 
| 2345 | 
            +
                #
         | 
| 2346 | 
            +
                # @!attribute [rw] look_back_period_in_days
         | 
| 2347 | 
            +
                #   The number of days for which utilization metrics were analyzed for
         | 
| 2348 | 
            +
                #   the volume.
         | 
| 2349 | 
            +
                #   @return [Float]
         | 
| 2350 | 
            +
                #
         | 
| 2351 | 
            +
                # @!attribute [rw] volume_recommendation_options
         | 
| 2352 | 
            +
                #   An array of objects that describe the recommendation options for the
         | 
| 2353 | 
            +
                #   volume.
         | 
| 2354 | 
            +
                #   @return [Array<Types::VolumeRecommendationOption>]
         | 
| 2355 | 
            +
                #
         | 
| 2356 | 
            +
                # @!attribute [rw] last_refresh_timestamp
         | 
| 2357 | 
            +
                #   The time stamp of when the volume recommendation was last refreshed.
         | 
| 2358 | 
            +
                #   @return [Time]
         | 
| 2359 | 
            +
                #
         | 
| 2360 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/VolumeRecommendation AWS API Documentation
         | 
| 2361 | 
            +
                #
         | 
| 2362 | 
            +
                class VolumeRecommendation < Struct.new(
         | 
| 2363 | 
            +
                  :volume_arn,
         | 
| 2364 | 
            +
                  :account_id,
         | 
| 2365 | 
            +
                  :current_configuration,
         | 
| 2366 | 
            +
                  :finding,
         | 
| 2367 | 
            +
                  :utilization_metrics,
         | 
| 2368 | 
            +
                  :look_back_period_in_days,
         | 
| 2369 | 
            +
                  :volume_recommendation_options,
         | 
| 2370 | 
            +
                  :last_refresh_timestamp)
         | 
| 2371 | 
            +
                  SENSITIVE = []
         | 
| 2372 | 
            +
                  include Aws::Structure
         | 
| 2373 | 
            +
                end
         | 
| 2374 | 
            +
             | 
| 2375 | 
            +
                # Describes a recommendation option for an Amazon Elastic Block Store
         | 
| 2376 | 
            +
                # (Amazon EBS) instance.
         | 
| 2377 | 
            +
                #
         | 
| 2378 | 
            +
                # @!attribute [rw] configuration
         | 
| 2379 | 
            +
                #   An array of objects that describe a volume configuration.
         | 
| 2380 | 
            +
                #   @return [Types::VolumeConfiguration]
         | 
| 2381 | 
            +
                #
         | 
| 2382 | 
            +
                # @!attribute [rw] performance_risk
         | 
| 2383 | 
            +
                #   The performance risk of the volume recommendation option.
         | 
| 2384 | 
            +
                #
         | 
| 2385 | 
            +
                #   Performance risk is the likelihood of the recommended volume type
         | 
| 2386 | 
            +
                #   not meeting the performance requirement of your workload.
         | 
| 2387 | 
            +
                #
         | 
| 2388 | 
            +
                #   The lowest performance risk is categorized as `0`, and the highest
         | 
| 2389 | 
            +
                #   as `5`.
         | 
| 2390 | 
            +
                #   @return [Float]
         | 
| 2391 | 
            +
                #
         | 
| 2392 | 
            +
                # @!attribute [rw] rank
         | 
| 2393 | 
            +
                #   The rank of the volume recommendation option.
         | 
| 2394 | 
            +
                #
         | 
| 2395 | 
            +
                #   The top recommendation option is ranked as `1`.
         | 
| 2396 | 
            +
                #   @return [Integer]
         | 
| 2397 | 
            +
                #
         | 
| 2398 | 
            +
                # @see http://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/VolumeRecommendationOption AWS API Documentation
         | 
| 2399 | 
            +
                #
         | 
| 2400 | 
            +
                class VolumeRecommendationOption < Struct.new(
         | 
| 2401 | 
            +
                  :configuration,
         | 
| 2402 | 
            +
                  :performance_risk,
         | 
| 2403 | 
            +
                  :rank)
         | 
| 2404 | 
            +
                  SENSITIVE = []
         | 
| 2405 | 
            +
                  include Aws::Structure
         | 
| 2406 | 
            +
                end
         | 
| 2407 | 
            +
             | 
| 1585 2408 | 
             
              end
         | 
| 1586 2409 | 
             
            end
         |