ApplicationAutoScaling class
With Application Auto Scaling, you can configure automatic scaling for the following resources:
- Amazon AppStream 2.0 fleets
- Amazon Aurora Replicas
- Amazon Comprehend document classification and entity recognizer endpoints
- Amazon DynamoDB tables and global secondary indexes throughput capacity
- Amazon ECS services
- Amazon ElastiCache replication groups (Redis OSS and Valkey) and Memcached clusters
- Amazon EMR clusters
- Amazon Keyspaces (for Apache Cassandra) tables
- Lambda function provisioned concurrency
- Amazon Managed Streaming for Apache Kafka broker storage
- Amazon Neptune clusters
- Amazon SageMaker endpoint variants
- Amazon SageMaker inference components
- Amazon SageMaker serverless endpoint provisioned concurrency
- Spot Fleets (Amazon EC2)
- Pool of WorkSpaces
- Custom resources provided by your own applications or services
API Summary
The Application Auto Scaling service API includes three key sets of actions:
- Register and manage scalable targets - Register Amazon Web Services or custom resources as scalable targets (a resource that Application Auto Scaling can scale), set minimum and maximum capacity limits, and retrieve information on existing scalable targets.
- Configure and manage automatic scaling - Define scaling policies to dynamically scale your resources in response to CloudWatch alarms, schedule one-time or recurring scaling actions, and retrieve your recent scaling activity history.
- Suspend and resume scaling - Temporarily suspend and later resume automatic scaling by calling the RegisterScalableTarget API action for any Application Auto Scaling scalable target. You can suspend and resume (individually or in combination) scale-out activities that are triggered by a scaling policy, scale-in activities that are triggered by a scaling policy, and scheduled scaling.
Constructors
- ApplicationAutoScaling({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
close(
) → void - Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
-
deleteScalingPolicy(
{required String policyName, required String resourceId, required ScalableDimension scalableDimension, required ServiceNamespace serviceNamespace}) → Future< void> - Deletes the specified scaling policy for an Application Auto Scaling scalable target.
-
deleteScheduledAction(
{required String resourceId, required ScalableDimension scalableDimension, required String scheduledActionName, required ServiceNamespace serviceNamespace}) → Future< void> - Deletes the specified scheduled action for an Application Auto Scaling scalable target.
-
deregisterScalableTarget(
{required String resourceId, required ScalableDimension scalableDimension, required ServiceNamespace serviceNamespace}) → Future< void> - Deregisters an Application Auto Scaling scalable target when you have finished using it. To see which resources have been registered, use DescribeScalableTargets.
-
describeScalableTargets(
{required ServiceNamespace serviceNamespace, int? maxResults, String? nextToken, List< String> ? resourceIds, ScalableDimension? scalableDimension}) → Future<DescribeScalableTargetsResponse> - Gets information about the scalable targets in the specified namespace.
-
describeScalingActivities(
{required ServiceNamespace serviceNamespace, bool? includeNotScaledActivities, int? maxResults, String? nextToken, String? resourceId, ScalableDimension? scalableDimension}) → Future< DescribeScalingActivitiesResponse> - Provides descriptive information about the scaling activities in the specified namespace from the previous six weeks.
-
describeScalingPolicies(
{required ServiceNamespace serviceNamespace, int? maxResults, String? nextToken, List< String> ? policyNames, String? resourceId, ScalableDimension? scalableDimension}) → Future<DescribeScalingPoliciesResponse> - Describes the Application Auto Scaling scaling policies for the specified service namespace.
-
describeScheduledActions(
{required ServiceNamespace serviceNamespace, int? maxResults, String? nextToken, String? resourceId, ScalableDimension? scalableDimension, List< String> ? scheduledActionNames}) → Future<DescribeScheduledActionsResponse> - Describes the Application Auto Scaling scheduled actions for the specified service namespace.
-
getPredictiveScalingForecast(
{required DateTime endTime, required String policyName, required String resourceId, required ScalableDimension scalableDimension, required ServiceNamespace serviceNamespace, required DateTime startTime}) → Future< GetPredictiveScalingForecastResponse> - Retrieves the forecast data for a predictive scaling policy.
-
listTagsForResource(
{required String resourceARN}) → Future< ListTagsForResourceResponse> - Returns all the tags on the specified Application Auto Scaling scalable target.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
putScalingPolicy(
{required String policyName, required String resourceId, required ScalableDimension scalableDimension, required ServiceNamespace serviceNamespace, PolicyType? policyType, PredictiveScalingPolicyConfiguration? predictiveScalingPolicyConfiguration, StepScalingPolicyConfiguration? stepScalingPolicyConfiguration, TargetTrackingScalingPolicyConfiguration? targetTrackingScalingPolicyConfiguration}) → Future< PutScalingPolicyResponse> - Creates or updates a scaling policy for an Application Auto Scaling scalable target.
-
putScheduledAction(
{required String resourceId, required ScalableDimension scalableDimension, required String scheduledActionName, required ServiceNamespace serviceNamespace, DateTime? endTime, ScalableTargetAction? scalableTargetAction, String? schedule, DateTime? startTime, String? timezone}) → Future< void> - Creates or updates a scheduled action for an Application Auto Scaling scalable target.
-
registerScalableTarget(
{required String resourceId, required ScalableDimension scalableDimension, required ServiceNamespace serviceNamespace, int? maxCapacity, int? minCapacity, String? roleARN, SuspendedState? suspendedState, Map< String, String> ? tags}) → Future<RegisterScalableTargetResponse> - Registers or updates a scalable target, which is the resource that you want to scale.
-
tagResource(
{required String resourceARN, required Map< String, String> tags}) → Future<void> - Adds or edits tags on an Application Auto Scaling scalable target.
-
toString(
) → String -
A string representation of this object.
inherited
-
untagResource(
{required String resourceARN, required List< String> tagKeys}) → Future<void> - Deletes tags from an Application Auto Scaling scalable target. To delete a tag, specify the tag key and the Application Auto Scaling scalable target.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited