AWS SDK for Go (PILOT)
API Reference

PREVIEW DOCUMENTATION - This is a preview of a new format for the AWS SDK for Go API Reference documentation. For the current AWS SDK for Go API Reference, see https://docs.aws.amazon.com/sdk-for-go/api/.

We welcome your feedback on this new version of the documentation. Send your comments to aws-sdkdocs-feedback@amazon.com.

AutoScaling

import "github.com/aws/aws-sdk-go/service/autoscaling"

type AutoScaling struct { *client.Client }

AutoScaling provides the API operation methods for making requests to Auto Scaling. See this package's package overview docs for details on the service.

AutoScaling methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

Client

Type: *client.Client

Method

AttachInstances

func (c *AutoScaling) AttachInstances(input *AttachInstancesInput) (*AttachInstancesOutput, error)

AttachInstances API operation for Auto Scaling.

Attaches one or more EC2 instances to the specified Auto Scaling group.

When you attach instances, Amazon EC2 Auto Scaling increases the desired capacity of the group by the number of instances being attached. If the number of instances being attached plus the desired capacity of the group exceeds the maximum size of the group, the operation fails.

If there is a Classic Load Balancer attached to your Auto Scaling group, the instances are also registered with the load balancer. If there are target groups attached to your Auto Scaling group, the instances are also registered with the target groups.

For more information, see Attach EC2 Instances to Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-instance-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation AttachInstances for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachInstances

Example

AutoScaling AttachInstances shared00

To attach an instance to an Auto Scaling group

This example attaches the specified instance to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.AttachInstancesInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), InstanceIds: []*string{ aws.String("i-93633f9b"), }, } result, err := svc.AttachInstances(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

AttachInstancesRequest

func (c *AutoScaling) AttachInstancesRequest(input *AttachInstancesInput) (req *request.Request, output *AttachInstancesOutput)

AttachInstancesRequest generates a "aws/request.Request" representing the client's request for the AttachInstances operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See AttachInstances for more information on using the AttachInstances API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the AttachInstancesRequest method. req, resp := client.AttachInstancesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachInstances

AttachInstancesWithContext

func (c *AutoScaling) AttachInstancesWithContext(ctx aws.Context, input *AttachInstancesInput, opts ...request.Option) (*AttachInstancesOutput, error)

AttachInstancesWithContext is the same as AttachInstances with the addition of the ability to pass a context and additional request options.

See AttachInstances for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

AttachLoadBalancerTargetGroups

func (c *AutoScaling) AttachLoadBalancerTargetGroups(input *AttachLoadBalancerTargetGroupsInput) (*AttachLoadBalancerTargetGroupsOutput, error)

AttachLoadBalancerTargetGroups API operation for Auto Scaling.

Attaches one or more target groups to the specified Auto Scaling group.

To describe the target groups for an Auto Scaling group, use DescribeLoadBalancerTargetGroups. To detach the target group from the Auto Scaling group, use DetachLoadBalancerTargetGroups.

With Application Load Balancers and Network Load Balancers, instances are registered as targets with a target group. With Classic Load Balancers, instances are registered with the load balancer. For more information, see Attaching a Load Balancer to Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation AttachLoadBalancerTargetGroups for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancerTargetGroups

Example

AutoScaling AttachLoadBalancerTargetGroups shared00

To attach a target group to an Auto Scaling group

This example attaches the specified target group to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.AttachLoadBalancerTargetGroupsInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), TargetGroupARNs: []*string{ aws.String("arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067"), }, } result, err := svc.AttachLoadBalancerTargetGroups(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

AttachLoadBalancerTargetGroupsRequest

func (c *AutoScaling) AttachLoadBalancerTargetGroupsRequest(input *AttachLoadBalancerTargetGroupsInput) (req *request.Request, output *AttachLoadBalancerTargetGroupsOutput)

AttachLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the client's request for the AttachLoadBalancerTargetGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See AttachLoadBalancerTargetGroups for more information on using the AttachLoadBalancerTargetGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the AttachLoadBalancerTargetGroupsRequest method. req, resp := client.AttachLoadBalancerTargetGroupsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancerTargetGroups

AttachLoadBalancerTargetGroupsWithContext

func (c *AutoScaling) AttachLoadBalancerTargetGroupsWithContext(ctx aws.Context, input *AttachLoadBalancerTargetGroupsInput, opts ...request.Option) (*AttachLoadBalancerTargetGroupsOutput, error)

AttachLoadBalancerTargetGroupsWithContext is the same as AttachLoadBalancerTargetGroups with the addition of the ability to pass a context and additional request options.

See AttachLoadBalancerTargetGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

AttachLoadBalancers

func (c *AutoScaling) AttachLoadBalancers(input *AttachLoadBalancersInput) (*AttachLoadBalancersOutput, error)

AttachLoadBalancers API operation for Auto Scaling.

Attaches one or more Classic Load Balancers to the specified Auto Scaling group.

To attach an Application Load Balancer or a Network Load Balancer instead, see AttachLoadBalancerTargetGroups.

To describe the load balancers for an Auto Scaling group, use DescribeLoadBalancers. To detach the load balancer from the Auto Scaling group, use DetachLoadBalancers.

For more information, see Attaching a Load Balancer to Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation AttachLoadBalancers for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancers

Example

AutoScaling AttachLoadBalancers shared00

To attach a load balancer to an Auto Scaling group

This example attaches the specified load balancer to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.AttachLoadBalancersInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LoadBalancerNames: []*string{ aws.String("my-load-balancer"), }, } result, err := svc.AttachLoadBalancers(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

AttachLoadBalancersRequest

func (c *AutoScaling) AttachLoadBalancersRequest(input *AttachLoadBalancersInput) (req *request.Request, output *AttachLoadBalancersOutput)

AttachLoadBalancersRequest generates a "aws/request.Request" representing the client's request for the AttachLoadBalancers operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See AttachLoadBalancers for more information on using the AttachLoadBalancers API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the AttachLoadBalancersRequest method. req, resp := client.AttachLoadBalancersRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AttachLoadBalancers

AttachLoadBalancersWithContext

func (c *AutoScaling) AttachLoadBalancersWithContext(ctx aws.Context, input *AttachLoadBalancersInput, opts ...request.Option) (*AttachLoadBalancersOutput, error)

AttachLoadBalancersWithContext is the same as AttachLoadBalancers with the addition of the ability to pass a context and additional request options.

See AttachLoadBalancers for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

BatchDeleteScheduledAction

func (c *AutoScaling) BatchDeleteScheduledAction(input *BatchDeleteScheduledActionInput) (*BatchDeleteScheduledActionOutput, error)

BatchDeleteScheduledAction API operation for Auto Scaling.

Deletes one or more scheduled actions for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation BatchDeleteScheduledAction for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchDeleteScheduledAction

BatchDeleteScheduledActionRequest

func (c *AutoScaling) BatchDeleteScheduledActionRequest(input *BatchDeleteScheduledActionInput) (req *request.Request, output *BatchDeleteScheduledActionOutput)

BatchDeleteScheduledActionRequest generates a "aws/request.Request" representing the client's request for the BatchDeleteScheduledAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See BatchDeleteScheduledAction for more information on using the BatchDeleteScheduledAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the BatchDeleteScheduledActionRequest method. req, resp := client.BatchDeleteScheduledActionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchDeleteScheduledAction

BatchDeleteScheduledActionWithContext

func (c *AutoScaling) BatchDeleteScheduledActionWithContext(ctx aws.Context, input *BatchDeleteScheduledActionInput, opts ...request.Option) (*BatchDeleteScheduledActionOutput, error)

BatchDeleteScheduledActionWithContext is the same as BatchDeleteScheduledAction with the addition of the ability to pass a context and additional request options.

See BatchDeleteScheduledAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

BatchPutScheduledUpdateGroupAction

func (c *AutoScaling) BatchPutScheduledUpdateGroupAction(input *BatchPutScheduledUpdateGroupActionInput) (*BatchPutScheduledUpdateGroupActionOutput, error)

BatchPutScheduledUpdateGroupAction API operation for Auto Scaling.

Creates or updates one or more scheduled scaling actions for an Auto Scaling group. If you leave a parameter unspecified when updating a scheduled scaling action, the corresponding value remains unchanged.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation BatchPutScheduledUpdateGroupAction for usage and error information.

Returned Error Codes:

  • ErrCodeAlreadyExistsFault "AlreadyExists" You already have an Auto Scaling group or launch configuration with this name.

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchPutScheduledUpdateGroupAction

BatchPutScheduledUpdateGroupActionRequest

func (c *AutoScaling) BatchPutScheduledUpdateGroupActionRequest(input *BatchPutScheduledUpdateGroupActionInput) (req *request.Request, output *BatchPutScheduledUpdateGroupActionOutput)

BatchPutScheduledUpdateGroupActionRequest generates a "aws/request.Request" representing the client's request for the BatchPutScheduledUpdateGroupAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See BatchPutScheduledUpdateGroupAction for more information on using the BatchPutScheduledUpdateGroupAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the BatchPutScheduledUpdateGroupActionRequest method. req, resp := client.BatchPutScheduledUpdateGroupActionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BatchPutScheduledUpdateGroupAction

BatchPutScheduledUpdateGroupActionWithContext

func (c *AutoScaling) BatchPutScheduledUpdateGroupActionWithContext(ctx aws.Context, input *BatchPutScheduledUpdateGroupActionInput, opts ...request.Option) (*BatchPutScheduledUpdateGroupActionOutput, error)

BatchPutScheduledUpdateGroupActionWithContext is the same as BatchPutScheduledUpdateGroupAction with the addition of the ability to pass a context and additional request options.

See BatchPutScheduledUpdateGroupAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

CompleteLifecycleAction

func (c *AutoScaling) CompleteLifecycleAction(input *CompleteLifecycleActionInput) (*CompleteLifecycleActionOutput, error)

CompleteLifecycleAction API operation for Auto Scaling.

Completes the lifecycle action for the specified token or instance with the specified result.

This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

(Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates instances.

(Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to publish lifecycle notifications to the target.

Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

If you finish before the timeout period ends, complete the lifecycle action.

For more information, see Auto Scaling Lifecycle (https://docs.aws.amazon.com/autoscaling/ec2/userguide/AutoScalingGroupLifecycle.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CompleteLifecycleAction for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CompleteLifecycleAction

Example

AutoScaling CompleteLifecycleAction shared00

To complete the lifecycle action

This example notifies Auto Scaling that the specified lifecycle action is complete so that it can finish launching or terminating the instance.

{ svc := autoscaling.New(session.New()) input := &autoscaling.CompleteLifecycleActionInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LifecycleActionResult: aws.String("CONTINUE"), LifecycleActionToken: aws.String("bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635"), LifecycleHookName: aws.String("my-lifecycle-hook"), } result, err := svc.CompleteLifecycleAction(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

CompleteLifecycleActionRequest

func (c *AutoScaling) CompleteLifecycleActionRequest(input *CompleteLifecycleActionInput) (req *request.Request, output *CompleteLifecycleActionOutput)

CompleteLifecycleActionRequest generates a "aws/request.Request" representing the client's request for the CompleteLifecycleAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CompleteLifecycleAction for more information on using the CompleteLifecycleAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CompleteLifecycleActionRequest method. req, resp := client.CompleteLifecycleActionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CompleteLifecycleAction

CompleteLifecycleActionWithContext

func (c *AutoScaling) CompleteLifecycleActionWithContext(ctx aws.Context, input *CompleteLifecycleActionInput, opts ...request.Option) (*CompleteLifecycleActionOutput, error)

CompleteLifecycleActionWithContext is the same as CompleteLifecycleAction with the addition of the ability to pass a context and additional request options.

See CompleteLifecycleAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

CreateAutoScalingGroup

func (c *AutoScaling) CreateAutoScalingGroup(input *CreateAutoScalingGroupInput) (*CreateAutoScalingGroupOutput, error)

CreateAutoScalingGroup API operation for Auto Scaling.

Creates an Auto Scaling group with the specified name and attributes.

If you exceed your maximum limit of Auto Scaling groups, the call fails. For information about viewing this limit, see DescribeAccountLimits. For information about updating this limit, see Amazon EC2 Auto Scaling Limits (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) in the Amazon EC2 Auto Scaling User Guide.

For more information, see Auto Scaling Groups (https://docs.aws.amazon.com/autoscaling/ec2/userguide/AutoScalingGroup.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CreateAutoScalingGroup for usage and error information.

Returned Error Codes:

  • ErrCodeAlreadyExistsFault "AlreadyExists" You already have an Auto Scaling group or launch configuration with this name.

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroup

Examples

AutoScaling CreateAutoScalingGroup shared00

To create an Auto Scaling group

This example creates an Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.CreateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LaunchConfigurationName: aws.String("my-launch-config"), MaxSize: aws.Int64(3), MinSize: aws.Int64(1), VPCZoneIdentifier: aws.String("subnet-4176792c"), } result, err := svc.CreateAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeAlreadyExistsFault: fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error()) case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }
AutoScaling CreateAutoScalingGroup shared01

To create an Auto Scaling group with an attached load balancer

This example creates an Auto Scaling group and attaches the specified Classic Load Balancer.

{ svc := autoscaling.New(session.New()) input := &autoscaling.CreateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), AvailabilityZones: []*string{ aws.String("us-west-2c"), }, HealthCheckGracePeriod: aws.Int64(120), HealthCheckType: aws.String("ELB"), LaunchConfigurationName: aws.String("my-launch-config"), LoadBalancerNames: []*string{ aws.String("my-load-balancer"), }, MaxSize: aws.Int64(3), MinSize: aws.Int64(1), } result, err := svc.CreateAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeAlreadyExistsFault: fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error()) case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }
AutoScaling CreateAutoScalingGroup shared02

To create an Auto Scaling group with an attached target group

This example creates an Auto Scaling group and attaches the specified target group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.CreateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), HealthCheckGracePeriod: aws.Int64(120), HealthCheckType: aws.String("ELB"), LaunchConfigurationName: aws.String("my-launch-config"), MaxSize: aws.Int64(3), MinSize: aws.Int64(1), TargetGroupARNs: []*string{ aws.String("arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067"), }, VPCZoneIdentifier: aws.String("subnet-4176792c, subnet-65ea5f08"), } result, err := svc.CreateAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeAlreadyExistsFault: fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error()) case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

CreateAutoScalingGroupRequest

func (c *AutoScaling) CreateAutoScalingGroupRequest(input *CreateAutoScalingGroupInput) (req *request.Request, output *CreateAutoScalingGroupOutput)

CreateAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the CreateAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CreateAutoScalingGroup for more information on using the CreateAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CreateAutoScalingGroupRequest method. req, resp := client.CreateAutoScalingGroupRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroup

CreateAutoScalingGroupWithContext

func (c *AutoScaling) CreateAutoScalingGroupWithContext(ctx aws.Context, input *CreateAutoScalingGroupInput, opts ...request.Option) (*CreateAutoScalingGroupOutput, error)

CreateAutoScalingGroupWithContext is the same as CreateAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See CreateAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

CreateLaunchConfiguration

func (c *AutoScaling) CreateLaunchConfiguration(input *CreateLaunchConfigurationInput) (*CreateLaunchConfigurationOutput, error)

CreateLaunchConfiguration API operation for Auto Scaling.

Creates a launch configuration.

If you exceed your maximum limit of launch configurations, the call fails. For information about viewing this limit, see DescribeAccountLimits. For information about updating this limit, see Amazon EC2 Auto Scaling Limits (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) in the Amazon EC2 Auto Scaling User Guide.

For more information, see Launch Configurations (https://docs.aws.amazon.com/autoscaling/ec2/userguide/LaunchConfiguration.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CreateLaunchConfiguration for usage and error information.

Returned Error Codes:

  • ErrCodeAlreadyExistsFault "AlreadyExists" You already have an Auto Scaling group or launch configuration with this name.

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateLaunchConfiguration

Example

AutoScaling CreateLaunchConfiguration shared00

To create a launch configuration

This example creates a launch configuration.

{ svc := autoscaling.New(session.New()) input := &autoscaling.CreateLaunchConfigurationInput{ IamInstanceProfile: aws.String("my-iam-role"), ImageId: aws.String("ami-12345678"), InstanceType: aws.String("m3.medium"), LaunchConfigurationName: aws.String("my-launch-config"), SecurityGroups: []*string{ aws.String("sg-eb2af88e"), }, } result, err := svc.CreateLaunchConfiguration(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeAlreadyExistsFault: fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error()) case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

CreateLaunchConfigurationRequest

func (c *AutoScaling) CreateLaunchConfigurationRequest(input *CreateLaunchConfigurationInput) (req *request.Request, output *CreateLaunchConfigurationOutput)

CreateLaunchConfigurationRequest generates a "aws/request.Request" representing the client's request for the CreateLaunchConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CreateLaunchConfiguration for more information on using the CreateLaunchConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CreateLaunchConfigurationRequest method. req, resp := client.CreateLaunchConfigurationRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateLaunchConfiguration

CreateLaunchConfigurationWithContext

func (c *AutoScaling) CreateLaunchConfigurationWithContext(ctx aws.Context, input *CreateLaunchConfigurationInput, opts ...request.Option) (*CreateLaunchConfigurationOutput, error)

CreateLaunchConfigurationWithContext is the same as CreateLaunchConfiguration with the addition of the ability to pass a context and additional request options.

See CreateLaunchConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

CreateOrUpdateTags

func (c *AutoScaling) CreateOrUpdateTags(input *CreateOrUpdateTagsInput) (*CreateOrUpdateTagsOutput, error)

CreateOrUpdateTags API operation for Auto Scaling.

Creates or updates tags for the specified Auto Scaling group.

When you specify a tag with a key that already exists, the operation overwrites the previous tag definition, and you do not get an error message.

For more information, see Tagging Auto Scaling Groups and Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-tagging.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation CreateOrUpdateTags for usage and error information.

Returned Error Codes:

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeAlreadyExistsFault "AlreadyExists" You already have an Auto Scaling group or launch configuration with this name.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeResourceInUseFault "ResourceInUse" The operation can't be performed because the resource is in use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateOrUpdateTags

Example

AutoScaling CreateOrUpdateTags shared00

To create or update tags for an Auto Scaling group

This example adds two tags to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.CreateOrUpdateTagsInput{ Tags: []*autoscaling.Tag{ { Key: aws.String("Role"), PropagateAtLaunch: aws.Bool(true), ResourceId: aws.String("my-auto-scaling-group"), ResourceType: aws.String("auto-scaling-group"), Value: aws.String("WebServer"), }, { Key: aws.String("Dept"), PropagateAtLaunch: aws.Bool(true), ResourceId: aws.String("my-auto-scaling-group"), ResourceType: aws.String("auto-scaling-group"), Value: aws.String("Research"), }, }, } result, err := svc.CreateOrUpdateTags(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeAlreadyExistsFault: fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeResourceInUseFault: fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

CreateOrUpdateTagsRequest

func (c *AutoScaling) CreateOrUpdateTagsRequest(input *CreateOrUpdateTagsInput) (req *request.Request, output *CreateOrUpdateTagsOutput)

CreateOrUpdateTagsRequest generates a "aws/request.Request" representing the client's request for the CreateOrUpdateTags operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See CreateOrUpdateTags for more information on using the CreateOrUpdateTags API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the CreateOrUpdateTagsRequest method. req, resp := client.CreateOrUpdateTagsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateOrUpdateTags

CreateOrUpdateTagsWithContext

func (c *AutoScaling) CreateOrUpdateTagsWithContext(ctx aws.Context, input *CreateOrUpdateTagsInput, opts ...request.Option) (*CreateOrUpdateTagsOutput, error)

CreateOrUpdateTagsWithContext is the same as CreateOrUpdateTags with the addition of the ability to pass a context and additional request options.

See CreateOrUpdateTags for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DeleteAutoScalingGroup

func (c *AutoScaling) DeleteAutoScalingGroup(input *DeleteAutoScalingGroupInput) (*DeleteAutoScalingGroupOutput, error)

DeleteAutoScalingGroup API operation for Auto Scaling.

Deletes the specified Auto Scaling group.

If the group has instances or scaling activities in progress, you must specify the option to force the deletion in order for it to succeed.

If the group has policies, deleting the group deletes the policies, the underlying alarm actions, and any alarm that no longer has an associated action.

To remove instances from the Auto Scaling group before deleting it, call DetachInstances with the list of instances and the option to decrement the desired capacity. This ensures that Amazon EC2 Auto Scaling does not launch replacement instances.

To terminate all instances before deleting the Auto Scaling group, call UpdateAutoScalingGroup and set the minimum size and desired capacity of the Auto Scaling group to zero.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteAutoScalingGroup for usage and error information.

Returned Error Codes:

  • ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress" The operation can't be performed because there are scaling activities in progress.

  • ErrCodeResourceInUseFault "ResourceInUse" The operation can't be performed because the resource is in use.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteAutoScalingGroup

Examples

AutoScaling DeleteAutoScalingGroup shared00

To delete an Auto Scaling group

This example deletes the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeleteAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), } result, err := svc.DeleteAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceInUseFault: fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }
AutoScaling DeleteAutoScalingGroup shared01

To delete an Auto Scaling group and all its instances

This example deletes the specified Auto Scaling group and all its instances.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeleteAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), ForceDelete: aws.Bool(true), } result, err := svc.DeleteAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceInUseFault: fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DeleteAutoScalingGroupRequest

func (c *AutoScaling) DeleteAutoScalingGroupRequest(input *DeleteAutoScalingGroupInput) (req *request.Request, output *DeleteAutoScalingGroupOutput)

DeleteAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the DeleteAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteAutoScalingGroup for more information on using the DeleteAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteAutoScalingGroupRequest method. req, resp := client.DeleteAutoScalingGroupRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteAutoScalingGroup

DeleteAutoScalingGroupWithContext

func (c *AutoScaling) DeleteAutoScalingGroupWithContext(ctx aws.Context, input *DeleteAutoScalingGroupInput, opts ...request.Option) (*DeleteAutoScalingGroupOutput, error)

DeleteAutoScalingGroupWithContext is the same as DeleteAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See DeleteAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DeleteLaunchConfiguration

func (c *AutoScaling) DeleteLaunchConfiguration(input *DeleteLaunchConfigurationInput) (*DeleteLaunchConfigurationOutput, error)

DeleteLaunchConfiguration API operation for Auto Scaling.

Deletes the specified launch configuration.

The launch configuration must not be attached to an Auto Scaling group. When this call completes, the launch configuration is no longer available for use.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteLaunchConfiguration for usage and error information.

Returned Error Codes:

  • ErrCodeResourceInUseFault "ResourceInUse" The operation can't be performed because the resource is in use.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLaunchConfiguration

Example

AutoScaling DeleteLaunchConfiguration shared00

To delete a launch configuration

This example deletes the specified launch configuration.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeleteLaunchConfigurationInput{ LaunchConfigurationName: aws.String("my-launch-config"), } result, err := svc.DeleteLaunchConfiguration(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceInUseFault: fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DeleteLaunchConfigurationRequest

func (c *AutoScaling) DeleteLaunchConfigurationRequest(input *DeleteLaunchConfigurationInput) (req *request.Request, output *DeleteLaunchConfigurationOutput)

DeleteLaunchConfigurationRequest generates a "aws/request.Request" representing the client's request for the DeleteLaunchConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteLaunchConfiguration for more information on using the DeleteLaunchConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteLaunchConfigurationRequest method. req, resp := client.DeleteLaunchConfigurationRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLaunchConfiguration

DeleteLaunchConfigurationWithContext

func (c *AutoScaling) DeleteLaunchConfigurationWithContext(ctx aws.Context, input *DeleteLaunchConfigurationInput, opts ...request.Option) (*DeleteLaunchConfigurationOutput, error)

DeleteLaunchConfigurationWithContext is the same as DeleteLaunchConfiguration with the addition of the ability to pass a context and additional request options.

See DeleteLaunchConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DeleteLifecycleHook

func (c *AutoScaling) DeleteLifecycleHook(input *DeleteLifecycleHookInput) (*DeleteLifecycleHookOutput, error)

DeleteLifecycleHook API operation for Auto Scaling.

Deletes the specified lifecycle hook.

If there are any outstanding lifecycle actions, they are completed first (ABANDON for launching instances, CONTINUE for terminating instances).

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteLifecycleHook for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLifecycleHook

Example

AutoScaling DeleteLifecycleHook shared00

To delete a lifecycle hook

This example deletes the specified lifecycle hook.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeleteLifecycleHookInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LifecycleHookName: aws.String("my-lifecycle-hook"), } result, err := svc.DeleteLifecycleHook(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DeleteLifecycleHookRequest

func (c *AutoScaling) DeleteLifecycleHookRequest(input *DeleteLifecycleHookInput) (req *request.Request, output *DeleteLifecycleHookOutput)

DeleteLifecycleHookRequest generates a "aws/request.Request" representing the client's request for the DeleteLifecycleHook operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteLifecycleHook for more information on using the DeleteLifecycleHook API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteLifecycleHookRequest method. req, resp := client.DeleteLifecycleHookRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteLifecycleHook

DeleteLifecycleHookWithContext

func (c *AutoScaling) DeleteLifecycleHookWithContext(ctx aws.Context, input *DeleteLifecycleHookInput, opts ...request.Option) (*DeleteLifecycleHookOutput, error)

DeleteLifecycleHookWithContext is the same as DeleteLifecycleHook with the addition of the ability to pass a context and additional request options.

See DeleteLifecycleHook for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DeleteNotificationConfiguration

func (c *AutoScaling) DeleteNotificationConfiguration(input *DeleteNotificationConfigurationInput) (*DeleteNotificationConfigurationOutput, error)

DeleteNotificationConfiguration API operation for Auto Scaling.

Deletes the specified notification.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteNotificationConfiguration for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteNotificationConfiguration

Example

AutoScaling DeleteNotificationConfiguration shared00

To delete an Auto Scaling notification

This example deletes the specified notification from the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeleteNotificationConfigurationInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), TopicARN: aws.String("arn:aws:sns:us-west-2:123456789012:my-sns-topic"), } result, err := svc.DeleteNotificationConfiguration(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DeleteNotificationConfigurationRequest

func (c *AutoScaling) DeleteNotificationConfigurationRequest(input *DeleteNotificationConfigurationInput) (req *request.Request, output *DeleteNotificationConfigurationOutput)

DeleteNotificationConfigurationRequest generates a "aws/request.Request" representing the client's request for the DeleteNotificationConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteNotificationConfiguration for more information on using the DeleteNotificationConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteNotificationConfigurationRequest method. req, resp := client.DeleteNotificationConfigurationRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteNotificationConfiguration

DeleteNotificationConfigurationWithContext

func (c *AutoScaling) DeleteNotificationConfigurationWithContext(ctx aws.Context, input *DeleteNotificationConfigurationInput, opts ...request.Option) (*DeleteNotificationConfigurationOutput, error)

DeleteNotificationConfigurationWithContext is the same as DeleteNotificationConfiguration with the addition of the ability to pass a context and additional request options.

See DeleteNotificationConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DeletePolicy

func (c *AutoScaling) DeletePolicy(input *DeletePolicyInput) (*DeletePolicyOutput, error)

DeletePolicy API operation for Auto Scaling.

Deletes the specified Auto Scaling policy.

Deleting a policy deletes the underlying alarm action, but does not delete the alarm, even if it no longer has an associated action.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeletePolicy for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeletePolicy

Example

AutoScaling DeletePolicy shared00

To delete an Auto Scaling policy

This example deletes the specified Auto Scaling policy.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeletePolicyInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), PolicyName: aws.String("ScaleIn"), } result, err := svc.DeletePolicy(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DeletePolicyRequest

func (c *AutoScaling) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Request, output *DeletePolicyOutput)

DeletePolicyRequest generates a "aws/request.Request" representing the client's request for the DeletePolicy operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeletePolicy for more information on using the DeletePolicy API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeletePolicyRequest method. req, resp := client.DeletePolicyRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeletePolicy

DeletePolicyWithContext

func (c *AutoScaling) DeletePolicyWithContext(ctx aws.Context, input *DeletePolicyInput, opts ...request.Option) (*DeletePolicyOutput, error)

DeletePolicyWithContext is the same as DeletePolicy with the addition of the ability to pass a context and additional request options.

See DeletePolicy for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DeleteScheduledAction

func (c *AutoScaling) DeleteScheduledAction(input *DeleteScheduledActionInput) (*DeleteScheduledActionOutput, error)

DeleteScheduledAction API operation for Auto Scaling.

Deletes the specified scheduled action.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteScheduledAction for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteScheduledAction

Example

AutoScaling DeleteScheduledAction shared00

To delete a scheduled action from an Auto Scaling group

This example deletes the specified scheduled action from the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeleteScheduledActionInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), ScheduledActionName: aws.String("my-scheduled-action"), } result, err := svc.DeleteScheduledAction(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DeleteScheduledActionRequest

func (c *AutoScaling) DeleteScheduledActionRequest(input *DeleteScheduledActionInput) (req *request.Request, output *DeleteScheduledActionOutput)

DeleteScheduledActionRequest generates a "aws/request.Request" representing the client's request for the DeleteScheduledAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteScheduledAction for more information on using the DeleteScheduledAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteScheduledActionRequest method. req, resp := client.DeleteScheduledActionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteScheduledAction

DeleteScheduledActionWithContext

func (c *AutoScaling) DeleteScheduledActionWithContext(ctx aws.Context, input *DeleteScheduledActionInput, opts ...request.Option) (*DeleteScheduledActionOutput, error)

DeleteScheduledActionWithContext is the same as DeleteScheduledAction with the addition of the ability to pass a context and additional request options.

See DeleteScheduledAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DeleteTags

func (c *AutoScaling) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error)

DeleteTags API operation for Auto Scaling.

Deletes the specified tags.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DeleteTags for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeResourceInUseFault "ResourceInUse" The operation can't be performed because the resource is in use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteTags

Example

AutoScaling DeleteTags shared00

To delete a tag from an Auto Scaling group

This example deletes the specified tag from the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DeleteTagsInput{ Tags: []*autoscaling.Tag{ { Key: aws.String("Dept"), ResourceId: aws.String("my-auto-scaling-group"), ResourceType: aws.String("auto-scaling-group"), Value: aws.String("Research"), }, }, } result, err := svc.DeleteTags(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeResourceInUseFault: fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DeleteTagsRequest

func (c *AutoScaling) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput)

DeleteTagsRequest generates a "aws/request.Request" representing the client's request for the DeleteTags operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DeleteTags for more information on using the DeleteTags API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DeleteTagsRequest method. req, resp := client.DeleteTagsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteTags

DeleteTagsWithContext

func (c *AutoScaling) DeleteTagsWithContext(ctx aws.Context, input *DeleteTagsInput, opts ...request.Option) (*DeleteTagsOutput, error)

DeleteTagsWithContext is the same as DeleteTags with the addition of the ability to pass a context and additional request options.

See DeleteTags for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeAccountLimits

func (c *AutoScaling) DescribeAccountLimits(input *DescribeAccountLimitsInput) (*DescribeAccountLimitsOutput, error)

DescribeAccountLimits API operation for Auto Scaling.

Describes the current Auto Scaling resource limits for your AWS account.

