View a markdown version of this page

Introdução aos Logs de ações do Amazon ECS - Amazon Elastic Container Service

Introdução aos Logs de ações do Amazon ECS

Os Logs de ações do Amazon ECS utilizam o mecanismo de entrega de logs do Amazon CloudWatch Logs para publicar registros detalhados das ações do serviço no destino de sua preferência. Ao habilitar Logs de ações, você pode visualizar todas as etapas realizadas pelo Amazon ECS durante as implantações e operações de daemons, incluindo o provisionamento da infraestrutura, o registro de recursos e os detalhes de falhas. Essa visibilidade ajuda você a resolver problemas sem precisar entrar em contato com o AWS Support e reduz o tempo necessário para identificar as causas principais. Você pode habilitar os Logs de ações dos seus clusters usando o console do Amazon ECS ou as APIs do Amazon CloudWatch Logs.

Pré-requisitos

Antes de habilitar os Logs de ações, verifique se sua identidade do IAM possui as permissões necessárias.

Permissões obrigatórias do IAM

Sua identidade no IAM deve ter as seguintes permissões para habilitar e gerenciar os Logs de ações:

{ "Effect": "Allow", "Action": [ "logs:PutDeliverySource", "logs:PutDeliveryDestination", "logs:CreateDelivery", "logs:GetDelivery", "ecs:AllowVendedLogDeliveryForResource" ], "Resource": "*" }

Política de recursos de destino

O grupo de logs do CloudWatch Logs de destino deve ter uma política de recursos que permita que o serviço delivery.logs.amazonaws.com grave logs. Adicione a seguinte instrução à política de recursos do grupo de logs:

{ "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:region:account-id:log-group:log-group-name:log-stream:*" }

Habilitar Logs de ações usando o console do Amazon ECS

É possível habilitar Logs de ações diretamente na página de detalhes do cluster no console do Amazon ECS.

Para habilitar Logs de ações usando o console
  1. Abra o console em https://console.aws.amazon.com/ecs/v2.

  2. No painel de navegação, escolha Clusters e, em seguida, selecione o cluster .

  3. Escolha a guia Configuração.

  4. Na seção Logs de ações, selecione Adicionar.

  5. Em Destination, escolha uma das seguintes opções:

    • CloudWatch Logs (padrão)

    • Amazon S3

    • Amazon Data Firehose

    Para o Amazon CloudWatch Logs, o Amazon ECS cria um grupo de logs padrão /aws/vendedlogs/ecs/action-logs/cluster-name e um período de retenção de 7 dias.

  6. Escolha Salvar.

Habilitar Logs de ações usando as APIs do CloudWatch Logs

É possível habilitar Logs de ações programaticamente, utilizando as APIs de entrega de logs fornecidas pelo CloudWatch Logs. Para essa abordagem, são necessárias três etapas: registrar a fonte de entrega, configurar o destino e criar a entrega.

Para habilitar Logs de ações usando a AWS CLI
  1. Registre a fonte de entrega executando o seguinte comando:

    aws logs put-delivery-source \ --name my-ecs-action-logs \ --resource-arn arn:aws:ecs:region:account-id:cluster/cluster-name \ --log-type EcsActionLogs
  2. Configure o destino de entrega executando o seguinte comando:

    aws logs put-delivery-destination \ --name my-ecs-logs-destination \ --output-format json \ --delivery-destination-configuration '{"destinationResourceArn": "arn:aws:logs:region:account-id:log-group:/aws/vendedlogs/ecs/action-logs/cluster-name"}'
  3. Crie a entrega para vincular a origem ao destino executando o seguinte comando:

    aws logs create-delivery \ --delivery-source-name my-ecs-action-logs \ --delivery-destination-arn arn:aws:logs:region:account-id:delivery-destination:my-ecs-logs-destination

Verificar a entrega de logs

Depois de habilitar os Logs de ações, verifique se os logs estão sendo enviados ao destino.

Para verificar a entrega de logs
  1. Acione uma ação no seu cluster. Por exemplo, crie ou atualize um serviço daemon.

  2. Abra o console do CloudWatch, em https://console.aws.amazon.com/cloudwatch/.

  3. No painel de navegação, escolha Grupos de logs.

  4. Selecione seu grupo de logs dos Action Logs e verifique se novos fluxos de logs aparecem.

Excluir Logs de ações

É possível excluir Logs de ações usando a AWS CLI ou o console do Amazon ECS.

Para excluir Logs de ações, sua identidade do IAM deve ter as seguintes permissões adicionais:

{ "Effect": "Allow", "Action": [ "logs:DeleteDelivery", "logs:DeleteDeliverySource", "logs:DeleteDeliveryDestination" ], "Resource": "*" }
Para excluir Logs de ações usando a AWS CLI
  1. Exclua a entrega executando o seguinte comando:

    aws logs delete-delivery \ --delivery-id delivery-id
  2. Exclua a fonte de entrega executando o seguinte comando:

    aws logs delete-delivery-source \ --name my-ecs-action-logs
  3. Exclua o destino de entrega executando o seguinte comando:

    aws logs delete-delivery-destination \ --name my-ecs-logs-destination

Para excluir Logs de ações com o console, navegue até a página de detalhes do cluster, escolha a guia Configuração e depois Excluir na seção Logs de ações.

Próximas etapas

Depois de habilitar Logs de ações, utilize os seguintes recursos para monitorar e solucionar problemas em seus clusters do Amazon ECS: