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á.
Fazer streaming de informações de integridade do ambiente do Elastic Beanstalk para o Amazon CloudWatch Logs
Se você habilitar o relatório de integridade avançada para seu ambiente, poderá configurar o ambiente para fazer streaming de informações de integridade para o CloudWatch Logs. Esse streaming é independente do streaming de logs de instância do Amazon EC2. Este tópico descreve o processo de streaming de informações de integridade do ambiente. Para obter mais informações sobre streaming de logs de instância, consulte Usar o Elastic Beanstalk com o Amazon CloudWatch Logs.
Quando você configura o streaming de integridade do ambiente, o Elastic Beanstalk cria um grupo de logs do CloudWatch Logs para a integridade do ambiente. O nome do grupo de logs é /aws/elasticbeanstalk/
. Dentro desse grupo de logs, o Elastic Beanstalk cria streams de logs denominados environment-name
/environment-health.log
(pode haver mais de um stream de logs por data).YYYY-MM-DD
#<hash-suffix>
Quando o status de integridade do ambiente é alterado, o Elastic Beanstalk adiciona um registro ao stream de logs de integridade. O registro representa a transição do status de integridade – o novo status e uma descrição do motivo da alteração. Por exemplo, o status de um ambiente pode se alterar para Grave porque o load balancer está falhando. Para obter uma descrição do status de integridade avançada, consulte Status e cores de integridade.
Pré-requisitos para fazer streaming da integridade do ambiente para o CloudWatch Logs
Para habilitar o streaming de integridade do ambiente para o CloudWatch Logs, é necessário atender às seguintes condições:
-
Plataforma: você precisa usar uma versão de plataforma compatível com os relatórios de integridade aprimorada.
-
Permissões: é necessário conceder determinadas permissões relacionadas ao registro em log ao Elastic Beanstalk para que ele possa atuar em seu nome com o objetivo de fazer streaming de informações de integridade do ambiente. Se o ambiente não estiver usando uma função de serviço criada pelo Elastic Beanstalk para ele,
aws-elasticbeanstalk-service-role
ou a função vinculada ao serviço de sua conta,AWSServiceRoleForElasticBeanstalk
, lembre-se de adicionar as permissões a seguir à sua função de serviço personalizada.{ "Effect": "Allow", "Action": [ "logs:DescribeLogStreams", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/elasticbeanstalk/*:log-stream:*" }
Fazer streaming de logs de integridade do ambiente para o CloudWatch Logs
É possível habilitar o streaming de integridade do ambiente para o CloudWatch Logs usando o console do Elastic Beanstalk, a CLI do EB ou as opções de configuração.
Fazer streaming de logs de integridade do ambiente usando o console do Elastic Beanstalk
Como fazer streaming de logs de integridade do ambiente para o CloudWatch Logs
Abra o console do Elastic Beanstalk
e, na lista Regions (Regiões), selecione a sua Região da AWS. -
No painel de navegação, selecione Ambientes e selecione o nome do ambiente na lista.
nota
Se você tiver muitos ambientes, use a barra de pesquisa para filtrar a lista de ambientes.
No painel de navegação, escolha Configuration (Configuração).
-
Na categoria de configuração Monitoring (Monitoramento), escolha Edit (Editar).
-
Em Health reporting (Relatório de integridade), verifique se System (Sistema) está definido como Enhanced (Avançado).
-
Em Health event streaming to CloudWatch Logs (Streaming de eventos de integridade para o CloudWatch Logs)
-
Ative Log streaming (Streaming de logs).
-
Defina Retention (Retenção) com o número de dias para salvar os logs.
-
Selecione a configuração Lifecycle (Ciclo de vida) que determina se os logs devem ser salvos depois que o ambiente é encerrado.
-
-
Para salvar as alterações, escolha Apply (Aplicar) na parte inferior da página.
Depois de ativar o streaming de logs, você poderá voltar para a categoria ou a página de configuração Monitoring (Monitoramento) para encontrar o link Log Group (Grupo de logs). Clique neste link para ver os logs de integridade do ambiente no console do CloudWatch.
Streaming de logs de integridade do ambiente usando a EB CLI
Para habilitar o streaming de logs de integridade do ambiente para o CloudWatch Logs usando a CLI do EB, use o comando eb logs.
$ eb logs --cloudwatch-logs enable --cloudwatch-log-source environment-health
Você também pode usar eb logs para recuperar logs do CloudWatch Logs. Por exemplo, o comando a seguir recupera todos os logs de integridade para seu ambiente e os salva em um diretório em .elasticbeanstalk/logs
.
$ eb logs --all --cloudwatch-log-source environment-health
Streaming de logs de integridade do ambiente usando arquivos de configuração
Ao criar ou atualizar um ambiente, você pode usar um arquivo de configuração para definir e configurar o streaming de logs de integridade do ambiente para o CloudWatch Logs. Para usar o exemplo abaixo, copie o texto em um arquivo com a extensão .config
no diretório .ebextensions
, no nível superior do pacote de origem de seu aplicativo. O exemplo configura o Elastic Beanstalk para habilitar o streaming de logs de integridade do ambiente, manter os logs depois de encerrar o ambiente e salvá-los por 30 dias.
exemplo Arquivo de configuração de streaming de integridade
############################################################################ ## Sets up Elastic Beanstalk to stream environment health information ## to Amazon CloudWatch Logs. ## Works only for environments that have enhanced health reporting enabled. ############################################################################ option_settings: aws:elasticbeanstalk:cloudwatch:logs:health: HealthStreamingEnabled: true ### Settings below this line are optional. # DeleteOnTerminate: Delete the log group when the environment is # terminated. Default is false. If false, the health data is kept # RetentionInDays days. DeleteOnTerminate: false # RetentionInDays: The number of days to keep the archived health data # before it expires, if DeleteOnTerminate isn't set. Default is 7 days. RetentionInDays: 30
Sobre opções padrão e valores válidos, consulte aws:elasticbeanstalk:cloudwatch:logs:health.