Como soluciono erros relacionados à transmissão do CloudWatch para um ambiente do Elastic Beanstalk?

2 minuto de leitura
0

Quero solucionar erros relacionados à transmissão do Amazon CloudWatch para um ambiente do AWS Elastic Beanstalk.

Breve descrição

Transmitir os seus logs para o CloudWatch pode ajudar a proteger os seus dados. Por exemplo, se o ambiente Elastic Beanstalk sofrer o encerramento de uma instância do Elastic Compute Cloud (Amazon EC2), você ainda poderá recuperar os logs do CloudWatch. Você também pode usar a rotação de logs para se proteger contra perda de dados.

Se os logs de instância do ambiente não estiverem sendo transmitidos para o CloudWatch mesmo depois da ativação da transmissão dos logs, você deverá analisar os seguintes problemas comuns:

  • A função do seu perfil de instância do IAM não tem as permissões necessárias do IAM.
  • Você iniciou o ambiente em uma região da AWS que não é compatível com o CloudWatch Logs.
  • Um dos arquivos de log personalizados não existe no caminho que você especificou.

Resolução

1.    Verifique se a função do seu perfil de instância do ambiente do Elastic Beanstalk tem as seguintes permissões:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:CreateLogStream",
        "logs:PutLogEvents",
        "logs:DescribeLogGroups",
        "logs:DescribeLogStreams"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}

2.    Se você estiver transmitindo logs personalizados, use um arquivo de configuração para instalar diretamente o agente do CloudWatch Logs e configurar os arquivos. Além disso, você deve verificar o formato e a indentação desse arquivo de configuração. Para obter mais informações a transmisão de fluxo de logs personalizados para o CloudWatch, consulte o exemplo de arquivo de configuração.

3.    Verifique o status e os logs do agente do CloudWatch para descobrir as causas dos problemas de transmissão de logs.

Para verificar o status e os logs do antigo agente do CloudWatch (awslogsd):

  • status do agente: systemctl status awslogsd.service
  • localização do registro do agente: /var/log/awslogs.log

Para verificar o status e os logs mais recentes do agente do CloudWatch (amazon-cloudwatch-agent):

  • status do agente: systemctl status amazon-cloudwatch-agent.service
  • localização dos logs do agente: /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log

Para obter mais informações sobre como personalizar arquivos de log no Elastic Beanstalk, consulte Como posso personalizar os arquivos de log no Elastic Beanstalk?


Informações relacionadas

Usar o Amazon CloudWatch Logs com o AWS Elastic Beanstalk

logs-streamtocloudwatch-linux.config

AWS OFICIAL
AWS OFICIALAtualizada há um ano