computeoptimizer

package
v1.27.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 2, 2020 License: Apache-2.0 Imports: 8 Imported by: 16

Documentation

Overview

Package computeoptimizer provides the client and types for making API requests to AWS Compute Optimizer.

AWS Compute Optimizer is a service that analyzes the configuration and utilization metrics of your AWS resources, such as EC2 instances and Auto Scaling groups. It reports whether your resources are optimal, and generates optimization recommendations to reduce the cost and improve the performance of your workloads. Compute Optimizer also provides recent utilization metric data, as well as projected utilization metric data for the recommendations, which you can use to evaluate which recommendation provides the best price-performance trade-off. The analysis of your usage patterns can help you decide when to move or resize your running resources, and still meet your performance and capacity requirements. For more information about Compute Optimizer, see the AWS Compute Optimizer User Guide (https://docs.aws.amazon.com/compute-optimizer/latest/ug/).

See https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01 for more information on this service.

See computeoptimizer package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/computeoptimizer/

Using the Client

To contact AWS Compute Optimizer with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the AWS Compute Optimizer client ComputeOptimizer for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/computeoptimizer/#New

Index

Constants

View Source
const (
	// FilterNameFinding is a FilterName enum value
	FilterNameFinding = "Finding"

	// FilterNameRecommendationSourceType is a FilterName enum value
	FilterNameRecommendationSourceType = "RecommendationSourceType"
)
View Source
const (
	// FindingUnderprovisioned is a Finding enum value
	FindingUnderprovisioned = "Underprovisioned"

	// FindingOverprovisioned is a Finding enum value
	FindingOverprovisioned = "Overprovisioned"

	// FindingOptimized is a Finding enum value
	FindingOptimized = "Optimized"

	// FindingNotOptimized is a Finding enum value
	FindingNotOptimized = "NotOptimized"
)
View Source
const (
	// MetricNameCpu is a MetricName enum value
	MetricNameCpu = "Cpu"

	// MetricNameMemory is a MetricName enum value
	MetricNameMemory = "Memory"
)
View Source
const (
	// MetricStatisticMaximum is a MetricStatistic enum value
	MetricStatisticMaximum = "Maximum"

	// MetricStatisticAverage is a MetricStatistic enum value
	MetricStatisticAverage = "Average"
)
View Source
const (
	// RecommendationSourceTypeEc2instance is a RecommendationSourceType enum value
	RecommendationSourceTypeEc2instance = "Ec2Instance"

	// RecommendationSourceTypeAutoScalingGroup is a RecommendationSourceType enum value
	RecommendationSourceTypeAutoScalingGroup = "AutoScalingGroup"
)
View Source
const (
	// StatusActive is a Status enum value
	StatusActive = "Active"

	// StatusInactive is a Status enum value
	StatusInactive = "Inactive"

	// StatusPending is a Status enum value
	StatusPending = "Pending"

	// StatusFailed is a Status enum value
	StatusFailed = "Failed"
)
View Source
const (

	// ErrCodeAccessDeniedException for service response error code
	// "AccessDeniedException".
	//
	// You do not have sufficient access to perform this action.
	ErrCodeAccessDeniedException = "AccessDeniedException"

	// ErrCodeInternalServerException for service response error code
	// "InternalServerException".
	//
	// The request processing has failed because of an unknown error, exception,
	// or failure.
	ErrCodeInternalServerException = "InternalServerException"

	// ErrCodeInvalidParameterValueException for service response error code
	// "InvalidParameterValueException".
	//
	// An invalid or out-of-range value was supplied for the input parameter.
	ErrCodeInvalidParameterValueException = "InvalidParameterValueException"

	// ErrCodeMissingAuthenticationToken for service response error code
	// "MissingAuthenticationToken".
	//
	// The request must contain either a valid (registered) AWS access key ID or
	// X.509 certificate.
	ErrCodeMissingAuthenticationToken = "MissingAuthenticationToken"

	// ErrCodeOptInRequiredException for service response error code
	// "OptInRequiredException".
	//
	// You must opt in to the service to perform this action.
	ErrCodeOptInRequiredException = "OptInRequiredException"

	// ErrCodeResourceNotFoundException for service response error code
	// "ResourceNotFoundException".
	//
	// The specified resource was not found.
	ErrCodeResourceNotFoundException = "ResourceNotFoundException"

	// ErrCodeServiceUnavailableException for service response error code
	// "ServiceUnavailableException".
	//
	// The request has failed due to a temporary failure of the server.
	ErrCodeServiceUnavailableException = "ServiceUnavailableException"

	// ErrCodeThrottlingException for service response error code
	// "ThrottlingException".
	//
	// The limit on the number of requests per second was exceeded.
	ErrCodeThrottlingException = "ThrottlingException"
)
View Source
const (
	ServiceName = "Compute Optimizer" // Name of service.
	EndpointsID = "compute-optimizer" // ID to lookup a service endpoint with.
	ServiceID   = "Compute Optimizer" // ServiceID is a unique identifier of a specific service.
)

Service information constants

Variables

This section is empty.

Functions

This section is empty.

Types

type AutoScalingGroupConfiguration

type AutoScalingGroupConfiguration struct {

	// The desired capacity, or number of instances, for the Auto Scaling group.
	DesiredCapacity *int64 `locationName:"desiredCapacity" type:"integer"`

	// The instance type for the Auto Scaling group.
	InstanceType *string `locationName:"instanceType" type:"string"`

	// The maximum size, or maximum number of instances, for the Auto Scaling group.
	MaxSize *int64 `locationName:"maxSize" type:"integer"`

	// The minimum size, or minimum number of instances, for the Auto Scaling group.
	MinSize *int64 `locationName:"minSize" type:"integer"`
	// contains filtered or unexported fields
}

Describes the configuration of an Auto Scaling group.

func (AutoScalingGroupConfiguration) GoString

GoString returns the string representation

func (*AutoScalingGroupConfiguration) SetDesiredCapacity

SetDesiredCapacity sets the DesiredCapacity field's value.

func (*AutoScalingGroupConfiguration) SetInstanceType

SetInstanceType sets the InstanceType field's value.

func (*AutoScalingGroupConfiguration) SetMaxSize

SetMaxSize sets the MaxSize field's value.

func (*AutoScalingGroupConfiguration) SetMinSize

SetMinSize sets the MinSize field's value.

func (AutoScalingGroupConfiguration) String

String returns the string representation

type AutoScalingGroupRecommendation

type AutoScalingGroupRecommendation struct {

	// The AWS account ID of the Auto Scaling group.
	AccountId *string `locationName:"accountId" type:"string"`

	// The Amazon Resource Name (ARN) of the Auto Scaling group.
	AutoScalingGroupArn *string `locationName:"autoScalingGroupArn" type:"string"`

	// The name of the Auto Scaling group.
	AutoScalingGroupName *string `locationName:"autoScalingGroupName" type:"string"`

	// An array of objects that describe the current configuration of the Auto Scaling
	// group.
	CurrentConfiguration *AutoScalingGroupConfiguration `locationName:"currentConfiguration" type:"structure"`

	// The finding classification for the Auto Scaling group.
	//
	// Findings for Auto Scaling groups include:
	//
	//    * NotOptimized —An Auto Scaling group is considered not optimized when
	//    AWS Compute Optimizer identifies a recommendation that can provide better
	//    performance for your workload.
	//
	//    * Optimized —An Auto Scaling group is considered optimized when Compute
	//    Optimizer determines that the group is correctly provisioned to run your
	//    workload based on the chosen instance type. For optimized resources, Compute
	//    Optimizer might recommend a new generation instance type.
	//
	// The values that are returned might be NOT_OPTIMIZED or OPTIMIZED.
	Finding *string `locationName:"finding" type:"string" enum:"Finding"`

	// The time stamp of when the Auto Scaling group recommendation was last refreshed.
	LastRefreshTimestamp *time.Time `locationName:"lastRefreshTimestamp" type:"timestamp"`

	// The number of days for which utilization metrics were analyzed for the Auto
	// Scaling group.
	LookBackPeriodInDays *float64 `locationName:"lookBackPeriodInDays" type:"double"`

	// An array of objects that describe the recommendation options for the Auto
	// Scaling group.
	RecommendationOptions []*AutoScalingGroupRecommendationOption `locationName:"recommendationOptions" type:"list"`

	// An array of objects that describe the utilization metrics of the Auto Scaling
	// group.
	UtilizationMetrics []*UtilizationMetric `locationName:"utilizationMetrics" type:"list"`
	// contains filtered or unexported fields
}

Describes an Auto Scaling group recommendation.

func (AutoScalingGroupRecommendation) GoString

GoString returns the string representation

func (*AutoScalingGroupRecommendation) SetAccountId

SetAccountId sets the AccountId field's value.

func (*AutoScalingGroupRecommendation) SetAutoScalingGroupArn

SetAutoScalingGroupArn sets the AutoScalingGroupArn field's value.

func (*AutoScalingGroupRecommendation) SetAutoScalingGroupName

SetAutoScalingGroupName sets the AutoScalingGroupName field's value.

func (*AutoScalingGroupRecommendation) SetCurrentConfiguration

SetCurrentConfiguration sets the CurrentConfiguration field's value.

func (*AutoScalingGroupRecommendation) SetFinding

SetFinding sets the Finding field's value.

func (*AutoScalingGroupRecommendation) SetLastRefreshTimestamp

SetLastRefreshTimestamp sets the LastRefreshTimestamp field's value.

func (*AutoScalingGroupRecommendation) SetLookBackPeriodInDays

SetLookBackPeriodInDays sets the LookBackPeriodInDays field's value.

func (*AutoScalingGroupRecommendation) SetRecommendationOptions

SetRecommendationOptions sets the RecommendationOptions field's value.

func (*AutoScalingGroupRecommendation) SetUtilizationMetrics

SetUtilizationMetrics sets the UtilizationMetrics field's value.

func (AutoScalingGroupRecommendation) String

String returns the string representation

type AutoScalingGroupRecommendationOption

type AutoScalingGroupRecommendationOption struct {

	// An array of objects that describe an Auto Scaling group configuration.
	Configuration *AutoScalingGroupConfiguration `locationName:"configuration" type:"structure"`

	// The performance risk of the Auto Scaling group configuration recommendation.
	//
	// Performance risk is the likelihood of the recommended instance type not meeting
	// the performance requirement of your workload.
	//
	// The lowest performance risk is categorized as 0, and the highest as 5.
	PerformanceRisk *float64 `locationName:"performanceRisk" type:"double"`

	// An array of objects that describe the projected utilization metrics of the
	// Auto Scaling group recommendation option.
	ProjectedUtilizationMetrics []*UtilizationMetric `locationName:"projectedUtilizationMetrics" type:"list"`

	// The rank of the Auto Scaling group recommendation option.
	//
	// The top recommendation option is ranked as 1.
	Rank *int64 `locationName:"rank" type:"integer"`
	// contains filtered or unexported fields
}

Describes a recommendation option for an Auto Scaling group.

func (AutoScalingGroupRecommendationOption) GoString

GoString returns the string representation

func (*AutoScalingGroupRecommendationOption) SetConfiguration

SetConfiguration sets the Configuration field's value.

func (*AutoScalingGroupRecommendationOption) SetPerformanceRisk

SetPerformanceRisk sets the PerformanceRisk field's value.

func (*AutoScalingGroupRecommendationOption) SetProjectedUtilizationMetrics

SetProjectedUtilizationMetrics sets the ProjectedUtilizationMetrics field's value.

func (*AutoScalingGroupRecommendationOption) SetRank

SetRank sets the Rank field's value.

func (AutoScalingGroupRecommendationOption) String

String returns the string representation

type ComputeOptimizer

type ComputeOptimizer struct {
	*client.Client
}

ComputeOptimizer provides the API operation methods for making requests to AWS Compute Optimizer. See this package's package overview docs for details on the service.

ComputeOptimizer methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

New creates a new instance of the ComputeOptimizer client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

mySession := session.Must(session.NewSession())

// Create a ComputeOptimizer client from just a session.
svc := computeoptimizer.New(mySession)

// Create a ComputeOptimizer client with additional configuration
svc := computeoptimizer.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*ComputeOptimizer) GetAutoScalingGroupRecommendations

GetAutoScalingGroupRecommendations API operation for AWS Compute Optimizer.

Returns Auto Scaling group recommendations.

AWS Compute Optimizer currently generates recommendations for Auto Scaling groups that are configured to run instances of the M, C, R, T, and X instance families. The service does not generate recommendations for Auto Scaling groups that have a scaling policy attached to them, or that do not have the same values for desired, minimum, and maximum capacity. In order for Compute Optimizer to analyze your Auto Scaling groups, they must be of a fixed size. For more information, see the AWS Compute Optimizer User Guide (https://docs.aws.amazon.com/compute-optimizer/latest/ug/what-is.html).

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Compute Optimizer's API operation GetAutoScalingGroupRecommendations for usage and error information.

Returned Error Codes:

  • ErrCodeOptInRequiredException "OptInRequiredException" You must opt in to the service to perform this action.

  • ErrCodeInternalServerException "InternalServerException" The request processing has failed because of an unknown error, exception, or failure.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The request has failed due to a temporary failure of the server.

  • ErrCodeAccessDeniedException "AccessDeniedException" You do not have sufficient access to perform this action.

  • ErrCodeInvalidParameterValueException "InvalidParameterValueException" An invalid or out-of-range value was supplied for the input parameter.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource was not found.

  • ErrCodeMissingAuthenticationToken "MissingAuthenticationToken" The request must contain either a valid (registered) AWS access key ID or X.509 certificate.

  • ErrCodeThrottlingException "ThrottlingException" The limit on the number of requests per second was exceeded.

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetAutoScalingGroupRecommendations

func (*ComputeOptimizer) GetAutoScalingGroupRecommendationsRequest

func (c *ComputeOptimizer) GetAutoScalingGroupRecommendationsRequest(input *GetAutoScalingGroupRecommendationsInput) (req *request.Request, output *GetAutoScalingGroupRecommendationsOutput)

GetAutoScalingGroupRecommendationsRequest generates a "aws/request.Request" representing the client's request for the GetAutoScalingGroupRecommendations operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetAutoScalingGroupRecommendations for more information on using the GetAutoScalingGroupRecommendations API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetAutoScalingGroupRecommendationsRequest method.
req, resp := client.GetAutoScalingGroupRecommendationsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetAutoScalingGroupRecommendations

func (*ComputeOptimizer) GetAutoScalingGroupRecommendationsWithContext

func (c *ComputeOptimizer) GetAutoScalingGroupRecommendationsWithContext(ctx aws.Context, input *GetAutoScalingGroupRecommendationsInput, opts ...request.Option) (*GetAutoScalingGroupRecommendationsOutput, error)

GetAutoScalingGroupRecommendationsWithContext is the same as GetAutoScalingGroupRecommendations with the addition of the ability to pass a context and additional request options.

See GetAutoScalingGroupRecommendations for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ComputeOptimizer) GetEC2InstanceRecommendations

