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
Abra o console em https://console.aws.amazon.com/ecs/v2
. -
No painel de navegação, escolha Clusters e, em seguida, selecione o cluster .
-
Escolha a guia Configuração.
-
Na seção Logs de ações, selecione Adicionar.
-
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/e um período de retenção de 7 dias.cluster-name -
-
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
-
Registre a fonte de entrega executando o seguinte comando:
aws logs put-delivery-source \ --namemy-ecs-action-logs\ --resource-arn arn:aws:ecs:region:account-id:cluster/cluster-name\ --log-type EcsActionLogs -
Configure o destino de entrega executando o seguinte comando:
aws logs put-delivery-destination \ --namemy-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"}' -
Crie a entrega para vincular a origem ao destino executando o seguinte comando:
aws logs create-delivery \ --delivery-source-namemy-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
-
Acione uma ação no seu cluster. Por exemplo, crie ou atualize um serviço daemon.
-
Abra o console do CloudWatch, em https://console.aws.amazon.com/cloudwatch/.
-
No painel de navegação, escolha Grupos de logs.
-
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
-
Exclua a entrega executando o seguinte comando:
aws logs delete-delivery \ --delivery-iddelivery-id -
Exclua a fonte de entrega executando o seguinte comando:
aws logs delete-delivery-source \ --namemy-ecs-action-logs -
Exclua o destino de entrega executando o seguinte comando:
aws logs delete-delivery-destination \ --namemy-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: