

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Atividades de escalação para o Application Auto Scaling
<a name="application-auto-scaling-scaling-activities"></a>

O Application Auto Scaling monitora as CloudWatch métricas da sua política de escalabilidade e inicia uma atividade de escalabilidade quando os limites são excedidos. Ele também inicia atividades de escalação quando você modifica o tamanho máximo ou mínimo do alvo escalável, seja manualmente ou seguindo um cronograma.

Quando ocorre uma atividade de escalação, o Application Auto Scaling faz uma das seguintes ações:
+ Aumenta a capacidade do alvo escalável (chamado de *aumento de escala horizontal*)
+ Diminui a capacidade do alvo escalável (chamado de *aumento de escala horizontal*)

Você pode pesquisar as atividades de escalação das últimas seis semanas. 

## Pesquisar atividades de escalabilidade por destino escalável
<a name="look-up-scaling-activities-with-the-aws-cli"></a>

Para ver as atividades de escalabilidade de um alvo escalável específico, use o comando a seguir [describe-scaling-activities](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scaling-activities.html).

**Linux, macOS ou Unix**

```
aws application-autoscaling describe-scaling-activities --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount --resource-id service/my-cluster/my-service
```

**Windows**

```
aws application-autoscaling describe-scaling-activities --service-namespace ecs --scalable-dimension ecs:service:DesiredCount --resource-id service/my-cluster/my-service
```

Veja a seguir um exemplo de resposta no qual `StatusCode` contém o status atual da atividade e `StatusMessage` contém a mensagem sobre o status da atividade de escalação. 

```
{
    "ScalingActivities": [
        {
            "ScalableDimension": "ecs:service:DesiredCount",
            "Description": "Setting desired count to 1.",
            "ResourceId": "service/my-cluster/my-service",
            "ActivityId": "e6c5f7d1-dbbb-4a3f-89b2-51f33e766399",
            "StartTime": 1462575838.171,
            "ServiceNamespace": "ecs",
            "EndTime": 1462575872.111,
            "Cause": "monitor alarm web-app-cpu-lt-25 in state ALARM triggered policy web-app-cpu-lt-25",
            "StatusMessage": "Successfully set desired count to 1. Change successfully fulfilled by ecs.",
            "StatusCode": "Successful"
        }
    ]
}
```

Para obter uma descrição dos campos na resposta, consulte [ScalingActivity](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_ScalingActivity.html)a Referência da *API Application Auto Scaling*. 

Os códigos de status a seguir indicam quando o evento de escalação que leva à atividade de escalação atinge um estado concluído:
+ `Successful`: a escalação foi concluída com êxito
+ `Overridden`: a capacidade desejada foi atualizada por um evento de escalação mais recente
+ `Unfulfilled`: a escalação atingiu o tempo limite ou o serviço alvo não pode atender à solicitação
+ `Failed`: a escalação falhou com uma exceção 

**nota**  
A atividade de escalação também pode ter um status `Pending` ou `InProgress`. Todas as atividades de escalação têm um status `Pending` até que o serviço-alvo responda. Depois que o alvo responde, o status da atividade de escalação passa a ser `InProgress`.

## Incluir atividades que não sofreram ajuste de escala
<a name="include-not-scaled-activities-with-the-aws-cli"></a>

Por padrão, as atividades de escalação não refletem as ocasiões em que o Application Auto Scaling toma uma decisão sobre se a escalação não deve ser feita.

Por exemplo, suponha que um serviço do Amazon ECS exceda o limite máximo de uma determinada métrica, mas o número de tarefas já tenha atingido o máximo permitido. Nesse caso, o Application Auto Scaling não aumenta horizontalmente a escala do número desejado de tarefas.

Para incluir atividades que não são escalonadas (*não atividades escalonadas*) na resposta, adicione a `--include-not-scaled-activities` opção ao [describe-scaling-activities](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scaling-activities.html)comando. 

**Linux, macOS ou Unix**

```
aws application-autoscaling describe-scaling-activities --include-not-scaled-activities \
  --service-namespace ecs --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/my-cluster/my-service
```

**Windows**

```
aws application-autoscaling describe-scaling-activities --include-not-scaled-activities --service-namespace ecs --scalable-dimension ecs:service:DesiredCount --resource-id service/my-cluster/my-service 
```

**nota**  
Se esse comando gerar um erro, verifique se você atualizou o AWS CLI localmente para a versão mais recente.

Para confirmar que a resposta inclui as atividades não escaladas, o elemento `NotScaledReasons` é mostrado na saída para algumas ou para todas as atividades de escalação que falharam. 

```
{
    "ScalingActivities": [
        {
            "ScalableDimension": "ecs:service:DesiredCount",
            "Description": "Attempting to scale due to alarm triggered",
            "ResourceId": "service/my-cluster/my-service",
            "ActivityId": "4d759079-a31f-4d0c-8468-504c56e2eecf",
            "StartTime": 1664928867.915,
            "ServiceNamespace": "ecs",
            "Cause": "monitor alarm web-app-cpu-gt-75 in state ALARM triggered policy web-app-cpu-gt-75",
            "StatusCode": "Failed",
            "NotScaledReasons": [ 
                { 
                    "Code": "AlreadyAtMaxCapacity",
                    "MaxCapacity": 4
                }
            ]
        }
    ]
}
```

Para obter uma descrição dos campos na resposta, consulte [ScalingActivity](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_ScalingActivity.html)a Referência da *API Application Auto Scaling*.

Se uma atividade não escalada for retornada, dependendo do código de motivo listado em `Code`, atributos como `CurrentCapacity`, `MaxCapacity` e `MinCapacity` podem estar presentes na resposta. 

Para evitar grandes quantidades de entradas duplicadas, somente a primeira atividade que não sofreu ajuste de escala será registrada no histórico de atividades de escalabilidade. As atividades subsequentes que não sofreram ajuste de escala não gerarão novas entradas, a menos que o motivo da não terem sofrido ajuste mude.

## Códigos de motivo
<a name="understand-not-scaled-reason-codes"></a>

A seguir estão os códigos de motivos para uma atividade não escalada.


| Código do motivo | Definição | 
| --- | --- | 
| AutoScalingAnticipatedFlapping | O algoritmo de escalação automático decidiu não realizar uma ação de escalação porque isso causaria oscilações. Oscilação é um ciclo infinito de aumento e redução de escala horizontal. Ou seja, se uma ação de escalação fosse feita, o valor da métrica seria alterado para iniciar outra ação de escalação na direção inversa.  | 
| TargetServicePutResourceAsUnscalable | O [serviço de destino](integrated-services-list.md) colocou temporariamente o recurso em um estado não escalável. O Application Auto Scaling tentará escalar novamente quando as condições de escalabilidade automática especificadas na política de escalabilidade forem atendidas. | 
| AlreadyAtMaxCapacity | A escalação é impedida pela capacidade máxima que você especificou. Se você quiser que o Application Auto Scaling aumente a escala horizontalmente, será necessário aumentar a capacidade máxima. | 
| AlreadyAtMinCapacity | A escalação é impedida pela capacidade mínima que você especificou. Se você quiser que o Application Auto Scaling reduza a escala horizontalmente, será necessário diminuir a capacidade máxima. | 
| AlreadyAtDesiredCapacity | O algoritmo de escalação automática calculou que a capacidade revisada é igual à capacidade atual.  | 