GetEC2InstanceRecommendations API operation for AWS Compute Optimizer.

Returns Amazon EC2 instance recommendations.

AWS Compute Optimizer currently generates recommendations for Amazon Elastic Compute Cloud (Amazon EC2) and Amazon EC2 Auto Scaling. It generates recommendations for M, C, R, T, and X instance families. For more information, see the AWS Compute Optimizer User Guide (https://docs.aws.amazon.com/compute-optimizer/latest/ug/what-is.html).

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Compute Optimizer's API operation GetEC2InstanceRecommendations for usage and error information.

Returned Error Codes:

  • ErrCodeOptInRequiredException "OptInRequiredException" You must opt in to the service to perform this action.

  • ErrCodeInternalServerException "InternalServerException" The request processing has failed because of an unknown error, exception, or failure.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The request has failed due to a temporary failure of the server.

  • ErrCodeAccessDeniedException "AccessDeniedException" You do not have sufficient access to perform this action.

  • ErrCodeInvalidParameterValueException "InvalidParameterValueException" An invalid or out-of-range value was supplied for the input parameter.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource was not found.

  • ErrCodeMissingAuthenticationToken "MissingAuthenticationToken" The request must contain either a valid (registered) AWS access key ID or X.509 certificate.

  • ErrCodeThrottlingException "ThrottlingException" The limit on the number of requests per second was exceeded.

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEC2InstanceRecommendations

func (*ComputeOptimizer) GetEC2InstanceRecommendationsRequest

func (c *ComputeOptimizer) GetEC2InstanceRecommendationsRequest(input *GetEC2InstanceRecommendationsInput) (req *request.Request, output *GetEC2InstanceRecommendationsOutput)

GetEC2InstanceRecommendationsRequest generates a "aws/request.Request" representing the client's request for the GetEC2InstanceRecommendations operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetEC2InstanceRecommendations for more information on using the GetEC2InstanceRecommendations API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetEC2InstanceRecommendationsRequest method.
req, resp := client.GetEC2InstanceRecommendationsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEC2InstanceRecommendations

func (*ComputeOptimizer) GetEC2InstanceRecommendationsWithContext

func (c *ComputeOptimizer) GetEC2InstanceRecommendationsWithContext(ctx aws.Context, input *GetEC2InstanceRecommendationsInput, opts ...request.Option) (*GetEC2InstanceRecommendationsOutput, error)

GetEC2InstanceRecommendationsWithContext is the same as GetEC2InstanceRecommendations with the addition of the ability to pass a context and additional request options.

See GetEC2InstanceRecommendations for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ComputeOptimizer) GetEC2RecommendationProjectedMetrics

GetEC2RecommendationProjectedMetrics API operation for AWS Compute Optimizer.

Returns the projected utilization metrics of Amazon EC2 instance recommendations.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Compute Optimizer's API operation GetEC2RecommendationProjectedMetrics for usage and error information.

Returned Error Codes:

  • ErrCodeOptInRequiredException "OptInRequiredException" You must opt in to the service to perform this action.

  • ErrCodeInternalServerException "InternalServerException" The request processing has failed because of an unknown error, exception, or failure.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The request has failed due to a temporary failure of the server.

  • ErrCodeAccessDeniedException "AccessDeniedException" You do not have sufficient access to perform this action.

  • ErrCodeInvalidParameterValueException "InvalidParameterValueException" An invalid or out-of-range value was supplied for the input parameter.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource was not found.

  • ErrCodeMissingAuthenticationToken "MissingAuthenticationToken" The request must contain either a valid (registered) AWS access key ID or X.509 certificate.

  • ErrCodeThrottlingException "ThrottlingException" The limit on the number of requests per second was exceeded.

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEC2RecommendationProjectedMetrics

func (*ComputeOptimizer) GetEC2RecommendationProjectedMetricsRequest

func (c *ComputeOptimizer) GetEC2RecommendationProjectedMetricsRequest(input *GetEC2RecommendationProjectedMetricsInput) (req *request.Request, output *GetEC2RecommendationProjectedMetricsOutput)

GetEC2RecommendationProjectedMetricsRequest generates a "aws/request.Request" representing the client's request for the GetEC2RecommendationProjectedMetrics operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetEC2RecommendationProjectedMetrics for more information on using the GetEC2RecommendationProjectedMetrics API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetEC2RecommendationProjectedMetricsRequest method.
req, resp := client.GetEC2RecommendationProjectedMetricsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEC2RecommendationProjectedMetrics

func (*ComputeOptimizer) GetEC2RecommendationProjectedMetricsWithContext

func (c *ComputeOptimizer) GetEC2RecommendationProjectedMetricsWithContext(ctx aws.Context, input *GetEC2RecommendationProjectedMetricsInput, opts ...request.Option) (*GetEC2RecommendationProjectedMetricsOutput, error)

GetEC2RecommendationProjectedMetricsWithContext is the same as GetEC2RecommendationProjectedMetrics with the addition of the ability to pass a context and additional request options.

See GetEC2RecommendationProjectedMetrics for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ComputeOptimizer) GetEnrollmentStatus

func (c *ComputeOptimizer) GetEnrollmentStatus(input *GetEnrollmentStatusInput) (*GetEnrollmentStatusOutput, error)

GetEnrollmentStatus API operation for AWS Compute Optimizer.

Returns the enrollment (opt in) status of an account to the AWS Compute Optimizer service.

If the account is a master account of an organization, this operation also confirms the enrollment status of member accounts within the organization.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Compute Optimizer's API operation GetEnrollmentStatus for usage and error information.

Returned Error Codes:

  • ErrCodeInternalServerException "InternalServerException" The request processing has failed because of an unknown error, exception, or failure.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The request has failed due to a temporary failure of the server.

  • ErrCodeAccessDeniedException "AccessDeniedException" You do not have sufficient access to perform this action.

  • ErrCodeInvalidParameterValueException "InvalidParameterValueException" An invalid or out-of-range value was supplied for the input parameter.

  • ErrCodeMissingAuthenticationToken "MissingAuthenticationToken" The request must contain either a valid (registered) AWS access key ID or X.509 certificate.

  • ErrCodeThrottlingException "ThrottlingException" The limit on the number of requests per second was exceeded.

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEnrollmentStatus

func (*ComputeOptimizer) GetEnrollmentStatusRequest

func (c *ComputeOptimizer) GetEnrollmentStatusRequest(input *GetEnrollmentStatusInput) (req *request.Request, output *GetEnrollmentStatusOutput)

GetEnrollmentStatusRequest generates a "aws/request.Request" representing the client's request for the GetEnrollmentStatus operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetEnrollmentStatus for more information on using the GetEnrollmentStatus API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetEnrollmentStatusRequest method.
req, resp := client.GetEnrollmentStatusRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEnrollmentStatus

func (*ComputeOptimizer) GetEnrollmentStatusWithContext

func (c *ComputeOptimizer) GetEnrollmentStatusWithContext(ctx aws.Context, input *GetEnrollmentStatusInput, opts ...request.Option) (*GetEnrollmentStatusOutput, error)

GetEnrollmentStatusWithContext is the same as GetEnrollmentStatus with the addition of the ability to pass a context and additional request options.

See GetEnrollmentStatus for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ComputeOptimizer) GetRecommendationSummaries

GetRecommendationSummaries API operation for AWS Compute Optimizer.

Returns the optimization findings for an account.

For example, it returns the number of Amazon EC2 instances in an account that are under-provisioned, over-provisioned, or optimized. It also returns the number of Auto Scaling groups in an account that are not optimized, or optimized.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Compute Optimizer's API operation GetRecommendationSummaries for usage and error information.

Returned Error Codes:

  • ErrCodeOptInRequiredException "OptInRequiredException" You must opt in to the service to perform this action.

  • ErrCodeInternalServerException "InternalServerException" The request processing has failed because of an unknown error, exception, or failure.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The request has failed due to a temporary failure of the server.

  • ErrCodeAccessDeniedException "AccessDeniedException" You do not have sufficient access to perform this action.

  • ErrCodeInvalidParameterValueException "InvalidParameterValueException" An invalid or out-of-range value was supplied for the input parameter.

  • ErrCodeMissingAuthenticationToken "MissingAuthenticationToken" The request must contain either a valid (registered) AWS access key ID or X.509 certificate.

  • ErrCodeThrottlingException "ThrottlingException" The limit on the number of requests per second was exceeded.

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetRecommendationSummaries

func (*ComputeOptimizer) GetRecommendationSummariesRequest

func (c *ComputeOptimizer) GetRecommendationSummariesRequest(input *GetRecommendationSummariesInput) (req *request.Request, output *GetRecommendationSummariesOutput)

GetRecommendationSummariesRequest generates a "aws/request.Request" representing the client's request for the GetRecommendationSummaries operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetRecommendationSummaries for more information on using the GetRecommendationSummaries API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetRecommendationSummariesRequest method.
req, resp := client.GetRecommendationSummariesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetRecommendationSummaries

func (*ComputeOptimizer) GetRecommendationSummariesWithContext

func (c *ComputeOptimizer) GetRecommendationSummariesWithContext(ctx aws.Context, input *GetRecommendationSummariesInput, opts ...request.Option) (*GetRecommendationSummariesOutput, error)

GetRecommendationSummariesWithContext is the same as GetRecommendationSummaries with the addition of the ability to pass a context and additional request options.

See GetRecommendationSummaries for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ComputeOptimizer) UpdateEnrollmentStatus

UpdateEnrollmentStatus API operation for AWS Compute Optimizer.

Updates the enrollment (opt in) status of an account to the AWS Compute Optimizer service.

If the account is a master account of an organization, this operation can also enroll member accounts within the organization.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Compute Optimizer's API operation UpdateEnrollmentStatus for usage and error information.

Returned Error Codes:

  • ErrCodeInternalServerException "InternalServerException" The request processing has failed because of an unknown error, exception, or failure.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The request has failed due to a temporary failure of the server.

  • ErrCodeAccessDeniedException "AccessDeniedException" You do not have sufficient access to perform this action.

  • ErrCodeInvalidParameterValueException "InvalidParameterValueException" An invalid or out-of-range value was supplied for the input parameter.

  • ErrCodeMissingAuthenticationToken "MissingAuthenticationToken" The request must contain either a valid (registered) AWS access key ID or X.509 certificate.

  • ErrCodeThrottlingException "ThrottlingException" The limit on the number of requests per second was exceeded.

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/UpdateEnrollmentStatus

func (*ComputeOptimizer) UpdateEnrollmentStatusRequest

func (c *ComputeOptimizer) UpdateEnrollmentStatusRequest(input *UpdateEnrollmentStatusInput) (req *request.Request, output *UpdateEnrollmentStatusOutput)

UpdateEnrollmentStatusRequest generates a "aws/request.Request" representing the client's request for the UpdateEnrollmentStatus operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See UpdateEnrollmentStatus for more information on using the UpdateEnrollmentStatus API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the UpdateEnrollmentStatusRequest method.
req, resp := client.UpdateEnrollmentStatusRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/UpdateEnrollmentStatus

func (*ComputeOptimizer) UpdateEnrollmentStatusWithContext

func (c *ComputeOptimizer) UpdateEnrollmentStatusWithContext(ctx aws.Context, input *UpdateEnrollmentStatusInput, opts ...request.Option) (*UpdateEnrollmentStatusOutput, error)

UpdateEnrollmentStatusWithContext is the same as UpdateEnrollmentStatus with the addition of the ability to pass a context and additional request options.

See UpdateEnrollmentStatus for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

type Filter

type Filter struct {

	// The name of the filter.
	//
	// Specify Finding to filter the results to a specific findings classification.
	//
	// Specify RecommendationSourceType to filter the results to a specific resource
	// type.
	Name *string `locationName:"name" type:"string" enum:"FilterName"`

	// The value of the filter.
	//
	// If you specify the name parameter as Finding, and you're recommendations
	// for an instance, then the valid values are Underprovisioned, Overprovisioned,
	// NotOptimized, or Optimized.
	//
	// If you specify the name parameter as Finding, and you're recommendations
	// for an Auto Scaling group, then the valid values are Optimized, or NotOptimized.
	//
	// If you specify the name parameter as RecommendationSourceType, then the valid
	// values are EC2Instance, or AutoScalingGroup.
	Values []*string `locationName:"values" type:"list"`
	// contains filtered or unexported fields
}

Describes a filter that returns a more specific list of recommendations.

func (Filter) GoString

func (s Filter) GoString() string

GoString returns the string representation

func (*Filter) SetName

func (s *Filter) SetName(v string) *Filter

SetName sets the Name field's value.

func (*Filter) SetValues

func (s *Filter) SetValues(v []*string) *Filter

SetValues sets the Values field's value.

func (Filter) String

func (s Filter) String() string

String returns the string representation

type GetAutoScalingGroupRecommendationsInput

type GetAutoScalingGroupRecommendationsInput struct {

	// The AWS account IDs for which to return Auto Scaling group recommendations.
	//
	// Only one account ID can be specified per request.
	AccountIds []*string `locationName:"accountIds" type:"list"`

	// The Amazon Resource Name (ARN) of the Auto Scaling groups for which to return
	// recommendations.
	AutoScalingGroupArns []*string `locationName:"autoScalingGroupArns" type:"list"`

	// An array of objects that describe a filter that returns a more specific list
	// of Auto Scaling group recommendations.
	Filters []*Filter `locationName:"filters" type:"list"`

	// The maximum number of Auto Scaling group recommendations to return with a
	// single call.
	//
	// To retrieve the remaining results, make another call with the returned NextToken
	// value.
	MaxResults *int64 `locationName:"maxResults" type:"integer"`

	// The token to advance to the next page of Auto Scaling group recommendations.
	NextToken *string `locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (GetAutoScalingGroupRecommendationsInput) GoString

GoString returns the string representation

func (*GetAutoScalingGroupRecommendationsInput) SetAccountIds

SetAccountIds sets the AccountIds field's value.

func (*GetAutoScalingGroupRecommendationsInput) SetAutoScalingGroupArns

SetAutoScalingGroupArns sets the AutoScalingGroupArns field's value.

func (*GetAutoScalingGroupRecommendationsInput) SetFilters

SetFilters sets the Filters field's value.

func (*GetAutoScalingGroupRecommendationsInput) SetMaxResults

SetMaxResults sets the MaxResults field's value.

func (*GetAutoScalingGroupRecommendationsInput) SetNextToken

SetNextToken sets the NextToken field's value.

func (GetAutoScalingGroupRecommendationsInput) String

String returns the string representation

type GetAutoScalingGroupRecommendationsOutput

type GetAutoScalingGroupRecommendationsOutput struct {

	// An array of objects that describe Auto Scaling group recommendations.
	AutoScalingGroupRecommendations []*AutoScalingGroupRecommendation `locationName:"autoScalingGroupRecommendations" type:"list"`

	// An array of objects that describe errors of the request.
	//
	// For example, an error is returned if you request recommendations for an unsupported
	// Auto Scaling group.
	Errors []*GetRecommendationError `locationName:"errors" type:"list"`

	// The token to use to advance to the next page of Auto Scaling group recommendations.
	//
	// This value is null when there are no more pages of Auto Scaling group recommendations
	// to return.
	NextToken *string `locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (GetAutoScalingGroupRecommendationsOutput) GoString

GoString returns the string representation

func (*GetAutoScalingGroupRecommendationsOutput) SetAutoScalingGroupRecommendations

SetAutoScalingGroupRecommendations sets the AutoScalingGroupRecommendations field's value.

func (*GetAutoScalingGroupRecommendationsOutput) SetErrors

SetErrors sets the Errors field's value.

func (*GetAutoScalingGroupRecommendationsOutput) SetNextToken

SetNextToken sets the NextToken field's value.

func (GetAutoScalingGroupRecommendationsOutput) String

String returns the string representation

type GetEC2InstanceRecommendationsInput

type GetEC2InstanceRecommendationsInput struct {

	// The AWS account IDs for which to return instance recommendations.
	//
	// Only one account ID can be specified per request.
	AccountIds []*string `locationName:"accountIds" type:"list"`

	// An array of objects that describe a filter that returns a more specific list
	// of instance recommendations.
	Filters []*Filter `locationName:"filters" type:"list"`

	// The Amazon Resource Name (ARN) of the instances for which to return recommendations.
	InstanceArns []*string `locationName:"instanceArns" type:"list"`

	// The maximum number of instance recommendations to return with a single call.
	//
	// To retrieve the remaining results, make another call with the returned NextToken
	// value.
	MaxResults *int64 `locationName:"maxResults" type:"integer"`

	// The token to advance to the next page of instance recommendations.
	NextToken *string `locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (GetEC2InstanceRecommendationsInput) GoString

GoString returns the string representation

func (*GetEC2InstanceRecommendationsInput) SetAccountIds

SetAccountIds sets the AccountIds field's value.

func (*GetEC2InstanceRecommendationsInput) SetFilters

SetFilters sets the Filters field's value.

func (*GetEC2InstanceRecommendationsInput) SetInstanceArns

SetInstanceArns sets the InstanceArns field's value.

func (*GetEC2InstanceRecommendationsInput) SetMaxResults

SetMaxResults sets the MaxResults field's value.

func (*GetEC2InstanceRecommendationsInput) SetNextToken

SetNextToken sets the NextToken field's value.

func (GetEC2InstanceRecommendationsInput) String

String returns the string representation

type GetEC2InstanceRecommendationsOutput

type GetEC2InstanceRecommendationsOutput struct {

	// An array of objects that describe errors of the request.
	//
	// For example, an error is returned if you request recommendations for an instance
	// of an unsupported instance family.
	Errors []*GetRecommendationError `locationName:"errors" type:"list"`

	// An array of objects that describe instance recommendations.
	InstanceRecommendations []*InstanceRecommendation `locationName:"instanceRecommendations" type:"list"`

	// The token to use to advance to the next page of instance recommendations.
	//
	// This value is null when there are no more pages of instance recommendations
	// to return.
	NextToken *string `locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (GetEC2InstanceRecommendationsOutput) GoString

GoString returns the string representation

func (*GetEC2InstanceRecommendationsOutput) SetErrors

SetErrors sets the Errors field's value.

func (*GetEC2InstanceRecommendationsOutput) SetInstanceRecommendations

SetInstanceRecommendations sets the InstanceRecommendations field's value.

func (*GetEC2InstanceRecommendationsOutput) SetNextToken

SetNextToken sets the NextToken field's value.

func (GetEC2InstanceRecommendationsOutput) String

String returns the string representation

type GetEC2RecommendationProjectedMetricsInput

type GetEC2RecommendationProjectedMetricsInput struct {

	// The time stamp of the last projected metrics data point to return.
	//
	// EndTime is a required field
	EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"`

	// The Amazon Resource Name (ARN) of the instances for which to return recommendation
	// projected metrics.
	//
	// InstanceArn is a required field
	InstanceArn *string `locationName:"instanceArn" type:"string" required:"true"`

	// The granularity, in seconds, of the projected metrics data points.
	//
	// Period is a required field
	Period *int64 `locationName:"period" type:"integer" required:"true"`

	// The time stamp of the first projected metrics data point to return.
	//
	// StartTime is a required field
	StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"`

	// The statistic of the projected metrics.
	//
	// Stat is a required field
	Stat *string `locationName:"stat" type:"string" required:"true" enum:"MetricStatistic"`
	// contains filtered or unexported fields
}

func (GetEC2RecommendationProjectedMetricsInput) GoString

GoString returns the string representation

func (*GetEC2RecommendationProjectedMetricsInput) SetEndTime

SetEndTime sets the EndTime field's value.

func (*GetEC2RecommendationProjectedMetricsInput) SetInstanceArn

SetInstanceArn sets the InstanceArn field's value.

func (*GetEC2RecommendationProjectedMetricsInput) SetPeriod

SetPeriod sets the Period field's value.

func (*GetEC2RecommendationProjectedMetricsInput) SetStartTime

SetStartTime sets the StartTime field's value.

func (*GetEC2RecommendationProjectedMetricsInput) SetStat

SetStat sets the Stat field's value.

func (GetEC2RecommendationProjectedMetricsInput) String

String returns the string representation

func (*GetEC2RecommendationProjectedMetricsInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type GetEC2RecommendationProjectedMetricsOutput

type GetEC2RecommendationProjectedMetricsOutput struct {

	// An array of objects that describe a projected metrics.
	RecommendedOptionProjectedMetrics []*RecommendedOptionProjectedMetric `locationName:"recommendedOptionProjectedMetrics" type:"list"`
	// contains filtered or unexported fields
}

func (GetEC2RecommendationProjectedMetricsOutput) GoString

GoString returns the string representation

func (*GetEC2RecommendationProjectedMetricsOutput) SetRecommendedOptionProjectedMetrics

SetRecommendedOptionProjectedMetrics sets the RecommendedOptionProjectedMetrics field's value.

func (GetEC2RecommendationProjectedMetricsOutput) String

String returns the string representation

type GetEnrollmentStatusInput

type GetEnrollmentStatusInput struct {
	// contains filtered or unexported fields
}

func (GetEnrollmentStatusInput) GoString

func (s GetEnrollmentStatusInput) GoString() string

GoString returns the string representation

func (GetEnrollmentStatusInput) String

func (s GetEnrollmentStatusInput) String() string

String returns the string representation

type GetEnrollmentStatusOutput

type GetEnrollmentStatusOutput struct {

	// Confirms the enrollment status of member accounts within the organization,
	// if the account is a master account of an organization.
	MemberAccountsEnrolled *bool `locationName:"memberAccountsEnrolled" type:"boolean"`

	// The enrollment status of the account.
	Status *string `locationName:"status" type:"string" enum:"Status"`

	// The reason for the enrollment status of the account.
	//
	// For example, an account might show a status of Pending because member accounts
	// of an organization require more time to be enrolled in the service.
	StatusReason *string `locationName:"statusReason" type:"string"`
	// contains filtered or unexported fields
}

func (GetEnrollmentStatusOutput) GoString

func (s GetEnrollmentStatusOutput) GoString() string

GoString returns the string representation

func (*GetEnrollmentStatusOutput) SetMemberAccountsEnrolled

func (s *GetEnrollmentStatusOutput) SetMemberAccountsEnrolled(v bool) *GetEnrollmentStatusOutput

SetMemberAccountsEnrolled sets the MemberAccountsEnrolled field's value.

func (*GetEnrollmentStatusOutput) SetStatus

SetStatus sets the Status field's value.

func (*GetEnrollmentStatusOutput) SetStatusReason

SetStatusReason sets the StatusReason field's value.

func (GetEnrollmentStatusOutput) String

func (s GetEnrollmentStatusOutput) String() string

String returns the string representation

type GetRecommendationError

type GetRecommendationError struct {

	// The error code.
	Code *string `locationName:"code" type:"string"`

	// The ID of the error.
	Identifier *string `locationName:"identifier" type:"string"`

	// The message, or reason, for the error.
	Message *string `locationName:"message" type:"string"`
	// contains filtered or unexported fields
}

Describes an error experienced when getting recommendations.

For example, an error is returned if you request recommendations for an unsupported Auto Scaling group, or if you request recommendations for an instance of an unsupported instance family.

func (GetRecommendationError) GoString

func (s GetRecommendationError) GoString() string

GoString returns the string representation

func (*GetRecommendationError) SetCode

SetCode sets the Code field's value.

func (*GetRecommendationError) SetIdentifier

SetIdentifier sets the Identifier field's value.

func (*GetRecommendationError) SetMessage

SetMessage sets the Message field's value.

func (GetRecommendationError) String

func (s GetRecommendationError) String() string

String returns the string representation

type GetRecommendationSummariesInput

type GetRecommendationSummariesInput struct {

	// The AWS account IDs for which to return recommendation summaries.
	//
	// Only one account ID can be specified per request.
	AccountIds []*string `locationName:"accountIds" type:"list"`

	// The maximum number of recommendation summaries to return with a single call.
	//
	// To retrieve the remaining results, make another call with the returned NextToken
	// value.
	MaxResults *int64 `locationName:"maxResults" type:"integer"`

	// The token to advance to the next page of recommendation summaries.
	NextToken *string `locationName:"nextToken" type:"string"`
	// contains filtered or unexported fields
}

func (GetRecommendationSummariesInput) GoString

GoString returns the string representation

func (*GetRecommendationSummariesInput) SetAccountIds

SetAccountIds sets the AccountIds field's value.

func (*GetRecommendationSummariesInput) SetMaxResults

SetMaxResults sets the MaxResults field's value.

func (*GetRecommendationSummariesInput) SetNextToken

SetNextToken sets the NextToken field's value.

func (GetRecommendationSummariesInput) String

String returns the string representation

type GetRecommendationSummariesOutput

type GetRecommendationSummariesOutput struct {

	// The token to use to advance to the next page of recommendation summaries.
	//
	// This value is null when there are no more pages of recommendation summaries
	// to return.
	NextToken *string `locationName:"nextToken" type:"string"`

	// An array of objects that summarize a recommendation.
	RecommendationSummaries []*RecommendationSummary `locationName:"recommendationSummaries" type:"list"`
	// contains filtered or unexported fields
}

func (GetRecommendationSummariesOutput) GoString

GoString returns the string representation

func (*GetRecommendationSummariesOutput) SetNextToken

SetNextToken sets the NextToken field's value.

func (*GetRecommendationSummariesOutput) SetRecommendationSummaries

SetRecommendationSummaries sets the RecommendationSummaries field's value.

func (GetRecommendationSummariesOutput) String

String returns the string representation

type InstanceRecommendation

type InstanceRecommendation struct {

	// The AWS account ID of the instance recommendation.
	AccountId *string `locationName:"accountId" type:"string"`

	// The instance type of the current instance.
	CurrentInstanceType *string `locationName:"currentInstanceType" type:"string"`

	// The finding classification for the instance.
	//
	// Findings for instances include:
	//
	//    * Underprovisioned —An instance is considered under-provisioned when
	//    at least one specification of your instance, such as CPU, memory, or network,
	//    does not meet the performance requirements of your workload. Under-provisioned
	//    instances may lead to poor application performance.
	//
	//    * Overprovisioned —An instance is considered over-provisioned when at
	//    least one specification of your instance, such as CPU, memory, or network,
	//    can be sized down while still meeting the performance requirements of
	//    your workload, and no specification is under-provisioned. Over-provisioned
	//    instances may lead to unnecessary infrastructure cost.
	//
	//    * Optimized —An instance is considered optimized when all specifications
	//    of your instance, such as CPU, memory, and network, meet the performance
	//    requirements of your workload and is not over provisioned. An optimized
	//    instance runs your workloads with optimal performance and infrastructure
	//    cost. For optimized resources, AWS Compute Optimizer might recommend a
	//    new generation instance type.
	//
	// The values that are returned might be UNDER_PROVISIONED, OVER_PROVISIONED,
	// or OPTIMIZED.
	Finding *string `locationName:"finding" type:"string" enum:"Finding"`

	// The Amazon Resource Name (ARN) of the current instance.
	InstanceArn *string `locationName:"instanceArn" type:"string"`

	// The name of the current instance.
	InstanceName *string `locationName:"instanceName" type:"string"`

	// The time stamp of when the instance recommendation was last refreshed.
	LastRefreshTimestamp *time.Time `locationName:"lastRefreshTimestamp" type:"timestamp"`

	// The number of days for which utilization metrics were analyzed for the instance.
	LookBackPeriodInDays *float64 `locationName:"lookBackPeriodInDays" type:"double"`

	// An array of objects that describe the recommendation options for the instance.
	RecommendationOptions []*InstanceRecommendationOption `locationName:"recommendationOptions" type:"list"`

	// An array of objects that describe the source resource of the recommendation.
	RecommendationSources []*RecommendationSource `locationName:"recommendationSources" type:"list"`

	// An array of objects that describe the utilization metrics of the instance.
	UtilizationMetrics []*UtilizationMetric `locationName:"utilizationMetrics" type:"list"`
	// contains filtered or unexported fields
}

Describes an Amazon EC2 instance recommendation.

func (InstanceRecommendation) GoString

func (s InstanceRecommendation) GoString() string

GoString returns the string representation

func (*InstanceRecommendation) SetAccountId

SetAccountId sets the AccountId field's value.

func (*InstanceRecommendation) SetCurrentInstanceType

func (s *InstanceRecommendation) SetCurrentInstanceType(v string) *InstanceRecommendation

SetCurrentInstanceType sets the CurrentInstanceType field's value.

func (*InstanceRecommendation) SetFinding

SetFinding sets the Finding field's value.

func (*InstanceRecommendation) SetInstanceArn

SetInstanceArn sets the InstanceArn field's value.

func (*InstanceRecommendation) SetInstanceName

func (s *InstanceRecommendation) SetInstanceName(v string) *InstanceRecommendation

SetInstanceName sets the InstanceName field's value.

func (*InstanceRecommendation) SetLastRefreshTimestamp

func (s *InstanceRecommendation) SetLastRefreshTimestamp(v time.Time) *InstanceRecommendation

SetLastRefreshTimestamp sets the LastRefreshTimestamp field's value.

func (*InstanceRecommendation) SetLookBackPeriodInDays

func (s *InstanceRecommendation) SetLookBackPeriodInDays(v float64) *InstanceRecommendation

SetLookBackPeriodInDays sets the LookBackPeriodInDays field's value.

func (*InstanceRecommendation) SetRecommendationOptions

SetRecommendationOptions sets the RecommendationOptions field's value.

func (*InstanceRecommendation) SetRecommendationSources

func (s *InstanceRecommendation) SetRecommendationSources(v []*RecommendationSource) *InstanceRecommendation

SetRecommendationSources sets the RecommendationSources field's value.

func (*InstanceRecommendation) SetUtilizationMetrics

func (s *InstanceRecommendation) SetUtilizationMetrics(v []*UtilizationMetric) *InstanceRecommendation

SetUtilizationMetrics sets the UtilizationMetrics field's value.

func (InstanceRecommendation) String

func (s InstanceRecommendation) String() string

String returns the string representation

type InstanceRecommendationOption

type InstanceRecommendationOption struct {

	// The instance type of the instance recommendation.
	InstanceType *string `locationName:"instanceType" type:"string"`

	// The performance risk of the instance recommendation option.
	//
	// Performance risk is the likelihood of the recommended instance type not meeting
	// the performance requirement of your workload.
	//
	// The lowest performance risk is categorized as 0, and the highest as 5.
	PerformanceRisk *float64 `locationName:"performanceRisk" type:"double"`

	// An array of objects that describe the projected utilization metrics of the
	// instance recommendation option.
	ProjectedUtilizationMetrics []*UtilizationMetric `locationName:"projectedUtilizationMetrics" type:"list"`

	// The rank of the instance recommendation option.
	//
	// The top recommendation option is ranked as 1.
	Rank *int64 `locationName:"rank" type:"integer"`
	// contains filtered or unexported fields
}

Describes a recommendation option for an Amazon EC2 instance.

func (InstanceRecommendationOption) GoString

func (s InstanceRecommendationOption) GoString() string

GoString returns the string representation

func (*InstanceRecommendationOption) SetInstanceType

SetInstanceType sets the InstanceType field's value.

func (*InstanceRecommendationOption) SetPerformanceRisk

SetPerformanceRisk sets the PerformanceRisk field's value.

func (*InstanceRecommendationOption) SetProjectedUtilizationMetrics

func (s *InstanceRecommendationOption) SetProjectedUtilizationMetrics(v []*UtilizationMetric) *InstanceRecommendationOption

SetProjectedUtilizationMetrics sets the ProjectedUtilizationMetrics field's value.

func (*InstanceRecommendationOption) SetRank

SetRank sets the Rank field's value.

func (InstanceRecommendationOption) String

String returns the string representation

type ProjectedMetric

type ProjectedMetric struct {

	// The name of the projected utilization metric.
	//
	// Memory metrics are only returned for resources that have the unified CloudWatch
	// agent installed on them. For more information, see Enabling Memory Utilization
	// with the CloudWatch Agent (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html).
	Name *string `locationName:"name" type:"string" enum:"MetricName"`

	// The time stamps of the projected utilization metric.
	Timestamps []*time.Time `locationName:"timestamps" type:"list"`

	// The values of the projected utilization metrics.
	Values []*float64 `locationName:"values" type:"list"`
	// contains filtered or unexported fields
}

Describes a projected utilization metric of a recommendation option, such as an Amazon EC2 instance.

func (ProjectedMetric) GoString

func (s ProjectedMetric) GoString() string

GoString returns the string representation

func (*ProjectedMetric) SetName

func (s *ProjectedMetric) SetName(v string) *ProjectedMetric

SetName sets the Name field's value.

func (*ProjectedMetric) SetTimestamps

func (s *ProjectedMetric) SetTimestamps(v []*time.Time) *ProjectedMetric

SetTimestamps sets the Timestamps field's value.

func (*ProjectedMetric) SetValues

func (s *ProjectedMetric) SetValues(v []*float64) *ProjectedMetric

SetValues sets the Values field's value.

func (ProjectedMetric) String

func (s ProjectedMetric) String() string

String returns the string representation

type RecommendationSource

type RecommendationSource struct {

	// The Amazon Resource Name (ARN) of the recommendation source.
	RecommendationSourceArn *string `locationName:"recommendationSourceArn" type:"string"`

	// The resource type of the recommendation source.
	RecommendationSourceType *string `locationName:"recommendationSourceType" type:"string" enum:"RecommendationSourceType"`
	// contains filtered or unexported fields
}

Describes the source of a recommendation, such as an Amazon EC2 instance or Auto Scaling group.

func (RecommendationSource) GoString

func (s RecommendationSource) GoString() string

GoString returns the string representation

func (*RecommendationSource) SetRecommendationSourceArn

func (s *RecommendationSource) SetRecommendationSourceArn(v string) *RecommendationSource

SetRecommendationSourceArn sets the RecommendationSourceArn field's value.

func (*RecommendationSource) SetRecommendationSourceType

func (s *RecommendationSource) SetRecommendationSourceType(v string) *RecommendationSource

SetRecommendationSourceType sets the RecommendationSourceType field's value.

func (RecommendationSource) String

func (s RecommendationSource) String() string

String returns the string representation

type RecommendationSummary

type RecommendationSummary struct {

	// The AWS account ID of the recommendation summary.
	AccountId *string `locationName:"accountId" type:"string"`

	// The resource type of the recommendation.
	RecommendationResourceType *string `locationName:"recommendationResourceType" type:"string" enum:"RecommendationSourceType"`

	// An array of objects that describe a recommendation summary.
	Summaries []*Summary `locationName:"summaries" type:"list"`
	// contains filtered or unexported fields
}

A summary of a recommendation.

func (RecommendationSummary) GoString

func (s RecommendationSummary) GoString() string

GoString returns the string representation

func (*RecommendationSummary) SetAccountId

SetAccountId sets the AccountId field's value.

func (*RecommendationSummary) SetRecommendationResourceType

func (s *RecommendationSummary) SetRecommendationResourceType(v string) *RecommendationSummary

SetRecommendationResourceType sets the RecommendationResourceType field's value.

func (*RecommendationSummary) SetSummaries

func (s *RecommendationSummary) SetSummaries(v []*Summary) *RecommendationSummary

SetSummaries sets the Summaries field's value.

func (RecommendationSummary) String

func (s RecommendationSummary) String() string

String returns the string representation

type RecommendedOptionProjectedMetric

type RecommendedOptionProjectedMetric struct {

	// An array of objects that describe a projected utilization metric.
	ProjectedMetrics []*ProjectedMetric `locationName:"projectedMetrics" type:"list"`

	// The rank of the recommendation option projected metric.
	//
	// The top recommendation option is ranked as 1.
	//
	// The projected metric rank correlates to the recommendation option rank. For
	// example, the projected metric ranked as 1 is related to the recommendation
	// option that is also ranked as 1 in the same response.
	Rank *int64 `locationName:"rank" type:"integer"`

	// The recommended instance type.
	RecommendedInstanceType *string `locationName:"recommendedInstanceType" type:"string"`
	// contains filtered or unexported fields
}

Describes a projected utilization metric of a recommendation option.

func (RecommendedOptionProjectedMetric) GoString

GoString returns the string representation

func (*RecommendedOptionProjectedMetric) SetProjectedMetrics

SetProjectedMetrics sets the ProjectedMetrics field's value.

func (*RecommendedOptionProjectedMetric) SetRank

SetRank sets the Rank field's value.

func (*RecommendedOptionProjectedMetric) SetRecommendedInstanceType

SetRecommendedInstanceType sets the RecommendedInstanceType field's value.

func (RecommendedOptionProjectedMetric) String

String returns the string representation

type Summary

type Summary struct {

	// The finding classification of the recommendation.
	Name *string `locationName:"name" type:"string" enum:"Finding"`

	// The value of the recommendation summary.
	Value *float64 `locationName:"value" type:"double"`
	// contains filtered or unexported fields
}

The summary of a recommendation.

func (Summary) GoString

func (s Summary) GoString() string

GoString returns the string representation

func (*Summary) SetName

func (s *Summary) SetName(v string) *Summary

SetName sets the Name field's value.

func (*Summary) SetValue

func (s *Summary) SetValue(v float64) *Summary

SetValue sets the Value field's value.

func (Summary) String

func (s Summary) String() string

String returns the string representation

type UpdateEnrollmentStatusInput

type UpdateEnrollmentStatusInput struct {

	// Indicates whether to enroll member accounts within the organization, if the
	// account is a master account of an organization.
	IncludeMemberAccounts *bool `locationName:"includeMemberAccounts" type:"boolean"`

	// The new enrollment status of the account.
	//
	// Accepted options are Active or Inactive. You will get an error if Pending
	// or Failed are specified.
	//
	// Status is a required field
	Status *string `locationName:"status" type:"string" required:"true" enum:"Status"`
	// contains filtered or unexported fields
}

func (UpdateEnrollmentStatusInput) GoString

func (s UpdateEnrollmentStatusInput) GoString() string

GoString returns the string representation

func (*UpdateEnrollmentStatusInput) SetIncludeMemberAccounts

func (s *UpdateEnrollmentStatusInput) SetIncludeMemberAccounts(v bool) *UpdateEnrollmentStatusInput

SetIncludeMemberAccounts sets the IncludeMemberAccounts field's value.

func (*UpdateEnrollmentStatusInput) SetStatus

SetStatus sets the Status field's value.

func (UpdateEnrollmentStatusInput) String

String returns the string representation

func (*UpdateEnrollmentStatusInput) Validate

func (s *UpdateEnrollmentStatusInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateEnrollmentStatusOutput

type UpdateEnrollmentStatusOutput struct {

	// The enrollment status of the account.
	Status *string `locationName:"status" type:"string" enum:"Status"`

	// The reason for the enrollment status of the account. For example, an account
	// might show a status of Pending because member accounts of an organization
	// require more time to be enrolled in the service.
	StatusReason *string `locationName:"statusReason" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateEnrollmentStatusOutput) GoString

func (s UpdateEnrollmentStatusOutput) GoString() string

GoString returns the string representation

func (*UpdateEnrollmentStatusOutput) SetStatus

SetStatus sets the Status field's value.

func (*UpdateEnrollmentStatusOutput) SetStatusReason

SetStatusReason sets the StatusReason field's value.

func (UpdateEnrollmentStatusOutput) String

String returns the string representation

type UtilizationMetric

type UtilizationMetric struct {

	// The name of the utilization metric.
	//
	// Memory metrics are only returned for resources that have the unified CloudWatch
	// agent installed on them. For more information, see Enabling Memory Utilization
	// with the CloudWatch Agent (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html).
	Name *string `locationName:"name" type:"string" enum:"MetricName"`

	// The statistic of the utilization metric.
	Statistic *string `locationName:"statistic" type:"string" enum:"MetricStatistic"`

	// The value of the utilization metric.
	Value *float64 `locationName:"value" type:"double"`
	// contains filtered or unexported fields
}

Describes a utilization metric of a resource, such as an Amazon EC2 instance.

func (UtilizationMetric) GoString

func (s UtilizationMetric) GoString() string

GoString returns the string representation

func (*UtilizationMetric) SetName

SetName sets the Name field's value.

func (*UtilizationMetric) SetStatistic

func (s *UtilizationMetric) SetStatistic(v string) *UtilizationMetric

SetStatistic sets the Statistic field's value.

func (*UtilizationMetric) SetValue

SetValue sets the Value field's value.

func (UtilizationMetric) String

func (s UtilizationMetric) String() string

String returns the string representation

Directories

Path Synopsis
Package computeoptimizeriface provides an interface to enable mocking the AWS Compute Optimizer service client for testing your code.
Package computeoptimizeriface provides an interface to enable mocking the AWS Compute Optimizer service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL