com.pulumi.aws.autoscaling.outputs.PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.autoscaling.outputs;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification {
/**
* @return Describes a scaling metric for a predictive scaling policy. Valid values are `ASGAverageCPUUtilization`, `ASGAverageNetworkIn`, `ASGAverageNetworkOut`, or `ALBRequestCountPerTarget`.
*
*/
private String predefinedMetricType;
/**
* @return Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group. You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). Refer to [PredefinedMetricSpecification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_PredefinedMetricSpecification.html) for more information.
*
*/
private @Nullable String resourceLabel;
private PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification() {}
/**
* @return Describes a scaling metric for a predictive scaling policy. Valid values are `ASGAverageCPUUtilization`, `ASGAverageNetworkIn`, `ASGAverageNetworkOut`, or `ALBRequestCountPerTarget`.
*
*/
public String predefinedMetricType() {
return this.predefinedMetricType;
}
/**
* @return Label that uniquely identifies a specific Application Load Balancer target group from which to determine the request count served by your Auto Scaling group. You create the resource label by appending the final portion of the load balancer ARN and the final portion of the target group ARN into a single value, separated by a forward slash (/). Refer to [PredefinedMetricSpecification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_PredefinedMetricSpecification.html) for more information.
*
*/
public Optional resourceLabel() {
return Optional.ofNullable(this.resourceLabel);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private String predefinedMetricType;
private @Nullable String resourceLabel;
public Builder() {}
public Builder(PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification defaults) {
Objects.requireNonNull(defaults);
this.predefinedMetricType = defaults.predefinedMetricType;
this.resourceLabel = defaults.resourceLabel;
}
@CustomType.Setter
public Builder predefinedMetricType(String predefinedMetricType) {
if (predefinedMetricType == null) {
throw new MissingRequiredPropertyException("PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification", "predefinedMetricType");
}
this.predefinedMetricType = predefinedMetricType;
return this;
}
@CustomType.Setter
public Builder resourceLabel(@Nullable String resourceLabel) {
this.resourceLabel = resourceLabel;
return this;
}
public PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification build() {
final var _resultValue = new PolicyPredictiveScalingConfigurationMetricSpecificationPredefinedScalingMetricSpecification();
_resultValue.predefinedMetricType = predefinedMetricType;
_resultValue.resourceLabel = resourceLabel;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy