Class ProjectedMetric
- java.lang.Object
-
- software.amazon.awssdk.services.computeoptimizer.model.ProjectedMetric
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<ProjectedMetric.Builder,ProjectedMetric>
@Generated("software.amazon.awssdk:codegen") public final class ProjectedMetric extends Object implements SdkPojo, Serializable, ToCopyableBuilder<ProjectedMetric.Builder,ProjectedMetric>
Describes a projected utilization metric of a recommendation option, such as an Amazon EC2 instance. This represents the projected utilization of a recommendation option had you used that resource during the analyzed period.
Compare the utilization metric data of your resource against its projected utilization metric data to determine the performance difference between your current resource and the recommended option.
The
Cpu,Memory,GPU, andGPU_MEMORYmetrics are the only projected utilization metrics returned when you run the GetEC2RecommendationProjectedMetrics action. Additionally, these metrics are only returned for resources with the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent and Enabling NVIDIA GPU utilization with the CloudWatch Agent.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceProjectedMetric.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ProjectedMetric.Builderbuilder()booleanequals(Object obj)booleanequalsBySdkFields(Object obj)<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)inthashCode()booleanhasTimestamps()For responses, this returns true if the service returned a value for the Timestamps property.booleanhasValues()For responses, this returns true if the service returned a value for the Values property.MetricNamename()The name of the projected utilization metric.StringnameAsString()The name of the projected utilization metric.List<SdkField<?>>sdkFields()static Class<? extends ProjectedMetric.Builder>serializableBuilderClass()List<Instant>timestamps()The timestamps of the projected utilization metric.ProjectedMetric.BuildertoBuilder()StringtoString()Returns a string representation of this object.List<Double>values()The values of the projected utilization metrics.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
name
public final MetricName name()
The name of the projected utilization metric.
The following projected utilization metrics are returned:
-
Cpu- The projected percentage of allocated EC2 compute units that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the processing power required to run an application on the recommendation option.Depending on the instance type, tools in your operating system can show a lower percentage than CloudWatch when the instance is not allocated a full processor core.
-
Memory- The percentage of memory that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the amount of memory required to run an application on the recommendation option.Units: Percent
The
Memorymetric is only returned for resources with the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent. -
GPU- The projected percentage of allocated GPUs if you adjust your configurations to Compute Optimizer's recommendation option. -
GPU_MEMORY- The projected percentage of total GPU memory if you adjust your configurations to Compute Optimizer's recommendation option.The
GPUandGPU_MEMORYmetrics are only returned for resources with the unified CloudWatch Agent installed on them. For more information, see Enabling NVIDIA GPU utilization with the CloudWatch Agent.
If the service returns an enum value that is not available in the current SDK version,
namewill returnMetricName.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromnameAsString().- Returns:
- The name of the projected utilization metric.
The following projected utilization metrics are returned:
-
Cpu- The projected percentage of allocated EC2 compute units that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the processing power required to run an application on the recommendation option.Depending on the instance type, tools in your operating system can show a lower percentage than CloudWatch when the instance is not allocated a full processor core.
-
Memory- The percentage of memory that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the amount of memory required to run an application on the recommendation option.Units: Percent
The
Memorymetric is only returned for resources with the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent. -
GPU- The projected percentage of allocated GPUs if you adjust your configurations to Compute Optimizer's recommendation option. -
GPU_MEMORY- The projected percentage of total GPU memory if you adjust your configurations to Compute Optimizer's recommendation option.The
GPUandGPU_MEMORYmetrics are only returned for resources with the unified CloudWatch Agent installed on them. For more information, see Enabling NVIDIA GPU utilization with the CloudWatch Agent.
-
- See Also:
MetricName
-
-
nameAsString
public final String nameAsString()
The name of the projected utilization metric.
The following projected utilization metrics are returned:
-
Cpu- The projected percentage of allocated EC2 compute units that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the processing power required to run an application on the recommendation option.Depending on the instance type, tools in your operating system can show a lower percentage than CloudWatch when the instance is not allocated a full processor core.
-
Memory- The percentage of memory that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the amount of memory required to run an application on the recommendation option.Units: Percent
The
Memorymetric is only returned for resources with the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent. -
GPU- The projected percentage of allocated GPUs if you adjust your configurations to Compute Optimizer's recommendation option. -
GPU_MEMORY- The projected percentage of total GPU memory if you adjust your configurations to Compute Optimizer's recommendation option.The
GPUandGPU_MEMORYmetrics are only returned for resources with the unified CloudWatch Agent installed on them. For more information, see Enabling NVIDIA GPU utilization with the CloudWatch Agent.
If the service returns an enum value that is not available in the current SDK version,
namewill returnMetricName.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromnameAsString().- Returns:
- The name of the projected utilization metric.
The following projected utilization metrics are returned:
-
Cpu- The projected percentage of allocated EC2 compute units that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the processing power required to run an application on the recommendation option.Depending on the instance type, tools in your operating system can show a lower percentage than CloudWatch when the instance is not allocated a full processor core.
-
Memory- The percentage of memory that would be in use on the recommendation option had you used that resource during the analyzed period. This metric identifies the amount of memory required to run an application on the recommendation option.Units: Percent
The
Memorymetric is only returned for resources with the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent. -
GPU- The projected percentage of allocated GPUs if you adjust your configurations to Compute Optimizer's recommendation option. -
GPU_MEMORY- The projected percentage of total GPU memory if you adjust your configurations to Compute Optimizer's recommendation option.The
GPUandGPU_MEMORYmetrics are only returned for resources with the unified CloudWatch Agent installed on them. For more information, see Enabling NVIDIA GPU utilization with the CloudWatch Agent.
-
- See Also:
MetricName
-
-
hasTimestamps
public final boolean hasTimestamps()
For responses, this returns true if the service returned a value for the Timestamps property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
timestamps
public final List<Instant> timestamps()
The timestamps of the projected utilization metric.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTimestamps()method.- Returns:
- The timestamps of the projected utilization metric.
-
hasValues
public final boolean hasValues()
For responses, this returns true if the service returned a value for the Values property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
values
public final List<Double> values()
The values of the projected utilization metrics.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasValues()method.- Returns:
- The values of the projected utilization metrics.
-
toBuilder
public ProjectedMetric.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<ProjectedMetric.Builder,ProjectedMetric>
-
builder
public static ProjectedMetric.Builder builder()
-
serializableBuilderClass
public static Class<? extends ProjectedMetric.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
-