

# Criar um alarme de latência do balanceador de carga que envie um email
<a name="US_AlarmAtThresholdELB"></a>

É possível configurar uma notificação do Amazon SNS e um alarme que monitore a latência que exceda 100 ms para Classic Load Balancer.

## Configurar um alarme de latência usando o Console de gerenciamento da AWS
<a name="load-balancer-alarm-console"></a>

Use estas etapas para usar a Console de gerenciamento da AWS para criar um alarme de latência de load balancer.

**Criar um alarme de latência de balanceador de carga**

1. Abra o console do CloudWatch, em [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. No painel de navegação, escolha **Alarms** (Alarmes), **All alarms** (Todos os alarmes).

1. Selecione **Criar alarme**.

1. Em **Métricas do CloudWatch por categoria**, selecione a categoria **Métricas do ELB**.

1. Selecione a linha com o Classic Load Balancer e a métrica **Latency** (Latência).

1. Para a estatística, escolha **Average (Média)**, escolha um dos percentis predefinidos ou especifique um percentil personalizado (por exemplo, **p95.45**).

1. Para o período, escolha **1 Minute (1 minuto)**.

1. Escolha **Próximo**.

1. Em **Alarm Threshold (Limite do alarme)**, insira um nome exclusivo para o alarme (por exemplo, **myHighCpuAlarm**) e uma descrição do alarme (por exemplo, **Alarm when Latency exceeds 100s**). Os nomes dos alarmes devem conter somente caracteres UTF-8 da e não podem conter caracteres de controle ASCII

   O nome deve conter somente caracteres UTF-8, e não poderá conter caracteres de controle ASCII. A descrição pode incluir a formatação de markdown, que é exibida somente na guia **Detalhes** do alarme no console do CloudWatch. O markdown pode ser útil para adicionar links para runbooks ou outros recursos internos.

1. Em **Whenever (Sempre que)**, em **is (é)**, escolha **>** e insira **0.1**. Em **for (para)**, insira **3**.

1. Em **Additional settings (Configurações adicionais)**, em **Treat missing data as (Tratar dados ausentes como)**, escolha **ignore (maintain alarm state) (ignorar (manter estado do alarme))** para que os pontos de dados ausentes não acionem mudanças do estado do alarme.

   Em **Percentiles with low samples** (Percentis com amostras baixas), escolha **ignore (maintain the alarm state)** (ignorar [manter estado do alarme]) para que o alarme só avalie situações com números adequados de amostras de dados. 

1. Em **Actions** (Ações), em **Whenever this alarm** (Sempre que este alarme), escolha **State is ALARM** (Estado é ALARME). Em **Enviar notificação para**, escolha um tópico do SNS existente ou crie um novo.

   Para criar um tópico do SNS, escolha **New list (Nova lista)**. Em **Send notification to (Enviar notificação para)**, insira um nome para o tópico do SNS (por exemplo, **myHighCpuAlarm**). Em **Email list (Lista de e-mails)**, insira uma lista de endereços de e-mail separados por vírgulas a serem notificados quando o alarme mudar para o estado `ALARM`. Para cada endereço de e-mail será enviado um e-mail de confirmação da inscrição no tópico. Você deve confirmar a inscrição para que as notificações sejam enviadas.

1. Escolha **Criar Alarm**.

## Configurar um alarme de latência usando o AWS CLI
<a name="load-balancer-alarm-cli"></a>

Use estas etapas para usar a AWS CLI para criar um alarme de latência de load balancer.

**Criar um alarme de latência de balanceador de carga**

1. Configure um tópico do SNS. Para obter mais informações, consulte [Configurar notificações do Amazon SNS](Notify_Users_Alarm_Changes.md#US_SetupSNS).

1. Crie o alarme usando o comando [put-metric-alarm](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/put-metric-alarm.html) da seguinte forma:

   ```
   1. aws cloudwatch put-metric-alarm --alarm-name {{lb-mon}} --alarm-description "Alarm when Latency exceeds 100s" --metric-name Latency --namespace AWS/ELB --statistic Average --period 60 --threshold 100 --comparison-operator GreaterThanThreshold --dimensions Name=LoadBalancerName,Value={{my-server}} --evaluation-periods 3 --alarm-actions arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{my-topic}} --unit Seconds
   ```

1. Teste o alarme forçando uma alteração de estado com o comando [set-alarm-state](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/set-alarm-state.html).

   1. Altere o estado do alarme de `INSUFFICIENT_DATA` para `OK`.

      ```
      1. aws cloudwatch set-alarm-state --alarm-name {{lb-mon}} --state-reason "initializing" --state-value OK
      ```

   1. Altere o estado do alarme de `OK` para `ALARM`.

      ```
      1. aws cloudwatch set-alarm-state --alarm-name {{lb-mon}} --state-reason "initializing" --state-value ALARM
      ```

   1. Verifique se você recebeu uma notificação por e-mail sobre o alarme.