#[non_exhaustive]
pub struct InstanceRecommendationBuilder { /* private fields */ }
Expand description

A builder for InstanceRecommendation.

Implementations§

source§

impl InstanceRecommendationBuilder

source

pub fn instance_arn(self, input: impl Into<String>) -> Self

The Amazon Resource Name (ARN) of the current instance.

source

pub fn set_instance_arn(self, input: Option<String>) -> Self

The Amazon Resource Name (ARN) of the current instance.

source

pub fn get_instance_arn(&self) -> &Option<String>

The Amazon Resource Name (ARN) of the current instance.

source

pub fn account_id(self, input: impl Into<String>) -> Self

The Amazon Web Services account ID of the instance.

source

pub fn set_account_id(self, input: Option<String>) -> Self

The Amazon Web Services account ID of the instance.

source

pub fn get_account_id(&self) -> &Option<String>

The Amazon Web Services account ID of the instance.

source

pub fn instance_name(self, input: impl Into<String>) -> Self

The name of the current instance.

source

pub fn set_instance_name(self, input: Option<String>) -> Self

The name of the current instance.

source

pub fn get_instance_name(&self) -> &Option<String>

The name of the current instance.

source

pub fn current_instance_type(self, input: impl Into<String>) -> Self

The instance type of the current instance.

source

pub fn set_current_instance_type(self, input: Option<String>) -> Self

The instance type of the current instance.

source

pub fn get_current_instance_type(&self) -> &Option<String>

The instance type of the current instance.

source

pub fn finding(self, input: Finding) -> Self

The finding classification of 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. For optimized resources, Compute Optimizer might recommend a new generation instance type.

source

pub fn set_finding(self, input: Option<Finding>) -> Self

The finding classification of 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. For optimized resources, Compute Optimizer might recommend a new generation instance type.

source

pub fn get_finding(&self) -> &Option<Finding>

The finding classification of 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. For optimized resources, Compute Optimizer might recommend a new generation instance type.

source

pub fn finding_reason_codes( self, input: InstanceRecommendationFindingReasonCode, ) -> Self

Appends an item to finding_reason_codes.

To override the contents of this collection use set_finding_reason_codes.

The reason for the finding classification of the instance.

Finding reason codes for instances include:

  • CPUOverprovisioned — The instance’s CPU configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the CPUUtilization metric of the current instance during the look-back period.

  • CPUUnderprovisioned — The instance’s CPU configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better CPU performance. This is identified by analyzing the CPUUtilization metric of the current instance during the look-back period.

  • MemoryOverprovisioned — The instance’s memory configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the memory utilization metric of the current instance during the look-back period.

  • MemoryUnderprovisioned — The instance’s memory configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better memory performance. This is identified by analyzing the memory utilization metric of the current instance during the look-back period.

    Memory utilization is analyzed only for resources that have the unified CloudWatch agent installed on them. For more information, see Enabling memory utilization with the Amazon CloudWatch Agent in the Compute Optimizer User Guide. On Linux instances, Compute Optimizer analyses the mem_used_percent metric in the CWAgent namespace, or the legacy MemoryUtilization metric in the System/Linux namespace. On Windows instances, Compute Optimizer analyses the Memory % Committed Bytes In Use metric in the CWAgent namespace.

  • EBSThroughputOverprovisioned — The instance’s EBS throughput configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the VolumeReadBytes and VolumeWriteBytes metrics of EBS volumes attached to the current instance during the look-back period.

  • EBSThroughputUnderprovisioned — The instance’s EBS throughput configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better EBS throughput performance. This is identified by analyzing the VolumeReadBytes and VolumeWriteBytes metrics of EBS volumes attached to the current instance during the look-back period.

  • EBSIOPSOverprovisioned — The instance’s EBS IOPS configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the VolumeReadOps and VolumeWriteOps metric of EBS volumes attached to the current instance during the look-back period.

  • EBSIOPSUnderprovisioned — The instance’s EBS IOPS configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better EBS IOPS performance. This is identified by analyzing the VolumeReadOps and VolumeWriteOps metric of EBS volumes attached to the current instance during the look-back period.

  • NetworkBandwidthOverprovisioned — The instance’s network bandwidth configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the NetworkIn and NetworkOut metrics of the current instance during the look-back period.

  • NetworkBandwidthUnderprovisioned — The instance’s network bandwidth configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better network bandwidth performance. This is identified by analyzing the NetworkIn and NetworkOut metrics of the current instance during the look-back period. This finding reason happens when the NetworkIn or NetworkOut performance of an instance is impacted.

  • NetworkPPSOverprovisioned — The instance’s network PPS (packets per second) configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the NetworkPacketsIn and NetworkPacketsIn metrics of the current instance during the look-back period.

  • NetworkPPSUnderprovisioned — The instance’s network PPS (packets per second) configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better network PPS performance. This is identified by analyzing the NetworkPacketsIn and NetworkPacketsIn metrics of the current instance during the look-back period.

  • DiskIOPSOverprovisioned — The instance’s disk IOPS configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the DiskReadOps and DiskWriteOps metrics of the current instance during the look-back period.

  • DiskIOPSUnderprovisioned — The instance’s disk IOPS configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better disk IOPS performance. This is identified by analyzing the DiskReadOps and DiskWriteOps metrics of the current instance during the look-back period.

  • DiskThroughputOverprovisioned — The instance’s disk throughput configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the DiskReadBytes and DiskWriteBytes metrics of the current instance during the look-back period.

  • DiskThroughputUnderprovisioned — The instance’s disk throughput configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better disk throughput performance. This is identified by analyzing the DiskReadBytes and DiskWriteBytes metrics of the current instance during the look-back period.

For more information about instance metrics, see List the available CloudWatch metrics for your instances in the Amazon Elastic Compute Cloud User Guide. For more information about EBS volume metrics, see Amazon CloudWatch metrics for Amazon EBS in the Amazon Elastic Compute Cloud User Guide.

source

pub fn set_finding_reason_codes( self, input: Option<Vec<InstanceRecommendationFindingReasonCode>>, ) -> Self

The reason for the finding classification of the instance.

Finding reason codes for instances include:

  • CPUOverprovisioned — The instance’s CPU configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the CPUUtilization metric of the current instance during the look-back period.

  • CPUUnderprovisioned — The instance’s CPU configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better CPU performance. This is identified by analyzing the CPUUtilization metric of the current instance during the look-back period.

  • MemoryOverprovisioned — The instance’s memory configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the memory utilization metric of the current instance during the look-back period.

  • MemoryUnderprovisioned — The instance’s memory configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better memory performance. This is identified by analyzing the memory utilization metric of the current instance during the look-back period.

    Memory utilization is analyzed only for resources that have the unified CloudWatch agent installed on them. For more information, see Enabling memory utilization with the Amazon CloudWatch Agent in the Compute Optimizer User Guide. On Linux instances, Compute Optimizer analyses the mem_used_percent metric in the CWAgent namespace, or the legacy MemoryUtilization metric in the System/Linux namespace. On Windows instances, Compute Optimizer analyses the Memory % Committed Bytes In Use metric in the CWAgent namespace.

  • EBSThroughputOverprovisioned — The instance’s EBS throughput configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the VolumeReadBytes and VolumeWriteBytes metrics of EBS volumes attached to the current instance during the look-back period.

  • EBSThroughputUnderprovisioned — The instance’s EBS throughput configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better EBS throughput performance. This is identified by analyzing the VolumeReadBytes and VolumeWriteBytes metrics of EBS volumes attached to the current instance during the look-back period.

  • EBSIOPSOverprovisioned — The instance’s EBS IOPS configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the VolumeReadOps and VolumeWriteOps metric of EBS volumes attached to the current instance during the look-back period.

  • EBSIOPSUnderprovisioned — The instance’s EBS IOPS configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better EBS IOPS performance. This is identified by analyzing the VolumeReadOps and VolumeWriteOps metric of EBS volumes attached to the current instance during the look-back period.

  • NetworkBandwidthOverprovisioned — The instance’s network bandwidth configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the NetworkIn and NetworkOut metrics of the current instance during the look-back period.

  • NetworkBandwidthUnderprovisioned — The instance’s network bandwidth configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better network bandwidth performance. This is identified by analyzing the NetworkIn and NetworkOut metrics of the current instance during the look-back period. This finding reason happens when the NetworkIn or NetworkOut performance of an instance is impacted.

  • NetworkPPSOverprovisioned — The instance’s network PPS (packets per second) configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the NetworkPacketsIn and NetworkPacketsIn metrics of the current instance during the look-back period.

  • NetworkPPSUnderprovisioned — The instance’s network PPS (packets per second) configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better network PPS performance. This is identified by analyzing the NetworkPacketsIn and NetworkPacketsIn metrics of the current instance during the look-back period.

  • DiskIOPSOverprovisioned — The instance’s disk IOPS configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the DiskReadOps and DiskWriteOps metrics of the current instance during the look-back period.

  • DiskIOPSUnderprovisioned — The instance’s disk IOPS configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better disk IOPS performance. This is identified by analyzing the DiskReadOps and DiskWriteOps metrics of the current instance during the look-back period.

  • DiskThroughputOverprovisioned — The instance’s disk throughput configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the DiskReadBytes and DiskWriteBytes metrics of the current instance during the look-back period.

  • DiskThroughputUnderprovisioned — The instance’s disk throughput configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better disk throughput performance. This is identified by analyzing the DiskReadBytes and DiskWriteBytes metrics of the current instance during the look-back period.

For more information about instance metrics, see List the available CloudWatch metrics for your instances in the Amazon Elastic Compute Cloud User Guide. For more information about EBS volume metrics, see Amazon CloudWatch metrics for Amazon EBS in the Amazon Elastic Compute Cloud User Guide.

source

pub fn get_finding_reason_codes( &self, ) -> &Option<Vec<InstanceRecommendationFindingReasonCode>>

The reason for the finding classification of the instance.

Finding reason codes for instances include:

  • CPUOverprovisioned — The instance’s CPU configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the CPUUtilization metric of the current instance during the look-back period.

  • CPUUnderprovisioned — The instance’s CPU configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better CPU performance. This is identified by analyzing the CPUUtilization metric of the current instance during the look-back period.

  • MemoryOverprovisioned — The instance’s memory configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the memory utilization metric of the current instance during the look-back period.

  • MemoryUnderprovisioned — The instance’s memory configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better memory performance. This is identified by analyzing the memory utilization metric of the current instance during the look-back period.

    Memory utilization is analyzed only for resources that have the unified CloudWatch agent installed on them. For more information, see Enabling memory utilization with the Amazon CloudWatch Agent in the Compute Optimizer User Guide. On Linux instances, Compute Optimizer analyses the mem_used_percent metric in the CWAgent namespace, or the legacy MemoryUtilization metric in the System/Linux namespace. On Windows instances, Compute Optimizer analyses the Memory % Committed Bytes In Use metric in the CWAgent namespace.

  • EBSThroughputOverprovisioned — The instance’s EBS throughput configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the VolumeReadBytes and VolumeWriteBytes metrics of EBS volumes attached to the current instance during the look-back period.

  • EBSThroughputUnderprovisioned — The instance’s EBS throughput configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better EBS throughput performance. This is identified by analyzing the VolumeReadBytes and VolumeWriteBytes metrics of EBS volumes attached to the current instance during the look-back period.

  • EBSIOPSOverprovisioned — The instance’s EBS IOPS configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the VolumeReadOps and VolumeWriteOps metric of EBS volumes attached to the current instance during the look-back period.

  • EBSIOPSUnderprovisioned — The instance’s EBS IOPS configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better EBS IOPS performance. This is identified by analyzing the VolumeReadOps and VolumeWriteOps metric of EBS volumes attached to the current instance during the look-back period.

  • NetworkBandwidthOverprovisioned — The instance’s network bandwidth configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the NetworkIn and NetworkOut metrics of the current instance during the look-back period.

  • NetworkBandwidthUnderprovisioned — The instance’s network bandwidth configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better network bandwidth performance. This is identified by analyzing the NetworkIn and NetworkOut metrics of the current instance during the look-back period. This finding reason happens when the NetworkIn or NetworkOut performance of an instance is impacted.

  • NetworkPPSOverprovisioned — The instance’s network PPS (packets per second) configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the NetworkPacketsIn and NetworkPacketsIn metrics of the current instance during the look-back period.

  • NetworkPPSUnderprovisioned — The instance’s network PPS (packets per second) configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better network PPS performance. This is identified by analyzing the NetworkPacketsIn and NetworkPacketsIn metrics of the current instance during the look-back period.

  • DiskIOPSOverprovisioned — The instance’s disk IOPS configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the DiskReadOps and DiskWriteOps metrics of the current instance during the look-back period.

  • DiskIOPSUnderprovisioned — The instance’s disk IOPS configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better disk IOPS performance. This is identified by analyzing the DiskReadOps and DiskWriteOps metrics of the current instance during the look-back period.

  • DiskThroughputOverprovisioned — The instance’s disk throughput configuration can be sized down while still meeting the performance requirements of your workload. This is identified by analyzing the DiskReadBytes and DiskWriteBytes metrics of the current instance during the look-back period.

  • DiskThroughputUnderprovisioned — The instance’s disk throughput configuration doesn't meet the performance requirements of your workload and there is an alternative instance type that provides better disk throughput performance. This is identified by analyzing the DiskReadBytes and DiskWriteBytes metrics of the current instance during the look-back period.

