public static final class TargetTrackingScalingPolicyProps.Builder
extends java.lang.Object
TargetTrackingScalingPolicyProps
Constructor and Description |
---|
Builder() |
public TargetTrackingScalingPolicyProps.Builder autoScalingGroup(IAutoScalingGroup autoScalingGroup)
TargetTrackingScalingPolicyProps.getAutoScalingGroup()
autoScalingGroup
- the value to be set. This parameter is required.this
public TargetTrackingScalingPolicyProps.Builder targetValue(java.lang.Number targetValue)
BasicTargetTrackingScalingPolicyProps.getTargetValue()
targetValue
- The target value for the metric. This parameter is required.this
public TargetTrackingScalingPolicyProps.Builder customMetric(IMetric customMetric)
BasicTargetTrackingScalingPolicyProps.getCustomMetric()
customMetric
- A custom metric for application autoscaling.
The metric must track utilization. Scaling out will happen if the metric is higher than
the target value, scaling in will happen in the metric is lower than the target value.
Exactly one of customMetric or predefinedMetric must be specified.
this
public TargetTrackingScalingPolicyProps.Builder predefinedMetric(PredefinedMetric predefinedMetric)
BasicTargetTrackingScalingPolicyProps.getPredefinedMetric()
predefinedMetric
- A predefined metric for application autoscaling.
The metric must track utilization. Scaling out will happen if the metric is higher than
the target value, scaling in will happen in the metric is lower than the target value.
Exactly one of customMetric or predefinedMetric must be specified.
this
public TargetTrackingScalingPolicyProps.Builder resourceLabel(java.lang.String resourceLabel)
BasicTargetTrackingScalingPolicyProps.getResourceLabel()
resourceLabel
- The resource label associated with the predefined metric.
Should be supplied if the predefined metric is ALBRequestCountPerTarget, and the
format should be:
app/
this
public TargetTrackingScalingPolicyProps.Builder cooldown(Duration cooldown)
BaseTargetTrackingProps.getCooldown()
cooldown
- Period after a scaling completes before another scaling activity can start.this
public TargetTrackingScalingPolicyProps.Builder disableScaleIn(java.lang.Boolean disableScaleIn)
BaseTargetTrackingProps.getDisableScaleIn()
disableScaleIn
- Indicates whether scale in by the target tracking policy is disabled.
If the value is true, scale in is disabled and the target tracking policy
won't remove capacity from the autoscaling group. Otherwise, scale in is
enabled and the target tracking policy can remove capacity from the
group.this
public TargetTrackingScalingPolicyProps.Builder estimatedInstanceWarmup(Duration estimatedInstanceWarmup)
BaseTargetTrackingProps.getEstimatedInstanceWarmup()
estimatedInstanceWarmup
- Estimated time until a newly launched instance can send metrics to CloudWatch.this
public TargetTrackingScalingPolicyProps build()
TargetTrackingScalingPolicyProps
java.lang.NullPointerException
- if any required attribute was not provided