Monitorando implantações com AWS CloudTrail - AWS CodeDeploy

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á.

Monitorando implantações com AWS CloudTrail

CodeDeploy é integrado com CloudTrail, um serviço que captura chamadas de API feitas por ou em nome de CodeDeploy sua AWS conta e entrega os arquivos de log para um bucket do Amazon S3 que você especificar. CloudTrailcaptura chamadas de API do CodeDeploy console, de CodeDeploy comandos por meio do ou AWS CLI diretamente das CodeDeploy APIs. Usando as informações coletadas por CloudTrail, você pode determinar para qual solicitação foi feita CodeDeploy, o endereço IP de origem a partir do qual a solicitação foi feita, quem fez a solicitação, quando ela foi feita e assim por diante. Para saber mais sobre CloudTrail, inclusive como configurá-lo e ativá-lo, consulte o Guia AWS CloudTrail do usuário.

CodeDeploy informações em CloudTrail

Quando o CloudTrail registro está ativado em sua AWS conta, as chamadas de API feitas para CodeDeploy ações são rastreadas em arquivos de log. CodeDeploy os registros são gravados junto com outros registros AWS de serviço em um arquivo de log. CloudTrail determina quando criar e gravar em um novo arquivo com base no período e no tamanho do arquivo.

Todas as CodeDeploy ações são registradas e documentadas na Referência da Linha de AWS CodeDeploy Comando e na Referência da AWS CodeDeploy API. Por exemplo, chamadas para criar implantações, excluir aplicativos e registrar revisões de aplicativos geram entradas em arquivos de CloudTrail log.

Cada entrada de log contém informações sobre quem gerou a solicitação. As informações de identidade do usuário no registro ajudam a determinar se a solicitação foi feita com credenciais raiz ou de usuário, com credenciais de segurança temporárias para uma função ou usuário federado ou por outro serviço. AWS Para obter mais informações, consulte o campo userIdentity na referência do CloudTrail evento.

Você pode armazenar os arquivos de log no bucket pelo tempo que desejar, mas também pode definir regras do ciclo de vida do Amazon S3 para arquivar ou excluir os arquivos de log automaticamente. Por padrão, a criptografia do lado do servidor (SSE) do Amazon S3 é usada para criptografar seus arquivos de log.

Você pode CloudTrail publicar notificações do Amazon SNS quando novos arquivos de log forem entregues. Para obter mais informações, consulte Configuração de notificações do Amazon SNS para. CloudTrail

Você também pode agregar arquivos de CodeDeploy log de várias AWS regiões e várias AWS contas em um único bucket do Amazon S3. Para obter mais informações, consulte Recebimento de arquivos de CloudTrail log de várias regiões.

Entendendo as entradas do arquivo de CodeDeploy log

CloudTrail os arquivos de log podem conter uma ou mais entradas de log, em que cada entrada é composta por vários eventos formatados em JSON. Uma entrada de log representa uma única solicitação de qualquer origem e inclui informações sobre a ação solicitada, quaisquer parâmetros, a data e hora da ação e assim por diante. Não é garantido que as entradas de log estejam em uma ordem específica. Ou seja, elas não são um rastreamento ordenado das chamadas de API públicas.

O exemplo a seguir mostra uma entrada de CloudTrail registro que demonstra a ação de CodeDeploy criar grupo de implantação:

{ "Records": [{ "eventVersion": "1.02", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE:203.0.113.11", "arn": "arn:aws:sts::123456789012:assumed-role/example-role/203.0.113.11", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2014-11-27T03:57:36Z" }, "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:role/example-role", "accountId": "123456789012", "userName": "example-role" } } }, "eventTime": "2014-11-27T03:57:36Z", "eventSource": "codedeploy.amazonaws.com", "eventName": "CreateDeploymentGroup", "awsRegion": "us-west-2", "sourceIPAddress": "203.0.113.11", "userAgent": "example-user-agent-string", "requestParameters": { "applicationName": "ExampleApplication", "serviceRoleArn": "arn:aws:iam::123456789012:role/example-instance-group-role", "deploymentGroupName": "ExampleDeploymentGroup", "ec2TagFilters": [{ "value": "CodeDeployDemo", "type": "KEY_AND_VALUE", "key": "Name" }], "deploymentConfigName": "CodeDeployDefault.HalfAtATime" }, "responseElements": { "deploymentGroupId": "7d64e680-e6f4-4c07-b10a-9e117EXAMPLE" }, "requestID": "86168559-75e9-11e4-8cf8-75d18EXAMPLE", "eventID": "832b82d5-d474-44e8-a51d-093ccEXAMPLE", "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }, ... additional entries ... ] }