For information about requesting an increase in these limits, see Amazon EC2 Auto Scaling Limits (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-account-limits.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAccountLimits for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAccountLimits

Example

AutoScaling DescribeAccountLimits shared00

To describe your Auto Scaling account limits

This example describes the Auto Scaling limits for your AWS account.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeAccountLimitsInput{} result, err := svc.DescribeAccountLimits(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeAccountLimitsRequest

func (c *AutoScaling) DescribeAccountLimitsRequest(input *DescribeAccountLimitsInput) (req *request.Request, output *DescribeAccountLimitsOutput)

DescribeAccountLimitsRequest generates a "aws/request.Request" representing the client's request for the DescribeAccountLimits operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAccountLimits for more information on using the DescribeAccountLimits API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAccountLimitsRequest method. req, resp := client.DescribeAccountLimitsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAccountLimits

DescribeAccountLimitsWithContext

func (c *AutoScaling) DescribeAccountLimitsWithContext(ctx aws.Context, input *DescribeAccountLimitsInput, opts ...request.Option) (*DescribeAccountLimitsOutput, error)

DescribeAccountLimitsWithContext is the same as DescribeAccountLimits with the addition of the ability to pass a context and additional request options.

See DescribeAccountLimits for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeAdjustmentTypes

func (c *AutoScaling) DescribeAdjustmentTypes(input *DescribeAdjustmentTypesInput) (*DescribeAdjustmentTypesOutput, error)

DescribeAdjustmentTypes API operation for Auto Scaling.

Describes the policy adjustment types for use with PutScalingPolicy.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAdjustmentTypes for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAdjustmentTypes

Example

AutoScaling DescribeAdjustmentTypes shared00

To describe the Auto Scaling adjustment types

This example describes the available adjustment types.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeAdjustmentTypesInput{} result, err := svc.DescribeAdjustmentTypes(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeAdjustmentTypesRequest

func (c *AutoScaling) DescribeAdjustmentTypesRequest(input *DescribeAdjustmentTypesInput) (req *request.Request, output *DescribeAdjustmentTypesOutput)

DescribeAdjustmentTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeAdjustmentTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAdjustmentTypes for more information on using the DescribeAdjustmentTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAdjustmentTypesRequest method. req, resp := client.DescribeAdjustmentTypesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAdjustmentTypes

DescribeAdjustmentTypesWithContext

func (c *AutoScaling) DescribeAdjustmentTypesWithContext(ctx aws.Context, input *DescribeAdjustmentTypesInput, opts ...request.Option) (*DescribeAdjustmentTypesOutput, error)

DescribeAdjustmentTypesWithContext is the same as DescribeAdjustmentTypes with the addition of the ability to pass a context and additional request options.

See DescribeAdjustmentTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeAutoScalingGroups

func (c *AutoScaling) DescribeAutoScalingGroups(input *DescribeAutoScalingGroupsInput) (*DescribeAutoScalingGroupsOutput, error)

DescribeAutoScalingGroups API operation for Auto Scaling.

Describes one or more Auto Scaling groups.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAutoScalingGroups for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingGroups

Example

AutoScaling DescribeAutoScalingGroups shared00

To describe an Auto Scaling group

This example describes the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeAutoScalingGroupsInput{ AutoScalingGroupNames: []*string{ aws.String("my-auto-scaling-group"), }, } result, err := svc.DescribeAutoScalingGroups(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeAutoScalingGroupsPages

func (c *AutoScaling) DescribeAutoScalingGroupsPages(input *DescribeAutoScalingGroupsInput, fn func(*DescribeAutoScalingGroupsOutput, bool) bool) error

DescribeAutoScalingGroupsPages iterates over the pages of a DescribeAutoScalingGroups operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeAutoScalingGroups method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeAutoScalingGroups operation. pageNum := 0 err := client.DescribeAutoScalingGroupsPages(params, func(page *DescribeAutoScalingGroupsOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribeAutoScalingGroupsPagesWithContext

func (c *AutoScaling) DescribeAutoScalingGroupsPagesWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, fn func(*DescribeAutoScalingGroupsOutput, bool) bool, opts ...request.Option) error

DescribeAutoScalingGroupsPagesWithContext same as DescribeAutoScalingGroupsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeAutoScalingGroupsRequest

func (c *AutoScaling) DescribeAutoScalingGroupsRequest(input *DescribeAutoScalingGroupsInput) (req *request.Request, output *DescribeAutoScalingGroupsOutput)

DescribeAutoScalingGroupsRequest generates a "aws/request.Request" representing the client's request for the DescribeAutoScalingGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAutoScalingGroups for more information on using the DescribeAutoScalingGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAutoScalingGroupsRequest method. req, resp := client.DescribeAutoScalingGroupsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingGroups

DescribeAutoScalingGroupsWithContext

func (c *AutoScaling) DescribeAutoScalingGroupsWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.Option) (*DescribeAutoScalingGroupsOutput, error)

DescribeAutoScalingGroupsWithContext is the same as DescribeAutoScalingGroups with the addition of the ability to pass a context and additional request options.

See DescribeAutoScalingGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeAutoScalingInstances

func (c *AutoScaling) DescribeAutoScalingInstances(input *DescribeAutoScalingInstancesInput) (*DescribeAutoScalingInstancesOutput, error)

DescribeAutoScalingInstances API operation for Auto Scaling.

Describes one or more Auto Scaling instances.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAutoScalingInstances for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingInstances

Example

AutoScaling DescribeAutoScalingInstances shared00

To describe one or more Auto Scaling instances

This example describes the specified Auto Scaling instance.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeAutoScalingInstancesInput{ InstanceIds: []*string{ aws.String("i-4ba0837f"), }, } result, err := svc.DescribeAutoScalingInstances(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeAutoScalingInstancesPages

func (c *AutoScaling) DescribeAutoScalingInstancesPages(input *DescribeAutoScalingInstancesInput, fn func(*DescribeAutoScalingInstancesOutput, bool) bool) error

DescribeAutoScalingInstancesPages iterates over the pages of a DescribeAutoScalingInstances operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeAutoScalingInstances method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeAutoScalingInstances operation. pageNum := 0 err := client.DescribeAutoScalingInstancesPages(params, func(page *DescribeAutoScalingInstancesOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribeAutoScalingInstancesPagesWithContext

func (c *AutoScaling) DescribeAutoScalingInstancesPagesWithContext(ctx aws.Context, input *DescribeAutoScalingInstancesInput, fn func(*DescribeAutoScalingInstancesOutput, bool) bool, opts ...request.Option) error

DescribeAutoScalingInstancesPagesWithContext same as DescribeAutoScalingInstancesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeAutoScalingInstancesRequest

func (c *AutoScaling) DescribeAutoScalingInstancesRequest(input *DescribeAutoScalingInstancesInput) (req *request.Request, output *DescribeAutoScalingInstancesOutput)

DescribeAutoScalingInstancesRequest generates a "aws/request.Request" representing the client's request for the DescribeAutoScalingInstances operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAutoScalingInstances for more information on using the DescribeAutoScalingInstances API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAutoScalingInstancesRequest method. req, resp := client.DescribeAutoScalingInstancesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingInstances

DescribeAutoScalingInstancesWithContext

func (c *AutoScaling) DescribeAutoScalingInstancesWithContext(ctx aws.Context, input *DescribeAutoScalingInstancesInput, opts ...request.Option) (*DescribeAutoScalingInstancesOutput, error)

DescribeAutoScalingInstancesWithContext is the same as DescribeAutoScalingInstances with the addition of the ability to pass a context and additional request options.

See DescribeAutoScalingInstances for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeAutoScalingNotificationTypes

func (c *AutoScaling) DescribeAutoScalingNotificationTypes(input *DescribeAutoScalingNotificationTypesInput) (*DescribeAutoScalingNotificationTypesOutput, error)

DescribeAutoScalingNotificationTypes API operation for Auto Scaling.

Describes the notification types that are supported by Amazon EC2 Auto Scaling.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeAutoScalingNotificationTypes for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingNotificationTypes

Example

AutoScaling DescribeAutoScalingNotificationTypes shared00

To describe the Auto Scaling notification types

This example describes the available notification types.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeAutoScalingNotificationTypesInput{} result, err := svc.DescribeAutoScalingNotificationTypes(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeAutoScalingNotificationTypesRequest

func (c *AutoScaling) DescribeAutoScalingNotificationTypesRequest(input *DescribeAutoScalingNotificationTypesInput) (req *request.Request, output *DescribeAutoScalingNotificationTypesOutput)

DescribeAutoScalingNotificationTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeAutoScalingNotificationTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeAutoScalingNotificationTypes for more information on using the DescribeAutoScalingNotificationTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeAutoScalingNotificationTypesRequest method. req, resp := client.DescribeAutoScalingNotificationTypesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeAutoScalingNotificationTypes

DescribeAutoScalingNotificationTypesWithContext

func (c *AutoScaling) DescribeAutoScalingNotificationTypesWithContext(ctx aws.Context, input *DescribeAutoScalingNotificationTypesInput, opts ...request.Option) (*DescribeAutoScalingNotificationTypesOutput, error)

DescribeAutoScalingNotificationTypesWithContext is the same as DescribeAutoScalingNotificationTypes with the addition of the ability to pass a context and additional request options.

See DescribeAutoScalingNotificationTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeLaunchConfigurations

func (c *AutoScaling) DescribeLaunchConfigurations(input *DescribeLaunchConfigurationsInput) (*DescribeLaunchConfigurationsOutput, error)

DescribeLaunchConfigurations API operation for Auto Scaling.

Describes one or more launch configurations.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLaunchConfigurations for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLaunchConfigurations

Example

AutoScaling DescribeLaunchConfigurations shared00

To describe Auto Scaling launch configurations

This example describes the specified launch configuration.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeLaunchConfigurationsInput{ LaunchConfigurationNames: []*string{ aws.String("my-launch-config"), }, } result, err := svc.DescribeLaunchConfigurations(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeLaunchConfigurationsPages

func (c *AutoScaling) DescribeLaunchConfigurationsPages(input *DescribeLaunchConfigurationsInput, fn func(*DescribeLaunchConfigurationsOutput, bool) bool) error

DescribeLaunchConfigurationsPages iterates over the pages of a DescribeLaunchConfigurations operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeLaunchConfigurations method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeLaunchConfigurations operation. pageNum := 0 err := client.DescribeLaunchConfigurationsPages(params, func(page *DescribeLaunchConfigurationsOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribeLaunchConfigurationsPagesWithContext

func (c *AutoScaling) DescribeLaunchConfigurationsPagesWithContext(ctx aws.Context, input *DescribeLaunchConfigurationsInput, fn func(*DescribeLaunchConfigurationsOutput, bool) bool, opts ...request.Option) error

DescribeLaunchConfigurationsPagesWithContext same as DescribeLaunchConfigurationsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeLaunchConfigurationsRequest

func (c *AutoScaling) DescribeLaunchConfigurationsRequest(input *DescribeLaunchConfigurationsInput) (req *request.Request, output *DescribeLaunchConfigurationsOutput)

DescribeLaunchConfigurationsRequest generates a "aws/request.Request" representing the client's request for the DescribeLaunchConfigurations operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLaunchConfigurations for more information on using the DescribeLaunchConfigurations API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLaunchConfigurationsRequest method. req, resp := client.DescribeLaunchConfigurationsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLaunchConfigurations

DescribeLaunchConfigurationsWithContext

func (c *AutoScaling) DescribeLaunchConfigurationsWithContext(ctx aws.Context, input *DescribeLaunchConfigurationsInput, opts ...request.Option) (*DescribeLaunchConfigurationsOutput, error)

DescribeLaunchConfigurationsWithContext is the same as DescribeLaunchConfigurations with the addition of the ability to pass a context and additional request options.

See DescribeLaunchConfigurations for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeLifecycleHookTypes

func (c *AutoScaling) DescribeLifecycleHookTypes(input *DescribeLifecycleHookTypesInput) (*DescribeLifecycleHookTypesOutput, error)

DescribeLifecycleHookTypes API operation for Auto Scaling.

Describes the available types of lifecycle hooks.

The following hook types are supported:

  • autoscaling:EC2_INSTANCE_LAUNCHING

  • autoscaling:EC2_INSTANCE_TERMINATING

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLifecycleHookTypes for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHookTypes

Example

AutoScaling DescribeLifecycleHookTypes shared00

To describe the available types of lifecycle hooks

This example describes the available lifecycle hook types.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeLifecycleHookTypesInput{} result, err := svc.DescribeLifecycleHookTypes(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeLifecycleHookTypesRequest

func (c *AutoScaling) DescribeLifecycleHookTypesRequest(input *DescribeLifecycleHookTypesInput) (req *request.Request, output *DescribeLifecycleHookTypesOutput)

DescribeLifecycleHookTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeLifecycleHookTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLifecycleHookTypes for more information on using the DescribeLifecycleHookTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLifecycleHookTypesRequest method. req, resp := client.DescribeLifecycleHookTypesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHookTypes

DescribeLifecycleHookTypesWithContext

func (c *AutoScaling) DescribeLifecycleHookTypesWithContext(ctx aws.Context, input *DescribeLifecycleHookTypesInput, opts ...request.Option) (*DescribeLifecycleHookTypesOutput, error)

DescribeLifecycleHookTypesWithContext is the same as DescribeLifecycleHookTypes with the addition of the ability to pass a context and additional request options.

See DescribeLifecycleHookTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeLifecycleHooks

func (c *AutoScaling) DescribeLifecycleHooks(input *DescribeLifecycleHooksInput) (*DescribeLifecycleHooksOutput, error)

DescribeLifecycleHooks API operation for Auto Scaling.

Describes the lifecycle hooks for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLifecycleHooks for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHooks

Example

AutoScaling DescribeLifecycleHooks shared00

To describe your lifecycle hooks

This example describes the lifecycle hooks for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeLifecycleHooksInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), } result, err := svc.DescribeLifecycleHooks(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeLifecycleHooksRequest

func (c *AutoScaling) DescribeLifecycleHooksRequest(input *DescribeLifecycleHooksInput) (req *request.Request, output *DescribeLifecycleHooksOutput)

DescribeLifecycleHooksRequest generates a "aws/request.Request" representing the client's request for the DescribeLifecycleHooks operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLifecycleHooks for more information on using the DescribeLifecycleHooks API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLifecycleHooksRequest method. req, resp := client.DescribeLifecycleHooksRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLifecycleHooks

DescribeLifecycleHooksWithContext

func (c *AutoScaling) DescribeLifecycleHooksWithContext(ctx aws.Context, input *DescribeLifecycleHooksInput, opts ...request.Option) (*DescribeLifecycleHooksOutput, error)

DescribeLifecycleHooksWithContext is the same as DescribeLifecycleHooks with the addition of the ability to pass a context and additional request options.

See DescribeLifecycleHooks for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeLoadBalancerTargetGroups

func (c *AutoScaling) DescribeLoadBalancerTargetGroups(input *DescribeLoadBalancerTargetGroupsInput) (*DescribeLoadBalancerTargetGroupsOutput, error)

DescribeLoadBalancerTargetGroups API operation for Auto Scaling.

Describes the target groups for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLoadBalancerTargetGroups for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancerTargetGroups

Example

AutoScaling DescribeLoadBalancerTargetGroups shared00

To describe the target groups for an Auto Scaling group

This example describes the target groups attached to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeLoadBalancerTargetGroupsInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), } result, err := svc.DescribeLoadBalancerTargetGroups(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeLoadBalancerTargetGroupsRequest

func (c *AutoScaling) DescribeLoadBalancerTargetGroupsRequest(input *DescribeLoadBalancerTargetGroupsInput) (req *request.Request, output *DescribeLoadBalancerTargetGroupsOutput)

DescribeLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the client's request for the DescribeLoadBalancerTargetGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLoadBalancerTargetGroups for more information on using the DescribeLoadBalancerTargetGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLoadBalancerTargetGroupsRequest method. req, resp := client.DescribeLoadBalancerTargetGroupsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancerTargetGroups

DescribeLoadBalancerTargetGroupsWithContext

func (c *AutoScaling) DescribeLoadBalancerTargetGroupsWithContext(ctx aws.Context, input *DescribeLoadBalancerTargetGroupsInput, opts ...request.Option) (*DescribeLoadBalancerTargetGroupsOutput, error)

DescribeLoadBalancerTargetGroupsWithContext is the same as DescribeLoadBalancerTargetGroups with the addition of the ability to pass a context and additional request options.

See DescribeLoadBalancerTargetGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeLoadBalancers

func (c *AutoScaling) DescribeLoadBalancers(input *DescribeLoadBalancersInput) (*DescribeLoadBalancersOutput, error)

DescribeLoadBalancers API operation for Auto Scaling.

Describes the load balancers for the specified Auto Scaling group.

This operation describes only Classic Load Balancers. If you have Application Load Balancers or Network Load Balancers, use DescribeLoadBalancerTargetGroups instead.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeLoadBalancers for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancers

Example

AutoScaling DescribeLoadBalancers shared00

To describe the load balancers for an Auto Scaling group

This example describes the load balancers attached to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeLoadBalancersInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), } result, err := svc.DescribeLoadBalancers(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeLoadBalancersRequest

func (c *AutoScaling) DescribeLoadBalancersRequest(input *DescribeLoadBalancersInput) (req *request.Request, output *DescribeLoadBalancersOutput)

DescribeLoadBalancersRequest generates a "aws/request.Request" representing the client's request for the DescribeLoadBalancers operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeLoadBalancers for more information on using the DescribeLoadBalancers API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeLoadBalancersRequest method. req, resp := client.DescribeLoadBalancersRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeLoadBalancers

DescribeLoadBalancersWithContext

func (c *AutoScaling) DescribeLoadBalancersWithContext(ctx aws.Context, input *DescribeLoadBalancersInput, opts ...request.Option) (*DescribeLoadBalancersOutput, error)

DescribeLoadBalancersWithContext is the same as DescribeLoadBalancers with the addition of the ability to pass a context and additional request options.

See DescribeLoadBalancers for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeMetricCollectionTypes

func (c *AutoScaling) DescribeMetricCollectionTypes(input *DescribeMetricCollectionTypesInput) (*DescribeMetricCollectionTypesOutput, error)

DescribeMetricCollectionTypes API operation for Auto Scaling.

Describes the available CloudWatch metrics for Amazon EC2 Auto Scaling.

The GroupStandbyInstances metric is not returned by default. You must explicitly request this metric when calling EnableMetricsCollection.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeMetricCollectionTypes for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeMetricCollectionTypes

Example

AutoScaling DescribeMetricCollectionTypes shared00

To describe the Auto Scaling metric collection types

This example describes the available metric collection types.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeMetricCollectionTypesInput{} result, err := svc.DescribeMetricCollectionTypes(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeMetricCollectionTypesRequest

func (c *AutoScaling) DescribeMetricCollectionTypesRequest(input *DescribeMetricCollectionTypesInput) (req *request.Request, output *DescribeMetricCollectionTypesOutput)

DescribeMetricCollectionTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeMetricCollectionTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeMetricCollectionTypes for more information on using the DescribeMetricCollectionTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeMetricCollectionTypesRequest method. req, resp := client.DescribeMetricCollectionTypesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeMetricCollectionTypes

DescribeMetricCollectionTypesWithContext

func (c *AutoScaling) DescribeMetricCollectionTypesWithContext(ctx aws.Context, input *DescribeMetricCollectionTypesInput, opts ...request.Option) (*DescribeMetricCollectionTypesOutput, error)

DescribeMetricCollectionTypesWithContext is the same as DescribeMetricCollectionTypes with the addition of the ability to pass a context and additional request options.

See DescribeMetricCollectionTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeNotificationConfigurations

func (c *AutoScaling) DescribeNotificationConfigurations(input *DescribeNotificationConfigurationsInput) (*DescribeNotificationConfigurationsOutput, error)

DescribeNotificationConfigurations API operation for Auto Scaling.

Describes the notification actions associated with the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeNotificationConfigurations for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeNotificationConfigurations

Example

AutoScaling DescribeNotificationConfigurations shared00

To describe Auto Scaling notification configurations

This example describes the notification configurations for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeNotificationConfigurationsInput{ AutoScalingGroupNames: []*string{ aws.String("my-auto-scaling-group"), }, } result, err := svc.DescribeNotificationConfigurations(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeNotificationConfigurationsPages

func (c *AutoScaling) DescribeNotificationConfigurationsPages(input *DescribeNotificationConfigurationsInput, fn func(*DescribeNotificationConfigurationsOutput, bool) bool) error

DescribeNotificationConfigurationsPages iterates over the pages of a DescribeNotificationConfigurations operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeNotificationConfigurations method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeNotificationConfigurations operation. pageNum := 0 err := client.DescribeNotificationConfigurationsPages(params, func(page *DescribeNotificationConfigurationsOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribeNotificationConfigurationsPagesWithContext

func (c *AutoScaling) DescribeNotificationConfigurationsPagesWithContext(ctx aws.Context, input *DescribeNotificationConfigurationsInput, fn func(*DescribeNotificationConfigurationsOutput, bool) bool, opts ...request.Option) error

DescribeNotificationConfigurationsPagesWithContext same as DescribeNotificationConfigurationsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeNotificationConfigurationsRequest

func (c *AutoScaling) DescribeNotificationConfigurationsRequest(input *DescribeNotificationConfigurationsInput) (req *request.Request, output *DescribeNotificationConfigurationsOutput)

DescribeNotificationConfigurationsRequest generates a "aws/request.Request" representing the client's request for the DescribeNotificationConfigurations operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeNotificationConfigurations for more information on using the DescribeNotificationConfigurations API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeNotificationConfigurationsRequest method. req, resp := client.DescribeNotificationConfigurationsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeNotificationConfigurations

DescribeNotificationConfigurationsWithContext

func (c *AutoScaling) DescribeNotificationConfigurationsWithContext(ctx aws.Context, input *DescribeNotificationConfigurationsInput, opts ...request.Option) (*DescribeNotificationConfigurationsOutput, error)

DescribeNotificationConfigurationsWithContext is the same as DescribeNotificationConfigurations with the addition of the ability to pass a context and additional request options.

See DescribeNotificationConfigurations for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribePolicies

func (c *AutoScaling) DescribePolicies(input *DescribePoliciesInput) (*DescribePoliciesOutput, error)

DescribePolicies API operation for Auto Scaling.

Describes the policies for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribePolicies for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribePolicies

Example

AutoScaling DescribePolicies shared00

To describe Auto Scaling policies

This example describes the policies for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribePoliciesInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), } result, err := svc.DescribePolicies(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribePoliciesPages

func (c *AutoScaling) DescribePoliciesPages(input *DescribePoliciesInput, fn func(*DescribePoliciesOutput, bool) bool) error

DescribePoliciesPages iterates over the pages of a DescribePolicies operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribePolicies method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribePolicies operation. pageNum := 0 err := client.DescribePoliciesPages(params, func(page *DescribePoliciesOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribePoliciesPagesWithContext

func (c *AutoScaling) DescribePoliciesPagesWithContext(ctx aws.Context, input *DescribePoliciesInput, fn func(*DescribePoliciesOutput, bool) bool, opts ...request.Option) error

DescribePoliciesPagesWithContext same as DescribePoliciesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribePoliciesRequest

func (c *AutoScaling) DescribePoliciesRequest(input *DescribePoliciesInput) (req *request.Request, output *DescribePoliciesOutput)

DescribePoliciesRequest generates a "aws/request.Request" representing the client's request for the DescribePolicies operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribePolicies for more information on using the DescribePolicies API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribePoliciesRequest method. req, resp := client.DescribePoliciesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribePolicies

DescribePoliciesWithContext

func (c *AutoScaling) DescribePoliciesWithContext(ctx aws.Context, input *DescribePoliciesInput, opts ...request.Option) (*DescribePoliciesOutput, error)

DescribePoliciesWithContext is the same as DescribePolicies with the addition of the ability to pass a context and additional request options.

See DescribePolicies for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeScalingActivities

func (c *AutoScaling) DescribeScalingActivities(input *DescribeScalingActivitiesInput) (*DescribeScalingActivitiesOutput, error)

DescribeScalingActivities API operation for Auto Scaling.

Describes one or more scaling activities for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeScalingActivities for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingActivities

Example

AutoScaling DescribeScalingActivities shared00

To describe the scaling activities for an Auto Scaling group

This example describes the scaling activities for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeScalingActivitiesInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), } result, err := svc.DescribeScalingActivities(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeScalingActivitiesPages

func (c *AutoScaling) DescribeScalingActivitiesPages(input *DescribeScalingActivitiesInput, fn func(*DescribeScalingActivitiesOutput, bool) bool) error

DescribeScalingActivitiesPages iterates over the pages of a DescribeScalingActivities operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeScalingActivities method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeScalingActivities operation. pageNum := 0 err := client.DescribeScalingActivitiesPages(params, func(page *DescribeScalingActivitiesOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribeScalingActivitiesPagesWithContext

func (c *AutoScaling) DescribeScalingActivitiesPagesWithContext(ctx aws.Context, input *DescribeScalingActivitiesInput, fn func(*DescribeScalingActivitiesOutput, bool) bool, opts ...request.Option) error

DescribeScalingActivitiesPagesWithContext same as DescribeScalingActivitiesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeScalingActivitiesRequest

func (c *AutoScaling) DescribeScalingActivitiesRequest(input *DescribeScalingActivitiesInput) (req *request.Request, output *DescribeScalingActivitiesOutput)

DescribeScalingActivitiesRequest generates a "aws/request.Request" representing the client's request for the DescribeScalingActivities operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeScalingActivities for more information on using the DescribeScalingActivities API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeScalingActivitiesRequest method. req, resp := client.DescribeScalingActivitiesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingActivities

DescribeScalingActivitiesWithContext

func (c *AutoScaling) DescribeScalingActivitiesWithContext(ctx aws.Context, input *DescribeScalingActivitiesInput, opts ...request.Option) (*DescribeScalingActivitiesOutput, error)

DescribeScalingActivitiesWithContext is the same as DescribeScalingActivities with the addition of the ability to pass a context and additional request options.

See DescribeScalingActivities for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeScalingProcessTypes

func (c *AutoScaling) DescribeScalingProcessTypes(input *DescribeScalingProcessTypesInput) (*DescribeScalingProcessTypesOutput, error)

DescribeScalingProcessTypes API operation for Auto Scaling.

Describes the scaling process types for use with ResumeProcesses and SuspendProcesses.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeScalingProcessTypes for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingProcessTypes

Example

AutoScaling DescribeScalingProcessTypes shared00

To describe the Auto Scaling process types

This example describes the Auto Scaling process types.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeScalingProcessTypesInput{} result, err := svc.DescribeScalingProcessTypes(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeScalingProcessTypesRequest

func (c *AutoScaling) DescribeScalingProcessTypesRequest(input *DescribeScalingProcessTypesInput) (req *request.Request, output *DescribeScalingProcessTypesOutput)

DescribeScalingProcessTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeScalingProcessTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeScalingProcessTypes for more information on using the DescribeScalingProcessTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeScalingProcessTypesRequest method. req, resp := client.DescribeScalingProcessTypesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScalingProcessTypes

DescribeScalingProcessTypesWithContext

func (c *AutoScaling) DescribeScalingProcessTypesWithContext(ctx aws.Context, input *DescribeScalingProcessTypesInput, opts ...request.Option) (*DescribeScalingProcessTypesOutput, error)

DescribeScalingProcessTypesWithContext is the same as DescribeScalingProcessTypes with the addition of the ability to pass a context and additional request options.

See DescribeScalingProcessTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeScheduledActions

func (c *AutoScaling) DescribeScheduledActions(input *DescribeScheduledActionsInput) (*DescribeScheduledActionsOutput, error)

DescribeScheduledActions API operation for Auto Scaling.

Describes the actions scheduled for your Auto Scaling group that haven't run. To describe the actions that have already run, use DescribeScalingActivities.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeScheduledActions for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScheduledActions

Example

AutoScaling DescribeScheduledActions shared00

To describe scheduled actions

This example describes the scheduled actions for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeScheduledActionsInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), } result, err := svc.DescribeScheduledActions(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeScheduledActionsPages

func (c *AutoScaling) DescribeScheduledActionsPages(input *DescribeScheduledActionsInput, fn func(*DescribeScheduledActionsOutput, bool) bool) error

DescribeScheduledActionsPages iterates over the pages of a DescribeScheduledActions operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeScheduledActions method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeScheduledActions operation. pageNum := 0 err := client.DescribeScheduledActionsPages(params, func(page *DescribeScheduledActionsOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribeScheduledActionsPagesWithContext

func (c *AutoScaling) DescribeScheduledActionsPagesWithContext(ctx aws.Context, input *DescribeScheduledActionsInput, fn func(*DescribeScheduledActionsOutput, bool) bool, opts ...request.Option) error

DescribeScheduledActionsPagesWithContext same as DescribeScheduledActionsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeScheduledActionsRequest

func (c *AutoScaling) DescribeScheduledActionsRequest(input *DescribeScheduledActionsInput) (req *request.Request, output *DescribeScheduledActionsOutput)

DescribeScheduledActionsRequest generates a "aws/request.Request" representing the client's request for the DescribeScheduledActions operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeScheduledActions for more information on using the DescribeScheduledActions API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeScheduledActionsRequest method. req, resp := client.DescribeScheduledActionsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeScheduledActions

DescribeScheduledActionsWithContext

func (c *AutoScaling) DescribeScheduledActionsWithContext(ctx aws.Context, input *DescribeScheduledActionsInput, opts ...request.Option) (*DescribeScheduledActionsOutput, error)

DescribeScheduledActionsWithContext is the same as DescribeScheduledActions with the addition of the ability to pass a context and additional request options.

See DescribeScheduledActions for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeTags

func (c *AutoScaling) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error)

DescribeTags API operation for Auto Scaling.

Describes the specified tags.

You can use filters to limit the results. For example, you can query for the tags for a specific Auto Scaling group. You can specify multiple values for a filter. A tag must match at least one of the specified values for it to be included in the results.

You can also specify multiple filters. The result includes information for a particular tag only if it matches all the filters. If there's no match, no special message is returned.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeTags for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidNextToken "InvalidNextToken" The NextToken value is not valid.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTags

Example

AutoScaling DescribeTags shared00

To describe tags

This example describes the tags for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeTagsInput{ Filters: []*autoscaling.Filter{ { Name: aws.String("auto-scaling-group"), Values: []*string{ aws.String("my-auto-scaling-group"), }, }, }, } result, err := svc.DescribeTags(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeInvalidNextToken: fmt.Println(autoscaling.ErrCodeInvalidNextToken, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeTagsPages

func (c *AutoScaling) DescribeTagsPages(input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool) error

DescribeTagsPages iterates over the pages of a DescribeTags operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See DescribeTags method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a DescribeTags operation. pageNum := 0 err := client.DescribeTagsPages(params, func(page *DescribeTagsOutput, lastPage bool) bool { pageNum++ fmt.Println(page) return pageNum <= 3 })

See Also

For more information about using this API, see AWS API Documentation.

DescribeTagsPagesWithContext

func (c *AutoScaling) DescribeTagsPagesWithContext(ctx aws.Context, input *DescribeTagsInput, fn func(*DescribeTagsOutput, bool) bool, opts ...request.Option) error

DescribeTagsPagesWithContext same as DescribeTagsPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeTagsRequest

func (c *AutoScaling) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput)

DescribeTagsRequest generates a "aws/request.Request" representing the client's request for the DescribeTags operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeTags for more information on using the DescribeTags API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeTagsRequest method. req, resp := client.DescribeTagsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTags

DescribeTagsWithContext

func (c *AutoScaling) DescribeTagsWithContext(ctx aws.Context, input *DescribeTagsInput, opts ...request.Option) (*DescribeTagsOutput, error)

DescribeTagsWithContext is the same as DescribeTags with the addition of the ability to pass a context and additional request options.

See DescribeTags for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DescribeTerminationPolicyTypes

func (c *AutoScaling) DescribeTerminationPolicyTypes(input *DescribeTerminationPolicyTypesInput) (*DescribeTerminationPolicyTypesOutput, error)

DescribeTerminationPolicyTypes API operation for Auto Scaling.

Describes the termination policies supported by Amazon EC2 Auto Scaling.

For more information, see Controlling Which Auto Scaling Instances Terminate During Scale In (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DescribeTerminationPolicyTypes for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTerminationPolicyTypes

Example

AutoScaling DescribeTerminationPolicyTypes shared00

To describe termination policy types

This example describes the available termination policy types.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DescribeTerminationPolicyTypesInput{} result, err := svc.DescribeTerminationPolicyTypes(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DescribeTerminationPolicyTypesRequest

func (c *AutoScaling) DescribeTerminationPolicyTypesRequest(input *DescribeTerminationPolicyTypesInput) (req *request.Request, output *DescribeTerminationPolicyTypesOutput)

DescribeTerminationPolicyTypesRequest generates a "aws/request.Request" representing the client's request for the DescribeTerminationPolicyTypes operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DescribeTerminationPolicyTypes for more information on using the DescribeTerminationPolicyTypes API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DescribeTerminationPolicyTypesRequest method. req, resp := client.DescribeTerminationPolicyTypesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTerminationPolicyTypes

DescribeTerminationPolicyTypesWithContext

func (c *AutoScaling) DescribeTerminationPolicyTypesWithContext(ctx aws.Context, input *DescribeTerminationPolicyTypesInput, opts ...request.Option) (*DescribeTerminationPolicyTypesOutput, error)

DescribeTerminationPolicyTypesWithContext is the same as DescribeTerminationPolicyTypes with the addition of the ability to pass a context and additional request options.

See DescribeTerminationPolicyTypes for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DetachInstances

func (c *AutoScaling) DetachInstances(input *DetachInstancesInput) (*DetachInstancesOutput, error)

DetachInstances API operation for Auto Scaling.

Removes one or more instances from the specified Auto Scaling group.

After the instances are detached, you can manage them independent of the Auto Scaling group.

If you do not specify the option to decrement the desired capacity, Amazon EC2 Auto Scaling launches instances to replace the ones that are detached.

If there is a Classic Load Balancer attached to the Auto Scaling group, the instances are deregistered from the load balancer. If there are target groups attached to the Auto Scaling group, the instances are deregistered from the target groups.

For more information, see Detach EC2 Instances from Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/detach-instance-asg.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DetachInstances for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachInstances

Example

AutoScaling DetachInstances shared00

To detach an instance from an Auto Scaling group

This example detaches the specified instance from the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DetachInstancesInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), InstanceIds: []*string{ aws.String("i-93633f9b"), }, ShouldDecrementDesiredCapacity: aws.Bool(true), } result, err := svc.DetachInstances(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DetachInstancesRequest

func (c *AutoScaling) DetachInstancesRequest(input *DetachInstancesInput) (req *request.Request, output *DetachInstancesOutput)

DetachInstancesRequest generates a "aws/request.Request" representing the client's request for the DetachInstances operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DetachInstances for more information on using the DetachInstances API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DetachInstancesRequest method. req, resp := client.DetachInstancesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachInstances

DetachInstancesWithContext

func (c *AutoScaling) DetachInstancesWithContext(ctx aws.Context, input *DetachInstancesInput, opts ...request.Option) (*DetachInstancesOutput, error)

DetachInstancesWithContext is the same as DetachInstances with the addition of the ability to pass a context and additional request options.

See DetachInstances for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DetachLoadBalancerTargetGroups

func (c *AutoScaling) DetachLoadBalancerTargetGroups(input *DetachLoadBalancerTargetGroupsInput) (*DetachLoadBalancerTargetGroupsOutput, error)

DetachLoadBalancerTargetGroups API operation for Auto Scaling.

Detaches one or more target groups from the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DetachLoadBalancerTargetGroups for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancerTargetGroups

Example

AutoScaling DetachLoadBalancerTargetGroups shared00

To detach a target group from an Auto Scaling group

This example detaches the specified target group from the specified Auto Scaling group

{ svc := autoscaling.New(session.New()) input := &autoscaling.DetachLoadBalancerTargetGroupsInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), TargetGroupARNs: []*string{ aws.String("arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067"), }, } result, err := svc.DetachLoadBalancerTargetGroups(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DetachLoadBalancerTargetGroupsRequest

func (c *AutoScaling) DetachLoadBalancerTargetGroupsRequest(input *DetachLoadBalancerTargetGroupsInput) (req *request.Request, output *DetachLoadBalancerTargetGroupsOutput)

DetachLoadBalancerTargetGroupsRequest generates a "aws/request.Request" representing the client's request for the DetachLoadBalancerTargetGroups operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DetachLoadBalancerTargetGroups for more information on using the DetachLoadBalancerTargetGroups API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DetachLoadBalancerTargetGroupsRequest method. req, resp := client.DetachLoadBalancerTargetGroupsRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancerTargetGroups

DetachLoadBalancerTargetGroupsWithContext

func (c *AutoScaling) DetachLoadBalancerTargetGroupsWithContext(ctx aws.Context, input *DetachLoadBalancerTargetGroupsInput, opts ...request.Option) (*DetachLoadBalancerTargetGroupsOutput, error)

DetachLoadBalancerTargetGroupsWithContext is the same as DetachLoadBalancerTargetGroups with the addition of the ability to pass a context and additional request options.

See DetachLoadBalancerTargetGroups for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DetachLoadBalancers

func (c *AutoScaling) DetachLoadBalancers(input *DetachLoadBalancersInput) (*DetachLoadBalancersOutput, error)

DetachLoadBalancers API operation for Auto Scaling.

Detaches one or more Classic Load Balancers from the specified Auto Scaling group.

This operation detaches only Classic Load Balancers. If you have Application Load Balancers or Network Load Balancers, use DetachLoadBalancerTargetGroups instead.

When you detach a load balancer, it enters the Removing state while deregistering the instances in the group. When all instances are deregistered, then you can no longer describe the load balancer using DescribeLoadBalancers. The instances remain running.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DetachLoadBalancers for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancers

Example

AutoScaling DetachLoadBalancers shared00

To detach a load balancer from an Auto Scaling group

This example detaches the specified load balancer from the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DetachLoadBalancersInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LoadBalancerNames: []*string{ aws.String("my-load-balancer"), }, } result, err := svc.DetachLoadBalancers(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DetachLoadBalancersRequest

func (c *AutoScaling) DetachLoadBalancersRequest(input *DetachLoadBalancersInput) (req *request.Request, output *DetachLoadBalancersOutput)

DetachLoadBalancersRequest generates a "aws/request.Request" representing the client's request for the DetachLoadBalancers operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DetachLoadBalancers for more information on using the DetachLoadBalancers API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DetachLoadBalancersRequest method. req, resp := client.DetachLoadBalancersRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DetachLoadBalancers

DetachLoadBalancersWithContext

func (c *AutoScaling) DetachLoadBalancersWithContext(ctx aws.Context, input *DetachLoadBalancersInput, opts ...request.Option) (*DetachLoadBalancersOutput, error)

DetachLoadBalancersWithContext is the same as DetachLoadBalancers with the addition of the ability to pass a context and additional request options.

See DetachLoadBalancers for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

DisableMetricsCollection

func (c *AutoScaling) DisableMetricsCollection(input *DisableMetricsCollectionInput) (*DisableMetricsCollectionOutput, error)

DisableMetricsCollection API operation for Auto Scaling.

Disables group metrics for the specified Auto Scaling group.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation DisableMetricsCollection for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DisableMetricsCollection

Example

AutoScaling DisableMetricsCollection shared00

To disable metrics collection for an Auto Scaling group

This example disables collecting data for the GroupDesiredCapacity metric for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.DisableMetricsCollectionInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), Metrics: []*string{ aws.String("GroupDesiredCapacity"), }, } result, err := svc.DisableMetricsCollection(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

DisableMetricsCollectionRequest

func (c *AutoScaling) DisableMetricsCollectionRequest(input *DisableMetricsCollectionInput) (req *request.Request, output *DisableMetricsCollectionOutput)

DisableMetricsCollectionRequest generates a "aws/request.Request" representing the client's request for the DisableMetricsCollection operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See DisableMetricsCollection for more information on using the DisableMetricsCollection API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the DisableMetricsCollectionRequest method. req, resp := client.DisableMetricsCollectionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DisableMetricsCollection

DisableMetricsCollectionWithContext

func (c *AutoScaling) DisableMetricsCollectionWithContext(ctx aws.Context, input *DisableMetricsCollectionInput, opts ...request.Option) (*DisableMetricsCollectionOutput, error)

DisableMetricsCollectionWithContext is the same as DisableMetricsCollection with the addition of the ability to pass a context and additional request options.

See DisableMetricsCollection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

EnableMetricsCollection

func (c *AutoScaling) EnableMetricsCollection(input *EnableMetricsCollectionInput) (*EnableMetricsCollectionOutput, error)

EnableMetricsCollection API operation for Auto Scaling.

Enables group metrics for the specified Auto Scaling group. For more information, see Monitoring Your Auto Scaling Groups and Instances (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-monitoring.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation EnableMetricsCollection for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnableMetricsCollection

Example

AutoScaling EnableMetricsCollection shared00

To enable metrics collection for an Auto Scaling group

This example enables data collection for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.EnableMetricsCollectionInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), Granularity: aws.String("1Minute"), } result, err := svc.EnableMetricsCollection(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

EnableMetricsCollectionRequest

func (c *AutoScaling) EnableMetricsCollectionRequest(input *EnableMetricsCollectionInput) (req *request.Request, output *EnableMetricsCollectionOutput)

EnableMetricsCollectionRequest generates a "aws/request.Request" representing the client's request for the EnableMetricsCollection operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See EnableMetricsCollection for more information on using the EnableMetricsCollection API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the EnableMetricsCollectionRequest method. req, resp := client.EnableMetricsCollectionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnableMetricsCollection

EnableMetricsCollectionWithContext

func (c *AutoScaling) EnableMetricsCollectionWithContext(ctx aws.Context, input *EnableMetricsCollectionInput, opts ...request.Option) (*EnableMetricsCollectionOutput, error)

EnableMetricsCollectionWithContext is the same as EnableMetricsCollection with the addition of the ability to pass a context and additional request options.

See EnableMetricsCollection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

EnterStandby

func (c *AutoScaling) EnterStandby(input *EnterStandbyInput) (*EnterStandbyOutput, error)

EnterStandby API operation for Auto Scaling.

Moves the specified instances into the standby state.

For more information, see Temporarily Removing Instances from Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-enter-exit-standby.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation EnterStandby for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnterStandby

Example

AutoScaling EnterStandby shared00

To move instances into standby mode

This example puts the specified instance into standby mode.

{ svc := autoscaling.New(session.New()) input := &autoscaling.EnterStandbyInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), InstanceIds: []*string{ aws.String("i-93633f9b"), }, ShouldDecrementDesiredCapacity: aws.Bool(true), } result, err := svc.EnterStandby(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

EnterStandbyRequest

func (c *AutoScaling) EnterStandbyRequest(input *EnterStandbyInput) (req *request.Request, output *EnterStandbyOutput)

EnterStandbyRequest generates a "aws/request.Request" representing the client's request for the EnterStandby operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See EnterStandby for more information on using the EnterStandby API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the EnterStandbyRequest method. req, resp := client.EnterStandbyRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/EnterStandby

EnterStandbyWithContext

func (c *AutoScaling) EnterStandbyWithContext(ctx aws.Context, input *EnterStandbyInput, opts ...request.Option) (*EnterStandbyOutput, error)

EnterStandbyWithContext is the same as EnterStandby with the addition of the ability to pass a context and additional request options.

See EnterStandby for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

ExecutePolicy

func (c *AutoScaling) ExecutePolicy(input *ExecutePolicyInput) (*ExecutePolicyOutput, error)

ExecutePolicy API operation for Auto Scaling.

Executes the specified policy.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation ExecutePolicy for usage and error information.

Returned Error Codes:

  • ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress" The operation can't be performed because there are scaling activities in progress.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExecutePolicy

Example

AutoScaling ExecutePolicy shared00

To execute an Auto Scaling policy

This example executes the specified Auto Scaling policy for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.ExecutePolicyInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), HonorCooldown: aws.Bool(true), PolicyName: aws.String("ScaleIn"), } result, err := svc.ExecutePolicy(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

ExecutePolicyRequest

func (c *AutoScaling) ExecutePolicyRequest(input *ExecutePolicyInput) (req *request.Request, output *ExecutePolicyOutput)

ExecutePolicyRequest generates a "aws/request.Request" representing the client's request for the ExecutePolicy operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ExecutePolicy for more information on using the ExecutePolicy API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ExecutePolicyRequest method. req, resp := client.ExecutePolicyRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExecutePolicy

ExecutePolicyWithContext

func (c *AutoScaling) ExecutePolicyWithContext(ctx aws.Context, input *ExecutePolicyInput, opts ...request.Option) (*ExecutePolicyOutput, error)

ExecutePolicyWithContext is the same as ExecutePolicy with the addition of the ability to pass a context and additional request options.

See ExecutePolicy for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

ExitStandby

func (c *AutoScaling) ExitStandby(input *ExitStandbyInput) (*ExitStandbyOutput, error)

ExitStandby API operation for Auto Scaling.

Moves the specified instances out of the standby state.

For more information, see Temporarily Removing Instances from Your Auto Scaling Group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-enter-exit-standby.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation ExitStandby for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExitStandby

Example

AutoScaling ExitStandby shared00

To move instances out of standby mode

This example moves the specified instance out of standby mode.

{ svc := autoscaling.New(session.New()) input := &autoscaling.ExitStandbyInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), InstanceIds: []*string{ aws.String("i-93633f9b"), }, } result, err := svc.ExitStandby(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

ExitStandbyRequest

func (c *AutoScaling) ExitStandbyRequest(input *ExitStandbyInput) (req *request.Request, output *ExitStandbyOutput)

ExitStandbyRequest generates a "aws/request.Request" representing the client's request for the ExitStandby operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ExitStandby for more information on using the ExitStandby API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ExitStandbyRequest method. req, resp := client.ExitStandbyRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ExitStandby

ExitStandbyWithContext

func (c *AutoScaling) ExitStandbyWithContext(ctx aws.Context, input *ExitStandbyInput, opts ...request.Option) (*ExitStandbyOutput, error)

ExitStandbyWithContext is the same as ExitStandby with the addition of the ability to pass a context and additional request options.

See ExitStandby for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

PutLifecycleHook

func (c *AutoScaling) PutLifecycleHook(input *PutLifecycleHookInput) (*PutLifecycleHookOutput, error)

PutLifecycleHook API operation for Auto Scaling.

Creates or updates a lifecycle hook for the specified Auto Scaling group.

A lifecycle hook tells Amazon EC2 Auto Scaling to perform an action on an instance that is not actively in service; for example, either when the instance launches or before the instance terminates.

This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

(Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates instances.

(Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to publish lifecycle notifications to the target.

Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

If you finish before the timeout period ends, complete the lifecycle action.

For more information, see Amazon EC2 Auto Scaling Lifecycle Hooks (https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the Amazon EC2 Auto Scaling User Guide.

If you exceed your maximum limit of lifecycle hooks, which by default is 50 per Auto Scaling group, the call fails.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutLifecycleHook for usage and error information.

Returned Error Codes:

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutLifecycleHook

Example

AutoScaling PutLifecycleHook shared00

To create a lifecycle hook

This example creates a lifecycle hook.

{ svc := autoscaling.New(session.New()) input := &autoscaling.PutLifecycleHookInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LifecycleHookName: aws.String("my-lifecycle-hook"), LifecycleTransition: aws.String("autoscaling:EC2_INSTANCE_LAUNCHING"), NotificationTargetARN: aws.String("arn:aws:sns:us-west-2:123456789012:my-sns-topic --role-arn"), RoleARN: aws.String("arn:aws:iam::123456789012:role/my-auto-scaling-role"), } result, err := svc.PutLifecycleHook(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

PutLifecycleHookRequest

func (c *AutoScaling) PutLifecycleHookRequest(input *PutLifecycleHookInput) (req *request.Request, output *PutLifecycleHookOutput)

PutLifecycleHookRequest generates a "aws/request.Request" representing the client's request for the PutLifecycleHook operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutLifecycleHook for more information on using the PutLifecycleHook API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutLifecycleHookRequest method. req, resp := client.PutLifecycleHookRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutLifecycleHook

PutLifecycleHookWithContext

func (c *AutoScaling) PutLifecycleHookWithContext(ctx aws.Context, input *PutLifecycleHookInput, opts ...request.Option) (*PutLifecycleHookOutput, error)

PutLifecycleHookWithContext is the same as PutLifecycleHook with the addition of the ability to pass a context and additional request options.

See PutLifecycleHook for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

PutNotificationConfiguration

func (c *AutoScaling) PutNotificationConfiguration(input *PutNotificationConfigurationInput) (*PutNotificationConfigurationOutput, error)

PutNotificationConfiguration API operation for Auto Scaling.

Configures an Auto Scaling group to send notifications when specified events take place. Subscribers to the specified topic can have messages delivered to an endpoint such as a web server or an email address.

This configuration overwrites any existing configuration.

For more information, see Getting Amazon SNS Notifications When Your Auto Scaling Group Scales (https://docs.aws.amazon.com/autoscaling/ec2/userguide/ASGettingNotifications.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutNotificationConfiguration for usage and error information.

Returned Error Codes:

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutNotificationConfiguration

Example

AutoScaling PutNotificationConfiguration shared00

To add an Auto Scaling notification

This example adds the specified notification to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.PutNotificationConfigurationInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), NotificationTypes: []*string{ aws.String("autoscaling:TEST_NOTIFICATION"), }, TopicARN: aws.String("arn:aws:sns:us-west-2:123456789012:my-sns-topic"), } result, err := svc.PutNotificationConfiguration(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

PutNotificationConfigurationRequest

func (c *AutoScaling) PutNotificationConfigurationRequest(input *PutNotificationConfigurationInput) (req *request.Request, output *PutNotificationConfigurationOutput)

PutNotificationConfigurationRequest generates a "aws/request.Request" representing the client's request for the PutNotificationConfiguration operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutNotificationConfiguration for more information on using the PutNotificationConfiguration API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutNotificationConfigurationRequest method. req, resp := client.PutNotificationConfigurationRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutNotificationConfiguration

PutNotificationConfigurationWithContext

func (c *AutoScaling) PutNotificationConfigurationWithContext(ctx aws.Context, input *PutNotificationConfigurationInput, opts ...request.Option) (*PutNotificationConfigurationOutput, error)

PutNotificationConfigurationWithContext is the same as PutNotificationConfiguration with the addition of the ability to pass a context and additional request options.

See PutNotificationConfiguration for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

PutScalingPolicy

func (c *AutoScaling) PutScalingPolicy(input *PutScalingPolicyInput) (*PutScalingPolicyOutput, error)

PutScalingPolicy API operation for Auto Scaling.

Creates or updates a policy for an Auto Scaling group. To update an existing policy, use the existing policy name and set the parameters to change. Any existing parameter not changed in an update to an existing policy is not changed in this update request.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutScalingPolicy for usage and error information.

Returned Error Codes:

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScalingPolicy

Example

AutoScaling PutScalingPolicy shared00

To add a scaling policy to an Auto Scaling group

This example adds the specified policy to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.PutScalingPolicyInput{ AdjustmentType: aws.String("ChangeInCapacity"), AutoScalingGroupName: aws.String("my-auto-scaling-group"), PolicyName: aws.String("ScaleIn"), ScalingAdjustment: aws.Int64(-1), } result, err := svc.PutScalingPolicy(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

PutScalingPolicyRequest

func (c *AutoScaling) PutScalingPolicyRequest(input *PutScalingPolicyInput) (req *request.Request, output *PutScalingPolicyOutput)

PutScalingPolicyRequest generates a "aws/request.Request" representing the client's request for the PutScalingPolicy operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutScalingPolicy for more information on using the PutScalingPolicy API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutScalingPolicyRequest method. req, resp := client.PutScalingPolicyRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScalingPolicy

PutScalingPolicyWithContext

func (c *AutoScaling) PutScalingPolicyWithContext(ctx aws.Context, input *PutScalingPolicyInput, opts ...request.Option) (*PutScalingPolicyOutput, error)

PutScalingPolicyWithContext is the same as PutScalingPolicy with the addition of the ability to pass a context and additional request options.

See PutScalingPolicy for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

PutScheduledUpdateGroupAction

func (c *AutoScaling) PutScheduledUpdateGroupAction(input *PutScheduledUpdateGroupActionInput) (*PutScheduledUpdateGroupActionOutput, error)

PutScheduledUpdateGroupAction API operation for Auto Scaling.

Creates or updates a scheduled scaling action for an Auto Scaling group. If you leave a parameter unspecified when updating a scheduled scaling action, the corresponding value remains unchanged.

For more information, see Scheduled Scaling (https://docs.aws.amazon.com/autoscaling/ec2/userguide/schedule_time.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation PutScheduledUpdateGroupAction for usage and error information.

Returned Error Codes:

  • ErrCodeAlreadyExistsFault "AlreadyExists" You already have an Auto Scaling group or launch configuration with this name.

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScheduledUpdateGroupAction

Example

AutoScaling PutScheduledUpdateGroupAction shared00

To add a scheduled action to an Auto Scaling group

This example adds the specified scheduled action to the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.PutScheduledUpdateGroupActionInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), DesiredCapacity: aws.Int64(4), EndTime: parseTime("2006-01-02T15:04:05Z", "2014-05-12T08:00:00Z"), MaxSize: aws.Int64(6), MinSize: aws.Int64(2), ScheduledActionName: aws.String("my-scheduled-action"), StartTime: parseTime("2006-01-02T15:04:05Z", "2014-05-12T08:00:00Z"), } result, err := svc.PutScheduledUpdateGroupAction(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeAlreadyExistsFault: fmt.Println(autoscaling.ErrCodeAlreadyExistsFault, aerr.Error()) case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

PutScheduledUpdateGroupActionRequest

func (c *AutoScaling) PutScheduledUpdateGroupActionRequest(input *PutScheduledUpdateGroupActionInput) (req *request.Request, output *PutScheduledUpdateGroupActionOutput)

PutScheduledUpdateGroupActionRequest generates a "aws/request.Request" representing the client's request for the PutScheduledUpdateGroupAction operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See PutScheduledUpdateGroupAction for more information on using the PutScheduledUpdateGroupAction API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the PutScheduledUpdateGroupActionRequest method. req, resp := client.PutScheduledUpdateGroupActionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutScheduledUpdateGroupAction

PutScheduledUpdateGroupActionWithContext

func (c *AutoScaling) PutScheduledUpdateGroupActionWithContext(ctx aws.Context, input *PutScheduledUpdateGroupActionInput, opts ...request.Option) (*PutScheduledUpdateGroupActionOutput, error)

PutScheduledUpdateGroupActionWithContext is the same as PutScheduledUpdateGroupAction with the addition of the ability to pass a context and additional request options.

See PutScheduledUpdateGroupAction for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

RecordLifecycleActionHeartbeat

func (c *AutoScaling) RecordLifecycleActionHeartbeat(input *RecordLifecycleActionHeartbeatInput) (*RecordLifecycleActionHeartbeatOutput, error)

RecordLifecycleActionHeartbeat API operation for Auto Scaling.

Records a heartbeat for the lifecycle action associated with the specified token or instance. This extends the timeout by the length of time defined using PutLifecycleHook.

This step is a part of the procedure for adding a lifecycle hook to an Auto Scaling group:

(Optional) Create a Lambda function and a rule that allows CloudWatch Events to invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates instances.

(Optional) Create a notification target and an IAM role. The target can be either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to publish lifecycle notifications to the target.

Create the lifecycle hook. Specify whether the hook is used when the instances launch or terminate.

If you need more time, record the lifecycle action heartbeat to keep the instance in a pending state.

If you finish before the timeout period ends, complete the lifecycle action.

For more information, see Auto Scaling Lifecycle (https://docs.aws.amazon.com/autoscaling/ec2/userguide/AutoScalingGroupLifecycle.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation RecordLifecycleActionHeartbeat for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/RecordLifecycleActionHeartbeat

Example

AutoScaling RecordLifecycleActionHeartbeat shared00

To record a lifecycle action heartbeat

This example records a lifecycle action heartbeat to keep the instance in a pending state.

{ svc := autoscaling.New(session.New()) input := &autoscaling.RecordLifecycleActionHeartbeatInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LifecycleActionToken: aws.String("bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635"), LifecycleHookName: aws.String("my-lifecycle-hook"), } result, err := svc.RecordLifecycleActionHeartbeat(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

RecordLifecycleActionHeartbeatRequest

func (c *AutoScaling) RecordLifecycleActionHeartbeatRequest(input *RecordLifecycleActionHeartbeatInput) (req *request.Request, output *RecordLifecycleActionHeartbeatOutput)

RecordLifecycleActionHeartbeatRequest generates a "aws/request.Request" representing the client's request for the RecordLifecycleActionHeartbeat operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See RecordLifecycleActionHeartbeat for more information on using the RecordLifecycleActionHeartbeat API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the RecordLifecycleActionHeartbeatRequest method. req, resp := client.RecordLifecycleActionHeartbeatRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/RecordLifecycleActionHeartbeat

RecordLifecycleActionHeartbeatWithContext

func (c *AutoScaling) RecordLifecycleActionHeartbeatWithContext(ctx aws.Context, input *RecordLifecycleActionHeartbeatInput, opts ...request.Option) (*RecordLifecycleActionHeartbeatOutput, error)

RecordLifecycleActionHeartbeatWithContext is the same as RecordLifecycleActionHeartbeat with the addition of the ability to pass a context and additional request options.

See RecordLifecycleActionHeartbeat for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

ResumeProcesses

func (c *AutoScaling) ResumeProcesses(input *ScalingProcessQuery) (*ResumeProcessesOutput, error)

ResumeProcesses API operation for Auto Scaling.

Resumes the specified suspended automatic scaling processes, or all suspended process, for the specified Auto Scaling group.

For more information, see Suspending and Resuming Scaling Processes (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-suspend-resume-processes.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation ResumeProcesses for usage and error information.

Returned Error Codes:

  • ErrCodeResourceInUseFault "ResourceInUse" The operation can't be performed because the resource is in use.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ResumeProcesses

Example

AutoScaling ResumeProcesses shared00

To resume Auto Scaling processes

This example resumes the specified suspended scaling process for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.ScalingProcessQuery{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), ScalingProcesses: []*string{ aws.String("AlarmNotification"), }, } result, err := svc.ResumeProcesses(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceInUseFault: fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

ResumeProcessesRequest

func (c *AutoScaling) ResumeProcessesRequest(input *ScalingProcessQuery) (req *request.Request, output *ResumeProcessesOutput)

ResumeProcessesRequest generates a "aws/request.Request" representing the client's request for the ResumeProcesses operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See ResumeProcesses for more information on using the ResumeProcesses API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the ResumeProcessesRequest method. req, resp := client.ResumeProcessesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/ResumeProcesses

ResumeProcessesWithContext

func (c *AutoScaling) ResumeProcessesWithContext(ctx aws.Context, input *ScalingProcessQuery, opts ...request.Option) (*ResumeProcessesOutput, error)

ResumeProcessesWithContext is the same as ResumeProcesses with the addition of the ability to pass a context and additional request options.

See ResumeProcesses for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

SetDesiredCapacity

func (c *AutoScaling) SetDesiredCapacity(input *SetDesiredCapacityInput) (*SetDesiredCapacityOutput, error)

SetDesiredCapacity API operation for Auto Scaling.

Sets the size of the specified Auto Scaling group.

For more information about desired capacity, see What Is Amazon EC2 Auto Scaling? (https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SetDesiredCapacity for usage and error information.

Returned Error Codes:

  • ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress" The operation can't be performed because there are scaling activities in progress.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetDesiredCapacity

Example

AutoScaling SetDesiredCapacity shared00

To set the desired capacity for an Auto Scaling group

This example sets the desired capacity for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.SetDesiredCapacityInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), DesiredCapacity: aws.Int64(2), HonorCooldown: aws.Bool(true), } result, err := svc.SetDesiredCapacity(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

SetDesiredCapacityRequest

func (c *AutoScaling) SetDesiredCapacityRequest(input *SetDesiredCapacityInput) (req *request.Request, output *SetDesiredCapacityOutput)

SetDesiredCapacityRequest generates a "aws/request.Request" representing the client's request for the SetDesiredCapacity operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SetDesiredCapacity for more information on using the SetDesiredCapacity API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SetDesiredCapacityRequest method. req, resp := client.SetDesiredCapacityRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetDesiredCapacity

SetDesiredCapacityWithContext

func (c *AutoScaling) SetDesiredCapacityWithContext(ctx aws.Context, input *SetDesiredCapacityInput, opts ...request.Option) (*SetDesiredCapacityOutput, error)

SetDesiredCapacityWithContext is the same as SetDesiredCapacity with the addition of the ability to pass a context and additional request options.

See SetDesiredCapacity for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

SetInstanceHealth

func (c *AutoScaling) SetInstanceHealth(input *SetInstanceHealthInput) (*SetInstanceHealthOutput, error)

SetInstanceHealth API operation for Auto Scaling.

Sets the health status of the specified instance.

For more information, see Health Checks (https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SetInstanceHealth for usage and error information.

Returned Error Codes:

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceHealth

Example

AutoScaling SetInstanceHealth shared00

To set the health status of an instance

This example sets the health status of the specified instance to Unhealthy.

{ svc := autoscaling.New(session.New()) input := &autoscaling.SetInstanceHealthInput{ HealthStatus: aws.String("Unhealthy"), InstanceId: aws.String("i-93633f9b"), } result, err := svc.SetInstanceHealth(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

SetInstanceHealthRequest

func (c *AutoScaling) SetInstanceHealthRequest(input *SetInstanceHealthInput) (req *request.Request, output *SetInstanceHealthOutput)

SetInstanceHealthRequest generates a "aws/request.Request" representing the client's request for the SetInstanceHealth operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SetInstanceHealth for more information on using the SetInstanceHealth API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SetInstanceHealthRequest method. req, resp := client.SetInstanceHealthRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceHealth

SetInstanceHealthWithContext

func (c *AutoScaling) SetInstanceHealthWithContext(ctx aws.Context, input *SetInstanceHealthInput, opts ...request.Option) (*SetInstanceHealthOutput, error)

SetInstanceHealthWithContext is the same as SetInstanceHealth with the addition of the ability to pass a context and additional request options.

See SetInstanceHealth for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

SetInstanceProtection

func (c *AutoScaling) SetInstanceProtection(input *SetInstanceProtectionInput) (*SetInstanceProtectionOutput, error)

SetInstanceProtection API operation for Auto Scaling.

Updates the instance protection settings of the specified instances.

For more information about preventing instances that are part of an Auto Scaling group from terminating on scale in, see Instance Protection (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SetInstanceProtection for usage and error information.

Returned Error Codes:

  • ErrCodeLimitExceededFault "LimitExceeded" You have already reached a limit for your Auto Scaling resources (for example, groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceProtection

Examples

AutoScaling SetInstanceProtection shared00

To enable instance protection for an instance

This example enables instance protection for the specified instance.

{ svc := autoscaling.New(session.New()) input := &autoscaling.SetInstanceProtectionInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), InstanceIds: []*string{ aws.String("i-93633f9b"), }, ProtectedFromScaleIn: aws.Bool(true), } result, err := svc.SetInstanceProtection(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }
AutoScaling SetInstanceProtection shared01

To disable instance protection for an instance

This example disables instance protection for the specified instance.

{ svc := autoscaling.New(session.New()) input := &autoscaling.SetInstanceProtectionInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), InstanceIds: []*string{ aws.String("i-93633f9b"), }, ProtectedFromScaleIn: aws.Bool(false), } result, err := svc.SetInstanceProtection(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeLimitExceededFault: fmt.Println(autoscaling.ErrCodeLimitExceededFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

SetInstanceProtectionRequest

func (c *AutoScaling) SetInstanceProtectionRequest(input *SetInstanceProtectionInput) (req *request.Request, output *SetInstanceProtectionOutput)

SetInstanceProtectionRequest generates a "aws/request.Request" representing the client's request for the SetInstanceProtection operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SetInstanceProtection for more information on using the SetInstanceProtection API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SetInstanceProtectionRequest method. req, resp := client.SetInstanceProtectionRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SetInstanceProtection

SetInstanceProtectionWithContext

func (c *AutoScaling) SetInstanceProtectionWithContext(ctx aws.Context, input *SetInstanceProtectionInput, opts ...request.Option) (*SetInstanceProtectionOutput, error)

SetInstanceProtectionWithContext is the same as SetInstanceProtection with the addition of the ability to pass a context and additional request options.

See SetInstanceProtection for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

SuspendProcesses

func (c *AutoScaling) SuspendProcesses(input *ScalingProcessQuery) (*SuspendProcessesOutput, error)

SuspendProcesses API operation for Auto Scaling.

Suspends the specified automatic scaling processes, or all processes, for the specified Auto Scaling group.

If you suspend either the Launch or Terminate process types, it can prevent other process types from functioning properly.

To resume processes that have been suspended, use ResumeProcesses.

For more information, see Suspending and Resuming Scaling Processes (https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-suspend-resume-processes.html) in the Amazon EC2 Auto Scaling User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation SuspendProcesses for usage and error information.

Returned Error Codes:

  • ErrCodeResourceInUseFault "ResourceInUse" The operation can't be performed because the resource is in use.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SuspendProcesses

Example

AutoScaling SuspendProcesses shared00

To suspend Auto Scaling processes

This example suspends the specified scaling process for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.ScalingProcessQuery{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), ScalingProcesses: []*string{ aws.String("AlarmNotification"), }, } result, err := svc.SuspendProcesses(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeResourceInUseFault: fmt.Println(autoscaling.ErrCodeResourceInUseFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

SuspendProcessesRequest

func (c *AutoScaling) SuspendProcessesRequest(input *ScalingProcessQuery) (req *request.Request, output *SuspendProcessesOutput)

SuspendProcessesRequest generates a "aws/request.Request" representing the client's request for the SuspendProcesses operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See SuspendProcesses for more information on using the SuspendProcesses API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the SuspendProcessesRequest method. req, resp := client.SuspendProcessesRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/SuspendProcesses

SuspendProcessesWithContext

func (c *AutoScaling) SuspendProcessesWithContext(ctx aws.Context, input *ScalingProcessQuery, opts ...request.Option) (*SuspendProcessesOutput, error)

SuspendProcessesWithContext is the same as SuspendProcesses with the addition of the ability to pass a context and additional request options.

See SuspendProcesses for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

TerminateInstanceInAutoScalingGroup

func (c *AutoScaling) TerminateInstanceInAutoScalingGroup(input *TerminateInstanceInAutoScalingGroupInput) (*TerminateInstanceInAutoScalingGroupOutput, error)

TerminateInstanceInAutoScalingGroup API operation for Auto Scaling.

Terminates the specified instance and optionally adjusts the desired group size.

This call simply makes a termination request. The instance is not terminated immediately.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation TerminateInstanceInAutoScalingGroup for usage and error information.

Returned Error Codes:

  • ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress" The operation can't be performed because there are scaling activities in progress.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/TerminateInstanceInAutoScalingGroup

Example

AutoScaling TerminateInstanceInAutoScalingGroup shared00

To terminate an instance in an Auto Scaling group

This example terminates the specified instance from the specified Auto Scaling group without updating the size of the group. Auto Scaling launches a replacement instance after the specified instance terminates.

{ svc := autoscaling.New(session.New()) input := &autoscaling.TerminateInstanceInAutoScalingGroupInput{ InstanceId: aws.String("i-93633f9b"), ShouldDecrementDesiredCapacity: aws.Bool(false), } result, err := svc.TerminateInstanceInAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

TerminateInstanceInAutoScalingGroupRequest

func (c *AutoScaling) TerminateInstanceInAutoScalingGroupRequest(input *TerminateInstanceInAutoScalingGroupInput) (req *request.Request, output *TerminateInstanceInAutoScalingGroupOutput)

TerminateInstanceInAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the TerminateInstanceInAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See TerminateInstanceInAutoScalingGroup for more information on using the TerminateInstanceInAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the TerminateInstanceInAutoScalingGroupRequest method. req, resp := client.TerminateInstanceInAutoScalingGroupRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/TerminateInstanceInAutoScalingGroup

TerminateInstanceInAutoScalingGroupWithContext

func (c *AutoScaling) TerminateInstanceInAutoScalingGroupWithContext(ctx aws.Context, input *TerminateInstanceInAutoScalingGroupInput, opts ...request.Option) (*TerminateInstanceInAutoScalingGroupOutput, error)

TerminateInstanceInAutoScalingGroupWithContext is the same as TerminateInstanceInAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See TerminateInstanceInAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

UpdateAutoScalingGroup

func (c *AutoScaling) UpdateAutoScalingGroup(input *UpdateAutoScalingGroupInput) (*UpdateAutoScalingGroupOutput, error)

UpdateAutoScalingGroup API operation for Auto Scaling.

Updates the configuration for the specified Auto Scaling group.

The new settings take effect on any scaling activities after this call returns. Scaling activities that are currently in progress aren't affected.

To update an Auto Scaling group with a launch configuration with InstanceMonitoring set to false, you must first disable the collection of group metrics. Otherwise, you get an error. If you have previously enabled the collection of group metrics, you can disable it using DisableMetricsCollection.

Note the following:

  • If you specify a new value for MinSize without specifying a value for DesiredCapacity, and the new MinSize is larger than the current size of the group, we implicitly call SetDesiredCapacity to set the size of the group to the new value of MinSize.

  • If you specify a new value for MaxSize without specifying a value for DesiredCapacity, and the new MaxSize is smaller than the current size of the group, we implicitly call SetDesiredCapacity to set the size of the group to the new value of MaxSize.

  • All other optional parameters are left unchanged if not specified.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Auto Scaling's API operation UpdateAutoScalingGroup for usage and error information.

Returned Error Codes:

  • ErrCodeScalingActivityInProgressFault "ScalingActivityInProgress" The operation can't be performed because there are scaling activities in progress.

  • ErrCodeResourceContentionFault "ResourceContention" You already have a pending update to an Auto Scaling resource (for example, a group, instance, or load balancer).

  • ErrCodeServiceLinkedRoleFailure "ServiceLinkedRoleFailure" The service-linked role is not yet ready for use.

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroup

Examples

AutoScaling UpdateAutoScalingGroup shared00

To update the launch configuration

This example updates the launch configuration of the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.UpdateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), LaunchConfigurationName: aws.String("new-launch-config"), } result, err := svc.UpdateAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }
AutoScaling UpdateAutoScalingGroup shared01

To update the minimum and maximum size

This example updates the minimum size and maximum size of the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.UpdateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), MaxSize: aws.Int64(3), MinSize: aws.Int64(1), } result, err := svc.UpdateAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }
AutoScaling UpdateAutoScalingGroup shared02

To enable instance protection

This example enables instance protection for the specified Auto Scaling group.

{ svc := autoscaling.New(session.New()) input := &autoscaling.UpdateAutoScalingGroupInput{ AutoScalingGroupName: aws.String("my-auto-scaling-group"), NewInstancesProtectedFromScaleIn: aws.Bool(true), } result, err := svc.UpdateAutoScalingGroup(input) if err != nil { if aerr, ok := err.(awserr.Error); ok { switch aerr.Code() { case autoscaling.ErrCodeScalingActivityInProgressFault: fmt.Println(autoscaling.ErrCodeScalingActivityInProgressFault, aerr.Error()) case autoscaling.ErrCodeResourceContentionFault: fmt.Println(autoscaling.ErrCodeResourceContentionFault, aerr.Error()) case autoscaling.ErrCodeServiceLinkedRoleFailure: fmt.Println(autoscaling.ErrCodeServiceLinkedRoleFailure, aerr.Error()) default: fmt.Println(aerr.Error()) } } else { fmt.Println(err.Error()) } return } fmt.Println(result) }

UpdateAutoScalingGroupRequest

func (c *AutoScaling) UpdateAutoScalingGroupRequest(input *UpdateAutoScalingGroupInput) (req *request.Request, output *UpdateAutoScalingGroupOutput)

UpdateAutoScalingGroupRequest generates a "aws/request.Request" representing the client's request for the UpdateAutoScalingGroup operation. The "output" return value will be populated with the request's response once the request completes successfully.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See UpdateAutoScalingGroup for more information on using the UpdateAutoScalingGroup API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the UpdateAutoScalingGroupRequest method. req, resp := client.UpdateAutoScalingGroupRequest(params) err := req.Send() if err == nil { // resp is now filled fmt.Println(resp) }

See also, https://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroup

UpdateAutoScalingGroupWithContext

func (c *AutoScaling) UpdateAutoScalingGroupWithContext(ctx aws.Context, input *UpdateAutoScalingGroupInput, opts ...request.Option) (*UpdateAutoScalingGroupOutput, error)

UpdateAutoScalingGroupWithContext is the same as UpdateAutoScalingGroup with the addition of the ability to pass a context and additional request options.

See UpdateAutoScalingGroup for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

See Also

For more information about using this API, see AWS API Documentation.

WaitUntilGroupExists

func (c *AutoScaling) WaitUntilGroupExists(input *DescribeAutoScalingGroupsInput) error

WaitUntilGroupExists uses the Auto Scaling API operation DescribeAutoScalingGroups to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

WaitUntilGroupExistsWithContext

func (c *AutoScaling) WaitUntilGroupExistsWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.WaiterOption) error

WaitUntilGroupExistsWithContext is an extended version of WaitUntilGroupExists. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

WaitUntilGroupInService

func (c *AutoScaling) WaitUntilGroupInService(input *DescribeAutoScalingGroupsInput) error

WaitUntilGroupInService uses the Auto Scaling API operation DescribeAutoScalingGroups to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

WaitUntilGroupInServiceWithContext

func (c *AutoScaling) WaitUntilGroupInServiceWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.WaiterOption) error

WaitUntilGroupInServiceWithContext is an extended version of WaitUntilGroupInService. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

WaitUntilGroupNotExists

func (c *AutoScaling) WaitUntilGroupNotExists(input *DescribeAutoScalingGroupsInput) error

WaitUntilGroupNotExists uses the Auto Scaling API operation DescribeAutoScalingGroups to wait for a condition to be met before returning. If the condition is not met within the max attempt window, an error will be returned.

WaitUntilGroupNotExistsWithContext

func (c *AutoScaling) WaitUntilGroupNotExistsWithContext(ctx aws.Context, input *DescribeAutoScalingGroupsInput, opts ...request.WaiterOption) error

WaitUntilGroupNotExistsWithContext is an extended version of WaitUntilGroupNotExists. With the support for passing in a context and options to configure the Waiter and the underlying request options.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

On this page: