Quero solucionar problemas de logs do Amazon CloudWatch que não conseguem ser exportados para buckets do Amazon Simple Storage Service (Amazon S3).
Resolução
Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Solucione problemas com seus registros que não conseguem ser exportados para buckets do Amazon S3 com base na falha quando ou depois de você criar a tarefa de exportação.
Na criação da tarefa de exportação
Para solucionar problemas de tarefas que falham ao criá-las, execute as seguintes ações:
- Região da AWS: confirme se seus fluxos de log e buckets do S3 do CloudWatch Logs estão na mesma região.
- Políticas de bucket do Amazon S3: por padrão, os buckets e objetos do Amazon S3 são privados. O proprietário do recurso tem acesso somente ao bucket e aos objetos no bucket. Para obter mais informações, consulte a Etapa 3: definir as permissões em um bucket do S3.
- Prefixos de bucket do Amazon S3: quando você define a política de bucket do S3, é uma prática recomendada incluir uma string gerada aleatoriamente como prefixo do bucket. Se você usar um prefixo, deverá especificar a string gerada aleatoriamente nas configurações de prefixo do bucket do S3 ao criar a tarefa de exportação. Se você não especificar a string gerada, a criação da tarefa de exportação falhará.
- Políticas do AWS Identity and Access Management (IAM): confirme se o usuário ou a função do AWS Identity and Access Management (IAM) que criou a tarefa de exportação tem acesso ao Amazon S3 e ao CloudWatch Logs. Para obter mais informações, consulte a Etapa 2: configurar as permissões de acesso.
- Verifique os registros do CloudTrail: pesquise o evento CreateExportTask no AWS CloudTrail para identificar a mensagem de erro. CreateExportTask é uma operação assíncrona. Se você fornecer todas as informações necessárias, uma tarefa de exportação será iniciada e retornará o ID da tarefa. Quando a tarefa começar, use DescribeExportTasks para verificar o status. Para obter mais informações, consulte Erros.
- Cotas de recursos: a cota de serviço do CloudWatch Logs permite somente uma tarefa de exportação em execução ou pendente por conta por região. Você não pode alterar essa cota. Verifique se você está na cota permitida.
- Tipo de criptografia do lado do servidor: certifique-se de usar uma criptografia compatível do lado do servidor para seus buckets do Amazon S3. As criptografias aceitas incluem o Advanced Encryption Standard (AES) -256 e a criptografia do lado do servidor que tem chaves do AWS Key Management Service (AWS KMS). Essas criptografias aceitas são conhecidas como SSE-KMS.
Após a criação da tarefa de exportação
Para solucionar problemas de tarefas que falham depois de criá-las, verifique a configuração do intervalo de tempo. Se você exportar fluxos de log com grandes quantidades de dados e especificar um longo intervalo de tempo, a tarefa de exportação poderá falhar. Para resolver esse problema, configure intervalos de tempo mais curtos para exportar fluxos de logs com menores quantidades de dados.
Para verificar o status da configuração do intervalo de tempo, execute o seguinte comando describe-export-tasks da AWS CLI:
aws logs describe-export-tasks --task-id example-task-id
Observação: insira seu ID de tarefa no lugar de example-task-id.
Para exportar dados para o Amazon S3, execute o seguinte comando create-export-task da AWS CLI:
aws logs create-export-task --task-name "example-task-name" --log-group-name "/aws/lambda/example-log-group-name" --destination "example-bucket-name --from 1710378735 --to 1710465135
Observação: insira o nome da tarefa no lugar de example-task-name. Insira o nome do grupo de logs no lugar de example-log-group-name. Insira seu bucket de destino no lugar de example-bucket-name.
Para verificar o status da tarefa de exportação, execute o seguinte comando describe-export-tasks da AWS CLI:
aws logs describe-export-tasks --task-id example-task-id
Observação: insira seu ID de tarefa no lugar de example-task-id.
Os logs podem levar até 12 horas para serem disponibilizados para exportação. A tarefa de exportação também pode levar algumas horas para ser processada. Esse processo depende do tamanho dos dados que você exporta. É uma prática recomendada usar filtros de assinatura em nível de grupo de logs para processar em tempo real ou arquivar continuamente novos dados no Amazon S3. Para obter mais informações, consulte Real-time processing of log data with subscriptions.
Informações relacionadas
Eu configurei o Amazon CloudWatch para exportar dados de log para o Amazon S3, mas os dados de log estão ausentes ou são inválidos. Como faço para resolver isso?
Como posso recuperar dados de log do Amazon CloudWatch Logs?
Exportação de dados do log para o Amazon S3