types

package
v1.4.8 Latest Latest
Warning

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

Go to latest
Published: May 23, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessDeniedException

type AccessDeniedException struct {
	Message *string

	ErrorCodeOverride *string
	// contains filtered or unexported fields
}

You are not authorized to use this operation with the given parameters.

func (*AccessDeniedException) Error

func (e *AccessDeniedException) Error() string

func (*AccessDeniedException) ErrorCode

func (e *AccessDeniedException) ErrorCode() string

func (*AccessDeniedException) ErrorFault

func (e *AccessDeniedException) ErrorFault() smithy.ErrorFault

func (*AccessDeniedException) ErrorMessage

func (e *AccessDeniedException) ErrorMessage() string

type AccountEnrollmentStatus

type AccountEnrollmentStatus struct {

	// The Amazon Web Services account ID.
	AccountId *string

	// The time when the account enrollment status was created.
	CreatedTimestamp *time.Time

	// The time when the account enrollment status was last updated.
	LastUpdatedTimestamp *time.Time

	// The account enrollment status.
	Status EnrollmentStatus
	// contains filtered or unexported fields
}

Describes the enrollment status of an organization's member accounts in Cost Optimization Hub.

type ActionType

type ActionType string
const (
	ActionTypeRightsize                 ActionType = "Rightsize"
	ActionTypeStop                      ActionType = "Stop"
	ActionTypeUpgrade                   ActionType = "Upgrade"
	ActionTypePurchaseSavingsPlans      ActionType = "PurchaseSavingsPlans"
	ActionTypePurchaseReservedInstances ActionType = "PurchaseReservedInstances"
	ActionTypeMigrateToGraviton         ActionType = "MigrateToGraviton"
)

Enum values for ActionType

func (ActionType) Values

func (ActionType) Values() []ActionType

Values returns all known values for ActionType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BlockStoragePerformanceConfiguration

type BlockStoragePerformanceConfiguration struct {

	// The number of I/O operations per second.
	Iops *float64

	// The throughput that the volume supports.
	Throughput *float64
	// contains filtered or unexported fields
}

Describes the Amazon Elastic Block Store performance configuration of the current and recommended resource configuration for a recommendation.

type ComputeConfiguration

type ComputeConfiguration struct {

	// The architecture of the resource.
	Architecture *string

	// The memory size of the resource.
	MemorySizeInMB *int32

	// The platform of the resource. The platform is the specific combination of
	// operating system, license model, and software on an instance.
	Platform *string

	// The number of vCPU cores in the resource.
	VCpu *float64
	// contains filtered or unexported fields
}

Describes the performance configuration for compute services such as Amazon EC2, Lambda, and ECS.

type ComputeSavingsPlans

type ComputeSavingsPlans struct {

	// Configuration details of the Compute Savings Plans to purchase.
	Configuration *ComputeSavingsPlansConfiguration

	// Cost impact of the Savings Plans purchase recommendation.
	CostCalculation *SavingsPlansCostCalculation
	// contains filtered or unexported fields
}

The Compute Savings Plans recommendation details.

type ComputeSavingsPlansConfiguration

type ComputeSavingsPlansConfiguration struct {

	// The account scope that you want your recommendations for. Amazon Web Services
	// calculates recommendations including the management account and member accounts
	// if the value is set to PAYER . If the value is LINKED , recommendations are
	// calculated for individual member accounts only.
	AccountScope *string

	// The hourly commitment for the Savings Plans type.
	HourlyCommitment *string

	// The payment option for the commitment.
	PaymentOption *string

	// The Savings Plans recommendation term in years.
	Term *string
	// contains filtered or unexported fields
}

The Compute Savings Plans configuration used for recommendations.

type EbsVolume

type EbsVolume struct {

	// The Amazon Elastic Block Store volume configuration used for recommendations.
	Configuration *EbsVolumeConfiguration

	// Cost impact of the recommendation.
	CostCalculation *ResourceCostCalculation
	// contains filtered or unexported fields
}

Describes the Amazon Elastic Block Store volume configuration of the current and recommended resource configuration for a recommendation.

type EbsVolumeConfiguration

type EbsVolumeConfiguration struct {

	// The Amazon Elastic Block Store attachment state.
	AttachmentState *string

	// The Amazon Elastic Block Store performance configuration.
	Performance *BlockStoragePerformanceConfiguration

	// The disk storage of the Amazon Elastic Block Store volume.
	Storage *StorageConfiguration
	// contains filtered or unexported fields
}

The Amazon Elastic Block Store volume configuration used for recommendations.

type Ec2AutoScalingGroup

type Ec2AutoScalingGroup struct {

	// The EC2 Auto Scaling group configuration used for recommendations.
	Configuration *Ec2AutoScalingGroupConfiguration

	// Cost impact of the recommendation.
	CostCalculation *ResourceCostCalculation
	// contains filtered or unexported fields
}