For more information about instance metrics, see List the available CloudWatch metrics for your instances in the Amazon Elastic Compute Cloud User Guide. For more information about EBS volume metrics, see Amazon CloudWatch metrics for Amazon EBS in the Amazon Elastic Compute Cloud User Guide.

source

pub fn utilization_metrics(self, input: UtilizationMetric) -> Self

Appends an item to utilization_metrics.

To override the contents of this collection use set_utilization_metrics.

An array of objects that describe the utilization metrics of the instance.

source

pub fn set_utilization_metrics( self, input: Option<Vec<UtilizationMetric>>, ) -> Self

An array of objects that describe the utilization metrics of the instance.

source

pub fn get_utilization_metrics(&self) -> &Option<Vec<UtilizationMetric>>

An array of objects that describe the utilization metrics of the instance.

source

pub fn look_back_period_in_days(self, input: f64) -> Self

The number of days for which utilization metrics were analyzed for the instance.

source

pub fn set_look_back_period_in_days(self, input: Option<f64>) -> Self

The number of days for which utilization metrics were analyzed for the instance.

source

pub fn get_look_back_period_in_days(&self) -> &Option<f64>

The number of days for which utilization metrics were analyzed for the instance.

source

pub fn recommendation_options(self, input: InstanceRecommendationOption) -> Self

Appends an item to recommendation_options.

To override the contents of this collection use set_recommendation_options.

An array of objects that describe the recommendation options for the instance.

source

pub fn set_recommendation_options( self, input: Option<Vec<InstanceRecommendationOption>>, ) -> Self

An array of objects that describe the recommendation options for the instance.

source

pub fn get_recommendation_options( &self, ) -> &Option<Vec<InstanceRecommendationOption>>

An array of objects that describe the recommendation options for the instance.

source

pub fn recommendation_sources(self, input: RecommendationSource) -> Self

Appends an item to recommendation_sources.

To override the contents of this collection use set_recommendation_sources.

An array of objects that describe the source resource of the recommendation.

source

pub fn set_recommendation_sources( self, input: Option<Vec<RecommendationSource>>, ) -> Self

An array of objects that describe the source resource of the recommendation.

source

pub fn get_recommendation_sources(&self) -> &Option<Vec<RecommendationSource>>

An array of objects that describe the source resource of the recommendation.

source

pub fn last_refresh_timestamp(self, input: DateTime) -> Self

The timestamp of when the instance recommendation was last generated.

source

pub fn set_last_refresh_timestamp(self, input: Option<DateTime>) -> Self

The timestamp of when the instance recommendation was last generated.

source

pub fn get_last_refresh_timestamp(&self) -> &Option<DateTime>

The timestamp of when the instance recommendation was last generated.

source

pub fn current_performance_risk(self, input: CurrentPerformanceRisk) -> Self

The risk of the current instance not meeting the performance needs of its workloads. The higher the risk, the more likely the current instance cannot meet the performance requirements of its workload.

source

pub fn set_current_performance_risk( self, input: Option<CurrentPerformanceRisk>, ) -> Self

The risk of the current instance not meeting the performance needs of its workloads. The higher the risk, the more likely the current instance cannot meet the performance requirements of its workload.

source

pub fn get_current_performance_risk(&self) -> &Option<CurrentPerformanceRisk>

The risk of the current instance not meeting the performance needs of its workloads. The higher the risk, the more likely the current instance cannot meet the performance requirements of its workload.

source

pub fn effective_recommendation_preferences( self, input: EffectiveRecommendationPreferences, ) -> Self

An object that describes the effective recommendation preferences for the instance.

source

pub fn set_effective_recommendation_preferences( self, input: Option<EffectiveRecommendationPreferences>, ) -> Self

An object that describes the effective recommendation preferences for the instance.

source

pub fn get_effective_recommendation_preferences( &self, ) -> &Option<EffectiveRecommendationPreferences>

An object that describes the effective recommendation preferences for the instance.

source

pub fn inferred_workload_types(self, input: InferredWorkloadType) -> Self

Appends an item to inferred_workload_types.

To override the contents of this collection use set_inferred_workload_types.

The applications that might be running on the instance as inferred by Compute Optimizer.

Compute Optimizer can infer if one of the following applications might be running on the instance:

  • AmazonEmr - Infers that Amazon EMR might be running on the instance.

  • ApacheCassandra - Infers that Apache Cassandra might be running on the instance.

  • ApacheHadoop - Infers that Apache Hadoop might be running on the instance.

  • Memcached - Infers that Memcached might be running on the instance.

  • NGINX - Infers that NGINX might be running on the instance.

  • PostgreSql - Infers that PostgreSQL might be running on the instance.

  • Redis - Infers that Redis might be running on the instance.

  • Kafka - Infers that Kafka might be running on the instance.

  • SQLServer - Infers that SQLServer might be running on the instance.

source

pub fn set_inferred_workload_types( self, input: Option<Vec<InferredWorkloadType>>, ) -> Self

The applications that might be running on the instance as inferred by Compute Optimizer.

Compute Optimizer can infer if one of the following applications might be running on the instance:

  • AmazonEmr - Infers that Amazon EMR might be running on the instance.

  • ApacheCassandra - Infers that Apache Cassandra might be running on the instance.

  • ApacheHadoop - Infers that Apache Hadoop might be running on the instance.

  • Memcached - Infers that Memcached might be running on the instance.

  • NGINX - Infers that NGINX might be running on the instance.

  • PostgreSql - Infers that PostgreSQL might be running on the instance.

  • Redis - Infers that Redis might be running on the instance.

  • Kafka - Infers that Kafka might be running on the instance.

  • SQLServer - Infers that SQLServer might be running on the instance.

source

pub fn get_inferred_workload_types(&self) -> &Option<Vec<InferredWorkloadType>>

The applications that might be running on the instance as inferred by Compute Optimizer.

Compute Optimizer can infer if one of the following applications might be running on the instance:

  • AmazonEmr - Infers that Amazon EMR might be running on the instance.

  • ApacheCassandra - Infers that Apache Cassandra might be running on the instance.

  • ApacheHadoop - Infers that Apache Hadoop might be running on the instance.

  • Memcached - Infers that Memcached might be running on the instance.

  • NGINX - Infers that NGINX might be running on the instance.

  • PostgreSql - Infers that PostgreSQL might be running on the instance.

  • Redis - Infers that Redis might be running on the instance.

  • Kafka - Infers that Kafka might be running on the instance.

  • SQLServer - Infers that SQLServer might be running on the instance.

source

pub fn instance_state(self, input: InstanceState) -> Self

The state of the instance when the recommendation was generated.

source

pub fn set_instance_state(self, input: Option<InstanceState>) -> Self

The state of the instance when the recommendation was generated.

source

pub fn get_instance_state(&self) -> &Option<InstanceState>

The state of the instance when the recommendation was generated.

source

pub fn tags(self, input: Tag) -> Self

Appends an item to tags.

To override the contents of this collection use set_tags.

A list of tags assigned to your Amazon EC2 instance recommendations.

source

pub fn set_tags(self, input: Option<Vec<Tag>>) -> Self

A list of tags assigned to your Amazon EC2 instance recommendations.

source

pub fn get_tags(&self) -> &Option<Vec<Tag>>

A list of tags assigned to your Amazon EC2 instance recommendations.

source

pub fn external_metric_status(self, input: ExternalMetricStatus) -> Self

An object that describes Compute Optimizer's integration status with your external metrics provider.

source

pub fn set_external_metric_status( self, input: Option<ExternalMetricStatus>, ) -> Self

An object that describes Compute Optimizer's integration status with your external metrics provider.

source

pub fn get_external_metric_status(&self) -> &Option<ExternalMetricStatus>

An object that describes Compute Optimizer's integration status with your external metrics provider.

source

pub fn current_instance_gpu_info(self, input: GpuInfo) -> Self

Describes the GPU accelerator settings for the current instance type.

source

pub fn set_current_instance_gpu_info(self, input: Option<GpuInfo>) -> Self

Describes the GPU accelerator settings for the current instance type.

source

pub fn get_current_instance_gpu_info(&self) -> &Option<GpuInfo>

Describes the GPU accelerator settings for the current instance type.

source

pub fn idle(self, input: InstanceIdle) -> Self

Describes if an Amazon EC2 instance is idle.

source

pub fn set_idle(self, input: Option<InstanceIdle>) -> Self

Describes if an Amazon EC2 instance is idle.

source

pub fn get_idle(&self) -> &Option<InstanceIdle>

Describes if an Amazon EC2 instance is idle.

source

pub fn build(self) -> InstanceRecommendation

Consumes the builder and constructs a InstanceRecommendation.

Trait Implementations§

source§

impl Clone for InstanceRecommendationBuilder

source§

fn clone(&self) -> InstanceRecommendationBuilder

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for InstanceRecommendationBuilder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for InstanceRecommendationBuilder

source§

fn default() -> InstanceRecommendationBuilder

Returns the “default value” for a type. Read more
source§

impl PartialEq for InstanceRecommendationBuilder

source§

fn eq(&self, other: &InstanceRecommendationBuilder) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for InstanceRecommendationBuilder

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more