REL 6: Como você monitora recursos de carga de trabalho?
Os logs e as métricas são uma ferramenta poderosa para saber a integridade das suas cargas de trabalho. Você pode configurar sua carga de trabalho para monitorar logs e métricas e enviar notificações quando os limites forem ultrapassados ou em caso de eventos importantes. O monitoramento permite que sua carga de trabalho reconheça quando os limites de baixa performance são ultrapassados ou quando há falhas, para que ela possa se recuperar automaticamente em resposta.
Recursos
Using Amazon CloudWatch Metrics
Publishing Custom Metrics
Using Amazon CloudWatch Dashboards
Using Canaries (Amazon CloudWatch Synthetics)
Amazon CloudWatch Logs Insights Sample Queries
AWS Systems Manager Automation
What is AWS X-Ray?
Debugging with Amazon CloudWatch Synthetics and AWS X-Ray
The Amazon Builders' Library: Instrumenting distributed systems for operational visibility
Melhores práticas:
-
Monitore todos os componentes da carga de trabalho (geração): Monitore os componentes da carga de trabalho com o Amazon CloudWatch ou ferramentas de terceiros. Monitore os serviços da AWS com o Personal Health Dashboard
-
Defina e calcule as métricas (agregação): Armazene os dados de log e aplique filtros quando necessário para calcular métricas como contagens de um evento de log específico ou latência calculada com base na data e hora dos eventos de log
-
Envie notificações (processamento e emissão de alarmes em tempo real): As organizações que precisam estar a par de tudo, recebem notificações quando ocorrem eventos importantes
-
Automatize respostas (processamento e emissão de alarmes em tempo real): Use a automação para executar uma ação quando um evento é detectado, por exemplo, para substituir componentes com falha
-
Armazenamento e estudo analítico: Colete arquivos de log e históricos de métricas e analise-os para obter tendências mais abrangentes e informações sobre a carga de trabalho
-
Faça revisões regularmente: Revise frequentemente a implementação do monitoramento da carga de trabalho e atualize-a com base em eventos e alterações significativos
-
Monitore o rastreamento completo das solicitações por meio do seu sistema: Use o AWS X-Ray ou ferramentas de terceiros para que os desenvolvedores possam analisar e depurar mais facilmente os sistemas distribuídos para entender a performance dos aplicativos e dos serviços subjacentes deles
Plano de melhoria
Monitore todos os componentes da carga de trabalho (geração)
- Defina todos os serviços da AWS que você está usando
- Habilite o registro em log para todos os serviços: A AWS tem registro em log para muitos serviços. Se o serviço não tiver o registro
em log no nível que você deseja, adicione-o de suas cargas de trabalho
- Habilitar o registro em log do Amazon S3
Amazon S3 Server Access Logging - Habilitar o registro em log do Elastic Load Balancing
Access logs for your application load balancer
Access Logs for Your Network Load Balancer
Enable Access Logs for Your Classic Load Balancer - Habilitar os logs de fluxo da VPC
VPC Flow Logs - Habilitar os logs do CloudTrail
Creating a trail - Use o agente do Amazon CloudWatch para fazer streaming dos dados de log da instância
para o CloudWatch Logs
Install the CloudWatch agent on an Amazon EC2 instance - Use o driver de log awslogs com o Amazon ECS para fazer streaming dos dados de log
para o CloudWatch Logs
Using CloudWatch Logs with container instances - O AWS Lambda fazer streaming dos dados de log automaticamente para o CloudWatch Logs
Accessing Amazon CloudWatch Logs for AWS Lambda
- Habilitar o registro em log do Amazon S3
AWS Services That Publish CloudWatch Metrics
- As métricas podem ser avaliadas de modo tanto individual quanto agregado
- Acesse o console do CloudWatch e explore as métricas coletadas
- Consulte a documentação para saber as métricas e dimensões que são coletadas
Amazon CloudWatch Logs Insights Sample Queries
Publish custom metrics
- Se você precisar de uso de memória ou de consumo de disco, use o agente do CloudWatch
ou a API PutMetricData
Monitoring memory and disk metrics for Amazon EC2 linux instances
- Use o CloudWatch Logs para arquivos de log comuns
- Você pode usar o CloudWatch Logs para os casos de uso de agregação de log mais comuns
What are Amazon CloudWatch Logs?
- Você pode usar o CloudWatch Logs para os casos de uso de agregação de log mais comuns
- Armazene todos os logs no Amazon S3 ou no Amazon S3 Glacier para um período de armazenamento
mais longo
- Você pode exportar o CloudWatch Logs para o Amazon S3. Os logs do CloudTrail e do
Elastic Load Balancing são enviados ao Amazon S3
Exporting log data to Amazon S3
- Você pode exportar o CloudWatch Logs para o Amazon S3. Os logs do CloudTrail e do
Elastic Load Balancing são enviados ao Amazon S3
Defina e calcule as métricas (agregação)
- Os filtros de métrica definem os termos e padrões a serem procurados nos dados de
log à medida que são enviados para o CloudWatch Logs. O CloudWatch Logs usa esses
filtros de métrica para transformar dados de log em métricas numéricas do CloudWatch,
que você pode usar para criar um gráfico ou definir um alarme
Searching and Filtering Log Data - Use um terceiro confiável para agregar logs
- Siga as instruções do terceiro. A maioria dos produtos de terceiros integra-se ao CloudWatch e ao Amazon S3
- Alguns serviços da AWS podem publicar logs diretamente no Amazon S3. Dessa forma,
se seu principal requisito de logs for o armazenamento no Amazon S3, você poderá facilmente
fazer com que o serviço que produz os logs os envie diretamente para o Amazon S3 sem
configurar uma infraestrutura adicional
Sending Logs Directly to Amazon S3
Envie notificações (processamento e emissão de alarmes em tempo real)
- Os painéis do Amazon CloudWatch são páginas iniciais personalizáveis no console do
CloudWatch que você pode usar para monitorar os recursos em uma única visualização,
mesmo aqueles distribuídos por regiões diferentes
Using Amazon CloudWatch Dashboards - Crie um alarme quando a métrica ultrapassar um limite
Using Amazon CloudWatch Alarms
Automatize respostas (processamento e emissão de alarmes em tempo real)
AWS Systems Manager Automation
- Crie e use documentos do Systems Manager Automation. Eles definem as ações que o Systems
Manager executa em suas instâncias gerenciadas e em outros recursos da AWS quando
ocorre uma execução de automação
Working with Automation Documents (Playbooks)
Creating an EventBridge Rule That Triggers on an Event from an AWS Resource
- Faça o inventário de todos os seus procedimentos de resposta de alerta: Você deve planejar suas respostas de alerta antes de classificar as tarefas
- Faça o inventário de todas as tarefas com ações específicas que devem ser executadas: A maioria dessas ações está documentada nos runbooks. Você também deve ter playbooks para alertas de eventos inesperados
- Examine os runbooks e os playbooks de todas as ações automatizáveis: Em geral, se for possível definir uma ação, ela provavelmente poderá ser automatizada
- Classifique primeiro as atividades demoradas ou propensas a erros: É mais vantajoso remover as fontes de erros e reduzir o tempo de resolução
- Estabeleça um plano para concluir a automação: Mantenha um plano ativo para automatizar e atualizar a automação
- Examine os requisitos manuais para oportunidades de automação: Analise seu processo manual para criar oportunidades de automatização
Armazenamento e estudo analítico
Analyzing Log Data with CloudWatch Logs Insights
Amazon CloudWatch Logs Insights Sample Queries
How do I analyze my Amazon S3 server access logs using Athena?
- Crie uma política de ciclo de vida do S3 para o bucket de logs de acesso ao seu servidor.
Configure a política de ciclo de vida para remover periodicamente os arquivos de log.
Esse procedimento reduz a quantidade de dados que o Athena analisa em cada consulta
How Do I Create a Lifecycle Policy for an S3 Bucket?
Faça revisões regularmente
Using Amazon CloudWatch Dashboards
- Inspecione as tendências nas métricas: Compare os valores das métricas com os valores históricos para ver se há tendências que possam indicar algo que precise de investigação. Veja alguns exemplos: aumento da latência, diminuição da função principal de negócios e aumento das respostas a falhas
- Verifique se há exceções ou anomalias em suas métricas: As médias ou os valores medianos podem mascarar as exceções. Examine os valores mais altos e mais baixos durante o período e investigue as causas das pontuações extremas. À medida que você continua a eliminar essas causas, a redução da definição de extremo permite melhorar cada vez mais a consistência da performance da carga de trabalho
- Procure mudanças bruscas no comportamento: Uma mudança imediata na quantidade ou na direção de uma métrica pode indicar que houve uma alteração no aplicativo ou talvez você precise de fatores externos para adicionar outras métricas para acompanhar
Monitore o rastreamento completo das solicitações por meio do seu sistema
What is AWS X-Ray?
Debugging with Amazon CloudWatch Synthetics and AWS X-Ray