The EC2 Auto Scaling group recommendation details.

type Ec2AutoScalingGroupConfiguration

type Ec2AutoScalingGroupConfiguration struct {

	// Details about the instance.
	Instance *InstanceConfiguration
	// contains filtered or unexported fields
}

The EC2 auto scaling group configuration used for recommendations.

type Ec2Instance

type Ec2Instance struct {

	// The EC2 instance configuration used for recommendations.
	Configuration *Ec2InstanceConfiguration

	// Cost impact of the recommendation.
	CostCalculation *ResourceCostCalculation
	// contains filtered or unexported fields
}

Describes the EC2 instance configuration of the current and recommended resource configuration for a recommendation.

type Ec2InstanceConfiguration

type Ec2InstanceConfiguration struct {

	// Details about the instance.
	Instance *InstanceConfiguration
	// contains filtered or unexported fields
}

The EC2 instance configuration used for recommendations.

type Ec2InstanceSavingsPlans

type Ec2InstanceSavingsPlans struct {

	// The EC2 instance Savings Plans configuration used for recommendations.
	Configuration *Ec2InstanceSavingsPlansConfiguration

	// Cost impact of the Savings Plans purchase recommendation.
	CostCalculation *SavingsPlansCostCalculation
	// contains filtered or unexported fields
}

The EC2 instance Savings Plans recommendation details.

type Ec2InstanceSavingsPlansConfiguration

type Ec2InstanceSavingsPlansConfiguration struct {

	// The account scope that you want your recommendations for.
	AccountScope *string

	// The hourly commitment for the Savings Plans type.
	HourlyCommitment *string

	// The instance family of the recommended Savings Plan.
	InstanceFamily *string

	// The payment option for the commitment.
	PaymentOption *string

	// The Amazon Web Services Region of the commitment.
	SavingsPlansRegion *string

	// The Savings Plans recommendation term in years.
	Term *string
	// contains filtered or unexported fields
}

The EC2 instance Savings Plans configuration used for recommendations.

type Ec2ReservedInstances

type Ec2ReservedInstances struct {

	// The EC2 reserved instances configuration used for recommendations.
	Configuration *Ec2ReservedInstancesConfiguration

	// Cost impact of the purchase recommendation.
	CostCalculation *ReservedInstancesCostCalculation
	// contains filtered or unexported fields
}

The EC2 reserved instances recommendation details.

type Ec2ReservedInstancesConfiguration

type Ec2ReservedInstancesConfiguration struct {

	// The account scope that you want your recommendations for.
	AccountScope *string

	// Determines whether the recommendation is for a current generation instance.
	CurrentGeneration *string

	// The instance family of the recommended reservation.
	InstanceFamily *string

	// The type of instance that Amazon Web Services recommends.
	InstanceType *string

	// How much purchasing reserved instances costs you on a monthly basis.
	MonthlyRecurringCost *string

	// The number of normalized units that Amazon Web Services recommends that you
	// purchase.
	NormalizedUnitsToPurchase *string

	// The number of instances that Amazon Web Services recommends that you purchase.
	NumberOfInstancesToPurchase *string

	// Indicates whether the recommendation is for standard or convertible
	// reservations.
	OfferingClass *string

	// The payment option for the commitment.
	PaymentOption *string

	// The platform of the recommended reservation. The platform is the specific
	// combination of operating system, license model, and software on an instance.
	Platform *string

	// The Amazon Web Services Region of the commitment.
	ReservedInstancesRegion *string

	// The service that you want your recommendations for.
	Service *string

	// Determines whether the recommendation is size flexible.
	SizeFlexEligible *bool

	// Determines whether the recommended reservation is dedicated or shared.
	Tenancy *string

	// The reserved instances recommendation term in years.
	Term *string

	// How much purchasing this instance costs you upfront.
	UpfrontCost *string
	// contains filtered or unexported fields
}

The EC2 reserved instances configuration used for recommendations.

type EcsService

type EcsService struct {

	// The ECS service configuration used for recommendations.
	Configuration *EcsServiceConfiguration

	// Cost impact of the recommendation.
	CostCalculation *ResourceCostCalculation
	// contains filtered or unexported fields
}

The ECS service recommendation details.

type EcsServiceConfiguration

type EcsServiceConfiguration struct {

	// Details about the compute configuration.
	Compute *ComputeConfiguration
	// contains filtered or unexported fields
}

The ECS service configuration used for recommendations.

type ElastiCacheReservedInstances

type ElastiCacheReservedInstances struct {

	// The ElastiCache reserved instances configuration used for recommendations.
	Configuration *ElastiCacheReservedInstancesConfiguration

	// Cost impact of the purchase recommendation.
	CostCalculation *ReservedInstancesCostCalculation
	// contains filtered or unexported fields
}

The ElastiCache reserved instances recommendation details.

type ElastiCacheReservedInstancesConfiguration

type ElastiCacheReservedInstancesConfiguration struct {

	// The account scope that you want your recommendations for.
	AccountScope *string

	// Determines whether the recommendation is for a current generation instance.
	CurrentGeneration *string

	// The instance family of the recommended reservation.
	InstanceFamily *string

	// The type of instance that Amazon Web Services recommends.
	InstanceType *string

	// How much purchasing reserved instances costs you on a monthly basis.
	MonthlyRecurringCost *string

	// The number of normalized units that Amazon Web Services recommends that you
	// purchase.
	NormalizedUnitsToPurchase *string

	// The number of instances that Amazon Web Services recommends that you purchase.
	NumberOfInstancesToPurchase *string

	// The payment option for the commitment.
	PaymentOption *string

	// The Amazon Web Services Region of the commitment.
	ReservedInstancesRegion *string

	// The service that you want your recommendations for.
	Service *string

	// Determines whether the recommendation is size flexible.
	SizeFlexEligible *bool

	// The reserved instances recommendation term in years.
	Term *string

	// How much purchasing this instance costs you upfront.
	UpfrontCost *string
	// contains filtered or unexported fields
}

The ElastiCache reserved instances configuration used for recommendations.

type EnrollmentStatus

type EnrollmentStatus string
const (
	EnrollmentStatusActive   EnrollmentStatus = "Active"
	EnrollmentStatusInactive EnrollmentStatus = "Inactive"
)

Enum values for EnrollmentStatus

func (EnrollmentStatus) Values

Values returns all known values for EnrollmentStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EstimatedDiscounts

type EstimatedDiscounts struct {

	// Estimated other discounts include all discounts that are not itemized. Itemized
	// discounts include reservedInstanceDiscount and savingsPlansDiscount .
	OtherDiscount *float64

	// Estimated reserved instance discounts.
	ReservedInstancesDiscount *float64

	// Estimated Savings Plans discounts.
	SavingsPlansDiscount *float64
	// contains filtered or unexported fields
}

Estimated discount details of the current and recommended resource configuration for a recommendation.

type Filter

type Filter struct {

	// The account that the recommendation is for.
	AccountIds []string

	// The type of action you can take by adopting the recommendation.
	ActionTypes []ActionType

	// The effort required to implement the recommendation.
	ImplementationEfforts []ImplementationEffort

	// The IDs for the recommendations.
	RecommendationIds []string

	// The Amazon Web Services Region of the resource.
	Regions []string

	// The Amazon Resource Name (ARN) of the recommendation.
	ResourceArns []string

	// The resource ID of the recommendation.
	ResourceIds []string

	// The resource type of the recommendation.
	ResourceTypes []ResourceType

	// Whether or not implementing the recommendation requires a restart.
	RestartNeeded *bool

	// Whether or not implementing the recommendation can be rolled back.
	RollbackPossible *bool

	// A list of tags assigned to the recommendation.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a filter that returns a more specific list of recommendations. Filters recommendations by different dimensions.

type ImplementationEffort

type ImplementationEffort string
const (
	ImplementationEffortVeryLow  ImplementationEffort = "VeryLow"
	ImplementationEffortLow      ImplementationEffort = "Low"
	ImplementationEffortMedium   ImplementationEffort = "Medium"
	ImplementationEffortHigh     ImplementationEffort = "High"
	ImplementationEffortVeryHigh ImplementationEffort = "VeryHigh"
)

Enum values for ImplementationEffort

func (ImplementationEffort) Values

Values returns all known values for ImplementationEffort. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceConfiguration

type InstanceConfiguration struct {

	// Details about the type.
	Type *string
	// contains filtered or unexported fields
}

The Instance configuration used for recommendations.

type InternalServerException

type InternalServerException struct {
	Message *string

	ErrorCodeOverride *string
	// contains filtered or unexported fields
}

An error on the server occurred during the processing of your request. Try again later.

func (*InternalServerException) Error

func (e *InternalServerException) Error() string

func (*InternalServerException) ErrorCode

func (e *InternalServerException) ErrorCode() string

func (*InternalServerException) ErrorFault

func (e *InternalServerException) ErrorFault() smithy.ErrorFault

func (*InternalServerException) ErrorMessage

func (e *InternalServerException) ErrorMessage() string

type LambdaFunction

type LambdaFunction struct {

	// The Lambda function configuration used for recommendations.
	Configuration *LambdaFunctionConfiguration

	// Cost impact of the recommendation.
	CostCalculation *ResourceCostCalculation
	// contains filtered or unexported fields
}

The Lambda function recommendation details.

type LambdaFunctionConfiguration

type LambdaFunctionConfiguration struct {

	// Details about the compute configuration.
	Compute *ComputeConfiguration
	// contains filtered or unexported fields
}

The Lambda function configuration used for recommendations.

type MemberAccountDiscountVisibility

type MemberAccountDiscountVisibility string
const (
	MemberAccountDiscountVisibilityAll  MemberAccountDiscountVisibility = "All"
	MemberAccountDiscountVisibilityNone MemberAccountDiscountVisibility = "None"
)

Enum values for MemberAccountDiscountVisibility

func (MemberAccountDiscountVisibility) Values

Values returns all known values for MemberAccountDiscountVisibility. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type OpenSearchReservedInstances

type OpenSearchReservedInstances struct {

	// The OpenSearch reserved instances configuration used for recommendations.
	Configuration *OpenSearchReservedInstancesConfiguration

	// Cost impact of the purchase recommendation.
	CostCalculation *ReservedInstancesCostCalculation
	// contains filtered or unexported fields
}

The OpenSearch reserved instances recommendation details.

type OpenSearchReservedInstancesConfiguration

type OpenSearchReservedInstancesConfiguration struct {

	// The account scope that you want your recommendations for.
	AccountScope *string

	// Determines whether the recommendation is for a current generation instance.
	CurrentGeneration *string

	// The type of instance that Amazon Web Services recommends.
	InstanceType *string

	// How much purchasing reserved instances costs you on a monthly basis.
	MonthlyRecurringCost *string

	// The number of normalized units that Amazon Web Services recommends that you
	// purchase.
	NormalizedUnitsToPurchase *string

	// The number of instances that Amazon Web Services recommends that you purchase.
	NumberOfInstancesToPurchase *string

	// The payment option for the commitment.
	PaymentOption *string

	// The Amazon Web Services Region of the commitment.
	ReservedInstancesRegion *string

	// The service that you want your recommendations for.
	Service *string

	// Determines whether the recommendation is size flexible.
	SizeFlexEligible *bool

	// The reserved instances recommendation term in years.
	Term *string

	// How much purchasing this instance costs you upfront.
	UpfrontCost *string
	// contains filtered or unexported fields
}

The OpenSearch reserved instances configuration used for recommendations.

type Order

type Order string
const (
	OrderAsc  Order = "Asc"
	OrderDesc Order = "Desc"
)

Enum values for Order

func (Order) Values

func (Order) Values() []Order

Values returns all known values for Order. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type OrderBy

type OrderBy struct {

	// Sorts by dimension values.
	Dimension *string

	// The order that's used to sort the data.
	Order Order
	// contains filtered or unexported fields
}

Defines how rows will be sorted in the response.

type RdsReservedInstances

type RdsReservedInstances struct {

	// The RDS reserved instances configuration used for recommendations.
	Configuration *RdsReservedInstancesConfiguration

	// Cost impact of the purchase recommendation.
	CostCalculation *ReservedInstancesCostCalculation
	// contains filtered or unexported fields
}

The RDS reserved instances recommendation details.

type RdsReservedInstancesConfiguration

type RdsReservedInstancesConfiguration struct {

	// The account scope that you want your recommendations for.
	AccountScope *string

	// Determines whether the recommendation is for a current generation instance.
	CurrentGeneration *string

	// The database edition that the recommended reservation supports.
	DatabaseEdition *string

	// The database engine that the recommended reservation supports.
	DatabaseEngine *string

	// Determines whether the recommendation is for a reservation in a single
	// Availability Zone or a reservation with a backup in a second Availability Zone.
	DeploymentOption *string

	// The instance family of the recommended reservation.
	InstanceFamily *string

	// The type of instance that Amazon Web Services recommends.
	InstanceType *string

	// The license model that the recommended reservation supports.
	LicenseModel *string

	// How much purchasing this instance costs you on a monthly basis.
	MonthlyRecurringCost *string

	// The number of normalized units that Amazon Web Services recommends that you
	// purchase.
	NormalizedUnitsToPurchase *string

	// The number of instances that Amazon Web Services recommends that you purchase.
	NumberOfInstancesToPurchase *string

	// The payment option for the commitment.
	PaymentOption *string

	// The Amazon Web Services Region of the commitment.
	ReservedInstancesRegion *string

	// The service that you want your recommendations for.
	Service *string

	// Determines whether the recommendation is size flexible.
	SizeFlexEligible *bool

	// The reserved instances recommendation term in years.
	Term *string

	// How much purchasing this instance costs you upfront.
	UpfrontCost *string
	// contains filtered or unexported fields
}

The RDS reserved instances configuration used for recommendations.

type Recommendation

type Recommendation struct {

	// The account that the recommendation is for.
	AccountId *string

	// The type of tasks that can be carried out by this action.
	ActionType *string

	// The currency code used for the recommendation.
	CurrencyCode *string

	// Describes the current resource.
	CurrentResourceSummary *string

	// The current resource type.
	CurrentResourceType *string

	// The estimated monthly cost for the recommendation.
	EstimatedMonthlyCost *float64

	// The estimated monthly savings amount for the recommendation.
	EstimatedMonthlySavings *float64

	// The estimated savings percentage relative to the total cost over the cost
	// calculation lookback period.
	EstimatedSavingsPercentage *float64

	// The effort required to implement the recommendation.
	ImplementationEffort *string

	// The time when the recommendation was last generated.
	LastRefreshTimestamp *time.Time

	// The ID for the recommendation.
	RecommendationId *string

	// The lookback period that's used to generate the recommendation.
	RecommendationLookbackPeriodInDays *int32

	// Describes the recommended resource.
	RecommendedResourceSummary *string

	// The recommended resource type.
	RecommendedResourceType *string

	// The Amazon Web Services Region of the resource.
	Region *string

	// The Amazon Resource Name (ARN) for the recommendation.
	ResourceArn *string

	// The resource ID for the recommendation.
	ResourceId *string

	// Whether or not implementing the recommendation requires a restart.
	RestartNeeded *bool

	// Whether or not implementing the recommendation can be rolled back.
	RollbackPossible *bool

	// The source of the recommendation.
	Source Source

	// A list of tags assigned to the recommendation.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a recommendation.

type RecommendationSummary

type RecommendationSummary struct {

	// The estimated total savings resulting from modifications, on a monthly basis.
	EstimatedMonthlySavings *float64

	// The grouping of recommendations.
	Group *string

	// The total number of instance recommendations.
	RecommendationCount *int32
	// contains filtered or unexported fields
}

The summary of rightsizing recommendations, including de-duped savings from all types of recommendations.

type RedshiftReservedInstances

type RedshiftReservedInstances struct {

	// The Redshift reserved instances configuration used for recommendations.
	Configuration *RedshiftReservedInstancesConfiguration

	// Cost impact of the purchase recommendation.
	CostCalculation *ReservedInstancesCostCalculation
	// contains filtered or unexported fields
}

The Redshift reserved instances recommendation details.

type RedshiftReservedInstancesConfiguration

type RedshiftReservedInstancesConfiguration struct {

	// The account scope that you want your recommendations for.
	AccountScope *string

	// Determines whether the recommendation is for a current generation instance.
	CurrentGeneration *string

	// The instance family of the recommended reservation.
	InstanceFamily *string

	// The type of instance that Amazon Web Services recommends.
	InstanceType *string

	// How much purchasing reserved instances costs you on a monthly basis.
	MonthlyRecurringCost *string

	// The number of normalized units that Amazon Web Services recommends that you
	// purchase.
	NormalizedUnitsToPurchase *string

	// The number of instances that Amazon Web Services recommends that you purchase.
	NumberOfInstancesToPurchase *string

	// The payment option for the commitment.
	PaymentOption *string

	// The Amazon Web Services Region of the commitment.
	ReservedInstancesRegion *string

	// The service that you want your recommendations for.
	Service *string

	// Determines whether the recommendation is size flexible.
	SizeFlexEligible *bool

	// The reserved instances recommendation term in years.
	Term *string

	// How much purchasing this instance costs you upfront.
	UpfrontCost *string
	// contains filtered or unexported fields
}

The Redshift reserved instances configuration used for recommendations.

type ReservedInstancesCostCalculation

type ReservedInstancesCostCalculation struct {

	// Pricing details of the purchase recommendation.
	Pricing *ReservedInstancesPricing
	// contains filtered or unexported fields
}

Cost impact of the purchase recommendation.

type ReservedInstancesPricing

type ReservedInstancesPricing struct {

	// The estimated cost of your recurring monthly fees for the recommended reserved
	// instance across the month.
	EstimatedMonthlyAmortizedReservationCost *float64

	// The remaining On-Demand cost estimated to not be covered by the recommended
	// reserved instance, over the length of the lookback period.
	EstimatedOnDemandCost *float64

	// The cost of paying for the recommended reserved instance monthly.
	MonthlyReservationEligibleCost *float64

	// The savings percentage relative to the total On-Demand costs that are
	// associated with this instance.
	SavingsPercentage *float64
	// contains filtered or unexported fields
}

Pricing details for your recommended reserved instance.

type ResourceCostCalculation

type ResourceCostCalculation struct {

	// Pricing details of the resource recommendation.
	Pricing *ResourcePricing

	// Usage details of the resource recommendation.
	Usages []Usage
	// contains filtered or unexported fields
}

Cost impact of the resource recommendation.

type ResourceDetails

type ResourceDetails interface {
	// contains filtered or unexported methods
}

Contains detailed information about the specified resource.

The following types satisfy this interface:

ResourceDetailsMemberComputeSavingsPlans
ResourceDetailsMemberEbsVolume
ResourceDetailsMemberEc2AutoScalingGroup
ResourceDetailsMemberEc2Instance
ResourceDetailsMemberEc2InstanceSavingsPlans
ResourceDetailsMemberEc2ReservedInstances
ResourceDetailsMemberEcsService
ResourceDetailsMemberElastiCacheReservedInstances
ResourceDetailsMemberLambdaFunction
ResourceDetailsMemberOpenSearchReservedInstances
ResourceDetailsMemberRdsReservedInstances
ResourceDetailsMemberRedshiftReservedInstances
ResourceDetailsMemberSageMakerSavingsPlans
Example (OutputUsage)
// Code generated by smithy-go-codegen DO NOT EDIT.

package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/costoptimizationhub/types"
)

func main() {
	var union types.ResourceDetails
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.ResourceDetailsMemberComputeSavingsPlans:
		_ = v.Value // Value is types.ComputeSavingsPlans

	case *types.ResourceDetailsMemberEbsVolume:
		_ = v.Value // Value is types.EbsVolume

	case *types.ResourceDetailsMemberEc2AutoScalingGroup:
		_ = v.Value // Value is types.Ec2AutoScalingGroup

	case *types.ResourceDetailsMemberEc2Instance:
		_ = v.Value // Value is types.Ec2Instance

	case *types.ResourceDetailsMemberEc2InstanceSavingsPlans:
		_ = v.Value // Value is types.Ec2InstanceSavingsPlans

	case *types.ResourceDetailsMemberEc2ReservedInstances:
		_ = v.Value // Value is types.Ec2ReservedInstances

	case *types.ResourceDetailsMemberEcsService:
		_ = v.Value // Value is types.EcsService

	case *types.ResourceDetailsMemberElastiCacheReservedInstances:
		_ = v.Value // Value is types.ElastiCacheReservedInstances

	case *types.ResourceDetailsMemberLambdaFunction:
		_ = v.Value // Value is types.LambdaFunction

	case *types.ResourceDetailsMemberOpenSearchReservedInstances:
		_ = v.Value // Value is types.OpenSearchReservedInstances

	case *types.ResourceDetailsMemberRdsReservedInstances:
		_ = v.Value // Value is types.RdsReservedInstances

	case *types.ResourceDetailsMemberRedshiftReservedInstances:
		_ = v.Value // Value is types.RedshiftReservedInstances

	case *types.ResourceDetailsMemberSageMakerSavingsPlans:
		_ = v.Value // Value is types.SageMakerSavingsPlans

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

var _ *types.ComputeSavingsPlans
var _ *types.Ec2AutoScalingGroup
var _ *types.RdsReservedInstances
var _ *types.OpenSearchReservedInstances
var _ *types.Ec2ReservedInstances
var _ *types.SageMakerSavingsPlans
var _ *types.Ec2Instance
var _ *types.Ec2InstanceSavingsPlans
var _ *types.EcsService
var _ *types.RedshiftReservedInstances
var _ *types.ElastiCacheReservedInstances
var _ *types.LambdaFunction
var _ *types.EbsVolume
Output:

type ResourceDetailsMemberComputeSavingsPlans

type ResourceDetailsMemberComputeSavingsPlans struct {
	Value ComputeSavingsPlans
	// contains filtered or unexported fields
}

The Compute Savings Plans recommendation details.

type ResourceDetailsMemberEbsVolume

type ResourceDetailsMemberEbsVolume struct {
	Value EbsVolume
	// contains filtered or unexported fields
}

The Amazon Elastic Block Store volume recommendation details.

type ResourceDetailsMemberEc2AutoScalingGroup

type ResourceDetailsMemberEc2AutoScalingGroup struct {
	Value Ec2AutoScalingGroup
	// contains filtered or unexported fields
}

The EC2 Auto Scaling group recommendation details.

type ResourceDetailsMemberEc2Instance

type ResourceDetailsMemberEc2Instance struct {
	Value Ec2Instance
	// contains filtered or unexported fields
}

The EC2 instance recommendation details.

type ResourceDetailsMemberEc2InstanceSavingsPlans

type ResourceDetailsMemberEc2InstanceSavingsPlans struct {
	Value Ec2InstanceSavingsPlans
	// contains filtered or unexported fields
}

The EC2 instance Savings Plans recommendation details.

type ResourceDetailsMemberEc2ReservedInstances

type ResourceDetailsMemberEc2ReservedInstances struct {
	Value Ec2ReservedInstances
	// contains filtered or unexported fields
}

The EC2 reserved instances recommendation details.

type ResourceDetailsMemberEcsService

type ResourceDetailsMemberEcsService struct {
	Value EcsService
	// contains filtered or unexported fields
}

The ECS service recommendation details.

type ResourceDetailsMemberElastiCacheReservedInstances

type ResourceDetailsMemberElastiCacheReservedInstances struct {
	Value ElastiCacheReservedInstances
	// contains filtered or unexported fields
}

The ElastiCache reserved instances recommendation details.

type ResourceDetailsMemberLambdaFunction

type ResourceDetailsMemberLambdaFunction struct {
	Value LambdaFunction
	// contains filtered or unexported fields
}

The Lambda function recommendation details.

type ResourceDetailsMemberOpenSearchReservedInstances

type ResourceDetailsMemberOpenSearchReservedInstances struct {
	Value OpenSearchReservedInstances
	// contains filtered or unexported fields
}

The OpenSearch reserved instances recommendation details.

type ResourceDetailsMemberRdsReservedInstances

type ResourceDetailsMemberRdsReservedInstances struct {
	Value RdsReservedInstances
	// contains filtered or unexported fields
}

The RDS reserved instances recommendation details.

type ResourceDetailsMemberRedshiftReservedInstances

type ResourceDetailsMemberRedshiftReservedInstances struct {
	Value RedshiftReservedInstances
	// contains filtered or unexported fields
}

The Redshift reserved instances recommendation details.

type ResourceDetailsMemberSageMakerSavingsPlans

type ResourceDetailsMemberSageMakerSavingsPlans struct {
	Value SageMakerSavingsPlans
	// contains filtered or unexported fields
}

The SageMaker Savings Plans recommendation details.

type ResourceNotFoundException

type ResourceNotFoundException struct {
	Message *string

	ErrorCodeOverride *string

	ResourceId *string
	// contains filtered or unexported fields
}

The specified Amazon Resource Name (ARN) in the request doesn't exist.

func (*ResourceNotFoundException) Error

func (e *ResourceNotFoundException) Error() string

func (*ResourceNotFoundException) ErrorCode

func (e *ResourceNotFoundException) ErrorCode() string

func (*ResourceNotFoundException) ErrorFault

func (*ResourceNotFoundException) ErrorMessage

func (e *ResourceNotFoundException) ErrorMessage() string

type ResourcePricing

type ResourcePricing struct {

	// The savings estimate incorporating all discounts with Amazon Web Services, such
	// as Reserved Instances and Savings Plans.
	EstimatedCostAfterDiscounts *float64

	// The savings estimate using Amazon Web Services public pricing without
	// incorporating any discounts.
	EstimatedCostBeforeDiscounts *float64

	// The estimated discounts for a recommendation.
	EstimatedDiscounts *EstimatedDiscounts

	// The estimated net unused amortized commitment for the recommendation.
	EstimatedNetUnusedAmortizedCommitments *float64
	// contains filtered or unexported fields
}

Contains pricing information about the specified resource.

type ResourceType

type ResourceType string
const (
	ResourceTypeEc2Instance                  ResourceType = "Ec2Instance"
	ResourceTypeLambdaFunction               ResourceType = "LambdaFunction"
	ResourceTypeEbsVolume                    ResourceType = "EbsVolume"
	ResourceTypeEcsService                   ResourceType = "EcsService"
	ResourceTypeEc2AutoScalingGroup          ResourceType = "Ec2AutoScalingGroup"
	ResourceTypeEc2InstanceSavingsPlans      ResourceType = "Ec2InstanceSavingsPlans"
	ResourceTypeComputeSavingsPlans          ResourceType = "ComputeSavingsPlans"
	ResourceTypeSageMakerSavingsPlans        ResourceType = "SageMakerSavingsPlans"
	ResourceTypeEc2ReservedInstances         ResourceType = "Ec2ReservedInstances"
	ResourceTypeRdsReservedInstances         ResourceType = "RdsReservedInstances"
	ResourceTypeOpenSearchReservedInstances  ResourceType = "OpenSearchReservedInstances"
	ResourceTypeRedshiftReservedInstances    ResourceType = "RedshiftReservedInstances"
	ResourceTypeElastiCacheReservedInstances ResourceType = "ElastiCacheReservedInstances"
)

Enum values for ResourceType

func (ResourceType) Values

func (ResourceType) Values() []ResourceType

Values returns all known values for ResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SageMakerSavingsPlans

type SageMakerSavingsPlans struct {

	// The SageMaker Savings Plans configuration used for recommendations.
	Configuration *SageMakerSavingsPlansConfiguration

	// Cost impact of the Savings Plans purchase recommendation.
	CostCalculation *SavingsPlansCostCalculation
	// contains filtered or unexported fields
}

The SageMaker Savings Plans recommendation details.

type SageMakerSavingsPlansConfiguration

type SageMakerSavingsPlansConfiguration struct {

	// The account scope that you want your recommendations for.
	AccountScope *string

	// The hourly commitment for the Savings Plans type.
	HourlyCommitment *string

	// The payment option for the commitment.
	PaymentOption *string

	// The Savings Plans recommendation term in years.
	Term *string
	// contains filtered or unexported fields
}

The SageMaker Savings Plans configuration used for recommendations.

type SavingsEstimationMode

type SavingsEstimationMode string
const (
	SavingsEstimationModeBeforeDiscounts SavingsEstimationMode = "BeforeDiscounts"
	SavingsEstimationModeAfterDiscounts  SavingsEstimationMode = "AfterDiscounts"
)

Enum values for SavingsEstimationMode

func (SavingsEstimationMode) Values

Values returns all known values for SavingsEstimationMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SavingsPlansCostCalculation

type SavingsPlansCostCalculation struct {

	// Pricing details of the purchase recommendation.
	Pricing *SavingsPlansPricing
	// contains filtered or unexported fields
}

Cost impact of the purchase recommendation.

type SavingsPlansPricing

type SavingsPlansPricing struct {

	// Estimated monthly commitment for the Savings Plan.
	EstimatedMonthlyCommitment *float64

	// Estimated On-Demand cost you will pay after buying the Savings Plan.
	EstimatedOnDemandCost *float64

	// The cost of paying for the recommended Savings Plan monthly.
	MonthlySavingsPlansEligibleCost *float64

	// Estimated savings as a percentage of your overall costs after buying the
	// Savings Plan.
	SavingsPercentage *float64
	// contains filtered or unexported fields
}

Pricing information about a Savings Plan.

type Source

type Source string
const (
	SourceComputeOptimizer Source = "ComputeOptimizer"
	SourceCostExplorer     Source = "CostExplorer"
)

Enum values for Source

func (Source) Values

func (Source) Values() []Source

Values returns all known values for Source. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type StorageConfiguration

type StorageConfiguration struct {

	// The storage volume.
	SizeInGb *float64

	// The storage type.
	Type *string
	// contains filtered or unexported fields
}

The storage configuration used for recommendations.

type Tag

type Tag struct {

	// The key that's associated with the tag.
	Key *string

	// The value that's associated with the tag.
	Value *string
	// contains filtered or unexported fields
}

The tag structure that contains a tag key and value.

type ThrottlingException

type ThrottlingException struct {
	Message *string

	ErrorCodeOverride *string
	// contains filtered or unexported fields
}

The request was denied due to request throttling.

func (*ThrottlingException) Error

func (e *ThrottlingException) Error() string

func (*ThrottlingException) ErrorCode

func (e *ThrottlingException) ErrorCode() string

func (*ThrottlingException) ErrorFault

func (e *ThrottlingException) ErrorFault() smithy.ErrorFault

func (*ThrottlingException) ErrorMessage

func (e *ThrottlingException) ErrorMessage() string

type UnknownUnionMember

type UnknownUnionMember struct {
	Tag   string
	Value []byte
	// contains filtered or unexported fields
}

UnknownUnionMember is returned when a union member is returned over the wire, but has an unknown tag.

type Usage

type Usage struct {

	// The operation value.
	Operation *string

	// The product code.
	ProductCode *string

	// The usage unit.
	Unit *string

	// The usage amount.
	UsageAmount *float64

	// The usage type.
	UsageType *string
	// contains filtered or unexported fields
}

Details about the usage.

type ValidationException

type ValidationException struct {
	Message *string

	ErrorCodeOverride *string

	Reason ValidationExceptionReason
	Fields []ValidationExceptionDetail
	// contains filtered or unexported fields
}

The input fails to satisfy the constraints specified by an Amazon Web Services service.

func (*ValidationException) Error

func (e *ValidationException) Error() string

func (*ValidationException) ErrorCode

func (e *ValidationException) ErrorCode() string

func (*ValidationException) ErrorFault

func (e *ValidationException) ErrorFault() smithy.ErrorFault

func (*ValidationException) ErrorMessage

func (e *ValidationException) ErrorMessage() string

type ValidationExceptionDetail

type ValidationExceptionDetail struct {

	// The field name where the invalid entry was detected.
	//
	// This member is required.
	FieldName *string

	// A message with the reason for the validation exception error.
	//
	// This member is required.
	Message *string
	// contains filtered or unexported fields
}

The input failed to meet the constraints specified by the Amazon Web Services service in a specified field.

type ValidationExceptionReason

type ValidationExceptionReason string
const (
	ValidationExceptionReasonFieldValidationFailed ValidationExceptionReason = "FieldValidationFailed"
	ValidationExceptionReasonOther                 ValidationExceptionReason = "Other"
)

Enum values for ValidationExceptionReason

func (ValidationExceptionReason) Values

Values returns all known values for ValidationExceptionReason. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

Jump to

Keyboard shortcuts

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