View a markdown version of this page

CloudWatch Alarmes - Teste de carga distribuído na AWS

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á.

CloudWatch Alarmes

Essa solução implanta dois CloudWatch alarmes que monitoram as condições operacionais que exigem atenção. Por padrão, esses alarmes não têm ações de notificação configuradas. Recomendamos inscrever um tópico do Amazon SNS em cada alarme para que os operadores recebam notificações imediatas quando ocorrerem problemas.

Inscreva-se para receber notificações de alarme

Para receber notificações quando um alarme dispara:

  1. Abra o console CloudWatch de alarmes.

  2. Pesquise alarmes prefixados com o nome da sua pilha (por exemplo,). my-stack-OrphanCleanupFailure

  3. Selecione o alarme e escolha Editar.

  4. Em Notificação, escolha Adicionar notificação.

  5. Selecione ou crie um tópico do SNS com seus endpoints de notificação preferidos (e-mail, SMS ou Lambda).

  6. Escolha Create alarm (Criar alarme).

Repita o procedimento para cada alarme.

OrphanCleanupFailure

Atributo Valor

Nome do alarme

{StackName}-OrphanCleanupFailure

Métrica

OrphanCleanupFailuresno distributed-load-testing namespace

Limite

>= 1 falha em 5 minutos

Trate os dados perdidos

Violação

O que esse alarme monitora: a solução usa três camadas de defesa para evitar serviços ECS descontrolados:

  • Camada 1: Tratamento automatizado de erros — O fluxo de trabalho da orquestração de testes inclui o tratamento de erros em cada etapa. Se alguma coisa falhar durante o provisionamento, a estabilização ou a execução, o fluxo de trabalho acionará automaticamente a limpeza para drenar e excluir os serviços do ECS.

  • Camada 2: Detecção de falha na execução — Se o próprio fluxo de trabalho de orquestração sair inesperadamente (por exemplo, devido a um tempo limite ou erro interno que ignora o tratamento normal de erros), uma EventBridge regra detecta a falha e aciona de forma independente a limpeza de cada região envolvida no teste.

  • Camada 3: Limpeza órfã de hora em hora — Um processo programado é executado a cada hora, verifica os serviços do ECS que não estão associados a nenhum teste ativo e os exclui à força. Essa é a rede de segurança de último recurso — se a camada 1 e a camada 2 falharem, os serviços vazados ainda serão removidos em uma hora. Se o próprio processo de limpeza de órfãos falhar, esse alarme será acionado.

Por que isso importa: os serviços órfãos do ECS Fargate continuam funcionando e incorrendo em cobranças sem visibilidade no console DLT. Sem uma assinatura de notificação, as operadoras só descobrirão o problema quando custos inesperados aparecerem na fatura.

Resposta recomendada: Quando esse alarme disparar, navegue até o console do Amazon ECS, identifique os serviços no cluster DLT que não correspondam a um teste em execução e exclua-os manualmente.

MetricFilterCount

Atributo Valor

Nome do alarme

{StackName}-MetricFilterCount-Alarm

Métrica

MetricFilterCountno distributed-load-testing namespace

Limite

>= 90

Trate os dados perdidos

Não violando

O que esse alarme monitora: a solução cria filtros CloudWatch métricos dinamicamente no grupo de registros do ECS para oferecer suporte a métricas ativas durante a execução do teste. A AWS limita cada grupo de registros a 100 filtros métricos. Esse alarme é acionado quando o uso atinge 90% desse limite.

Por que isso importa: se o limite for atingido, novas execuções de teste de carga falharão.

Resposta recomendada: exclua cenários de teste que não são mais necessários. Quando um cenário de teste é excluído, a solução remove os filtros métricos associados e libera a capacidade para novos testes.