Eventos do Amazon ECS
O Amazon ECS envia os seguintes tipos de eventos para o Eventbridge: eventos de alteração de estado da instância de contêiner, eventos de alteração de estado de tarefas, eventos de ação de serviços e eventos de alteração de estado de implantação. Se esses recursos forem alterados, um evento será gerado. Esses eventos e as causas possíveis serão descritos com mais detalhes nas seções a seguir.
O Amazon ECS pode adicionar outros tipos de evento, origens e detalhes, no futuro. Caso você desserializando dados JSON do evento no código, certifique-se de que a aplicação esteja preparada para lidar com propriedades desconhecidas a fim de evitar problemas se e quando essas propriedades adicionais forem adicionadas.
Em alguns casos, vários eventos são gerados para a mesma atividade. Por exemplo, quando uma tarefa é iniciada em uma instância de contêiner, um evento de alteração do estado da tarefa é gerado para a nova tarefa. Um evento de alteração de estado da instância de contêiner é gerado para compensar a alteração nos recursos disponíveis, como CPU, memória, portas disponíveis, na instância de contêiner. Da mesma forma, caso uma instância de contêiner seja terminada, os eventos são gerados para a instância de contêiner, o status da conexão do agente de contêiner e cada tarefa que estava em execução na instância de contêiner.
Os eventos de alteração de estado de contêiner e os eventos de alteração de estado de tarefas contêm dois campos version
; um no corpo principal do evento e um no objeto detail
do evento. Veja a seguir uma descrição das diferenças entre esses dois campos.
-
O campo
version
no corpo principal do evento é definido como0
em todos os eventos. Para obter mais informações sobre os parâmetros do Eventbridge, consulte Eventos e padrões de eventos no Guia do usuário do Amazon EventBridge. -
O campo
version
no objetodetail
do evento descreve a versão do recurso associado. Sempre que um recurso muda de estado, essa versão é incrementada. Como os eventos podem ser enviados várias vezes, esse campo permite identificar eventos duplicados. Eventos duplicados têm a mesma versão no objetodetail
. Caso você esteja replicando o estado da tarefa e da instância de contêiner do Amazon ECS com o Eventbridge, poderá comparar a versão de um recurso relatado pelas APIs do Amazon ECS com a versão relatada no Eventbridge para o recurso (dentro do objetodetail
) para verificar se a versão na sequência de eventos é atual.
Os eventos de ação de serviços contêm apenas o campo version
no corpo principal.
Apresentaremos exemplos mais adiante neste tópico. Para obter outras informações sobre como integrar o Amazon ECS e o EventBridge, consulte Integrating Amazon EventBridge and Amazon ECS
Eventos de alteração no estado da instância de contêiner
Os seguintes cenários causam eventos de alteração de estado da instância de contêiner:
- As operações de API
StartTask
,RunTask
ouStopTask
são chamadas diretamente ou com o AWS Management Console ou os SDKs. -
A realização ou a parada de tarefas em uma instância de contêiner modifica os recursos disponíveis na instância de contêiner, como CPU, memória e portas disponíveis.
- O programador de serviços do Amazon ECS inicia ou interrompe uma tarefa.
-
A realização ou a parada de tarefas em uma instância de contêiner modifica os recursos disponíveis na instância de contêiner, como CPU, memória e portas disponíveis.
- O agente de contêiner do Amazon ECS chama a operação da API
SubmitTaskStateChange
com um statusSTOPPED
para uma tarefa com um status desejado deRUNNING
. -
O agente de contêiner do Amazon ECS monitora o estado de tarefas nas instâncias de contêiner e relata todas as alterações ocorridas no estado. Caso uma tarefa que deveria ser
RUNNING
seja transicionada paraSTOPPED
, o agente libera os recursos que foram alocados para a tarefa parada, como CPU, memória e portas disponíveis. - O registro da instância de contêiner é cancelado com a operação da API
DeregisterContainerInstance
diretamente, com o AWS Management Console ou os SDKs. -
O cancelamento do registro de uma instância de contêiner altera o status da instância de contêiner e o status de conexão do agente de contêiner do Amazon ECS.
- Uma tarefa foi parada quando a instância do EC2 tiver sido interrompida.
-
Quando você para uma instância de contêiner, as tarefas em execução nela são transicionadas para o status
STOPPED
. - O agente de contêiner do Amazon ECS registra uma instância de contêiner pela primeira vez.
-
A primeira vez em que o agente de contêiner do Amazon ECS registra uma instância de contêiner (na inicialização ou quando executado pela primeira vez manualmente) faz com que seja criado um evento de alteração do estado para a instância.
- O agente de contêiner do Amazon ECS se conecta ou se desconecta do Amazon ECS.
-
Quando o agente de contêiner do Amazon ECS se conecta ou se desconecta do backend do Amazon ECS, ele altera o status
agentConnected
da instância de contêiner.nota O agente de contêiner do Amazon ECS se desconecta e se reconecta várias vezes por hora como parte da sua operação normal. Portanto, devem ser esperados eventos de conexão do agente. Esses eventos não são uma indicação de que há um problema com o agente de contêiner ou sua instância de contêiner.
- Você faz o upgrade do agente de contêiner do Amazon ECS em uma instância.
-
Os detalhes da instância de contêiner contêm um objeto para a versão do agente de contêiner. Caso você atualize o agente, essas informações da versão mudam e geram um evento.
exemplo Evento de alteração no estado da instância de contêiner
Os eventos de alteração do estado da instância de contêiner são entregues no formato a seguir. A seção detail
a seguir se assemelha ao objeto ContainerInstance retornado de uma operação de API DescribeContainerInstances na Referência da API do Amazon Elastic Container Service. Para obter mais informações sobre os parâmetros do Eventbridge, consulte Eventos e padrões de eventos no Guia do usuário do Amazon EventBridge.
{
"version": "0",
"id": "8952ba83-7be2-4ab5-9c32-6687532d15a2",
"detail-type": "ECS Container Instance State Change",
"source": "aws.ecs",
"account": "111122223333",
"time": "2016-12-06T16:41:06Z",
"region": "us-east-1",
"resources": [
"arn:aws:ecs:us-east-1:111122223333:container-instance/b54a2a04-046f-4331-9d74-3f6d7f6ca315"
],
"detail": {
"agentConnected": true,
"attributes": [
{
"name": "com.amazonaws.ecs.capability.logging-driver.syslog"
},
{
"name": "com.amazonaws.ecs.capability.task-iam-role-network-host"
},
{
"name": "com.amazonaws.ecs.capability.logging-driver.awslogs"
},
{
"name": "com.amazonaws.ecs.capability.logging-driver.json-file"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.17"
},
{
"name": "com.amazonaws.ecs.capability.privileged-container"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.18"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.19"
},
{
"name": "com.amazonaws.ecs.capability.ecr-auth"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.20"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.21"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.22"
},
{
"name": "com.amazonaws.ecs.capability.docker-remote-api.1.23"
},
{
"name": "com.amazonaws.ecs.capability.task-iam-role"
}
],
"clusterArn": "arn:aws:ecs:us-east-1:111122223333:cluster/default",
"containerInstanceArn": "arn:aws:ecs:us-east-1:111122223333:container-instance/b54a2a04-046f-4331-9d74-3f6d7f6ca315",
"ec2InstanceId": "i-f3a8506b",
"registeredResources": [
{
"name": "CPU",
"type": "INTEGER",
"integerValue": 2048
},
{
"name": "MEMORY",
"type": "INTEGER",
"integerValue": 3767
},
{
"name": "PORTS",
"type": "STRINGSET",
"stringSetValue": [
"22",
"2376",
"2375",
"51678",
"51679"
]
},
{
"name": "PORTS_UDP",
"type": "STRINGSET",
"stringSetValue": []
}
],
"remainingResources": [
{
"name": "CPU",
"type": "INTEGER",
"integerValue": 1988
},
{
"name": "MEMORY",
"type": "INTEGER",
"integerValue": 767
},
{
"name": "PORTS",
"type": "STRINGSET",
"stringSetValue": [
"22",
"2376",
"2375",
"51678",
"51679"
]
},
{
"name": "PORTS_UDP",
"type": "STRINGSET",
"stringSetValue": []
}
],
"status": "ACTIVE",
"version": 14801,
"versionInfo": {
"agentHash": "aebcbca",
"agentVersion": "1.13.0",
"dockerVersion": "DockerVersion: 1.11.2"
},
"updatedAt": "2016-12-06T16:41:06.991Z"
}
}
Eventos de alteração no estado da tarefa
Os seguintes cenários causam eventos de alteração do estado da tarefa:
- As operações de API
StartTask
,RunTask
ouStopTask
são chamadas diretamente ou com o AWS Management Console,AWS CLI ou os SDKs. -
A inicialização ou a parada de tarefas cria novos recursos de tarefa ou modifica o estado de recursos da tarefa existente.
- O programador de serviços do Amazon ECS inicia ou interrompe uma tarefa.
-
A inicialização ou a parada de tarefas cria novos recursos de tarefa ou modifica o estado de recursos da tarefa existente.
- O agente de contêiner do Amazon ECS chama a operação da API
SubmitTaskStateChange
. -
O agente de contêiner do Amazon ECS monitora o estado das tarefas nas instâncias de contêiner e relata todas as alterações ocorridas no estado. Alterações de estado podem incluir mudanças de
PENDING
paraRUNNING
ou deRUNNING
paraSTOPPED
.
- O cancelamento do registro de instância de contêiner subjacente é cancelado com a operação de API
DeregisterContainerInstance
e o sinalizadorforce
, seja diretamente ou com o AWS Management Console ou os SDKs. -
O cancelamento do registro de uma instância de contêiner altera o status da instância de contêiner e o status de conexão do agente de contêiner do Amazon ECS. Caso as tarefas estejam em execução na instância de contêiner, o sinalizador
force
deve ser definido para permitir o cancelamento do registro. Isso para todas as tarefas na instância. - A instância de contêiner subjacente é parada ou encerrada.
-
Quando você para ou encerra uma instância de contêiner, as tarefas em execução nela são transicionadas para o status
STOPPED
. - Um contêiner na tarefa muda de estado.
-
O agente de contêiner do Amazon ECS monitora o estado dos contêineres dentro das tarefas. Por exemplo, caso um contêiner em execução dentro de uma tarefa seja interrompido, essa alteração no estado do contêiner gera um evento.
- Uma tarefa que utiliza o fornecedor de capacidade do Fargate Spot recebe um aviso de término.
-
Quando uma tarefa está usando o provedor de capacidade do
FARGATE_SPOT
e é interrompida devido a uma interrupção do Spot, um evento de alteração de estado da tarefa é gerado.
exemplo Evento de alteração no estado da tarefa
Os eventos de alteração do estado da tarefa são entregues no formato a seguir. A seção detail
a seguir se assemelha ao objeto da tarefa retornado de uma operação de API DescribeTasks na operação da API na Referência da API do Amazon Elastic Container Service. Se os contêineres estiverem usando uma imagem hospedada com o Amazon ECR, será retornado o campo imageDigest
.
Os valores para os campos createdAt
, connectivityAt
, pullStartedAt
, startedAt
, pullStoppedAt
e updatedAt
são time stamps UNIX na resposta de uma ação DescribeTasks
, enquanto no evento de alteração de estado da tarefa, eles são time stamps de string ISO.
Para obter mais informações, parâmetros do CloudWatch Events, consulte Eventos e padrões de eventos no Guia do usuário do Amazon EventBridge.
{
"version": "0",
"id": "3317b2af-7005-947d-b652-f55e762e571a",
"detail-type": "ECS Task State Change",
"source": "aws.ecs",
"account": "111122223333
",
"time": "2020-01-23T17:57:58Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:task/FargateCluster
/c13b4cb40f1f4fe4a2971f76ae5a47ad"
],
"detail": {
"attachments": [
{
"id": "1789bcae-ddfb-4d10-8ebe-8ac87ddba5b8",
"type": "eni",
"status": "ATTACHED",
"details": [
{
"name": "subnetId",
"value": "subnet-abcd1234
"
},
{
"name": "networkInterfaceId",
"value": "eni-abcd1234
"
},
{
"name": "macAddress",
"value": "0a:98:eb:a7:29:ba
"
},
{
"name": "privateIPv4Address",
"value": "10.0.0.139
"
}
]
}
],
"availabilityZone": "us-west-2c",
"clusterArn": "arn:aws:ecs:us-west-2:111122223333
:cluster/FargateCluster
",
"containers": [
{
"containerArn": "arn:aws:ecs:us-west-2:111122223333:container/cf159fd6-3e3f-4a9e-84f9-66cbe726af01",
"lastStatus": "RUNNING",
"name": "FargateApp
",
"image": "111122223333.dkr.ecr.us-west-2.amazonaws.com/hello-repository
:latest",
"imageDigest": "sha256:74b2c688c700ec95a93e478cdb959737c148df3fbf5ea706abe0318726e885e6
",
"runtimeId": "ad64cbc71c7fb31c55507ec24c9f77947132b03d48d9961115cf24f3b7307e1e",
"taskArn": "arn:aws:ecs:us-west-2:111122223333:task/FargateCluster/c13b4cb40f1f4fe4a2971f76ae5a47ad",
"networkInterfaces": [
{
"attachmentId": "1789bcae-ddfb-4d10-8ebe-8ac87ddba5b8",
"privateIpv4Address": "10.0.0.139
"
}
],
"cpu": "0"
}
],
"createdAt": "2020-01-23T17:57:34.402Z",
"launchType": "FARGATE",
"cpu": "256",
"memory": "512",
"desiredStatus": "RUNNING",
"group": "family:sample-fargate",
"lastStatus": "RUNNING",
"overrides": {
"containerOverrides": [
{
"name": "FargateApp"
}
]
},
"connectivity": "CONNECTED",
"connectivityAt": "2020-01-23T17:57:38.453Z",
"pullStartedAt": "2020-01-23T17:57:52.103Z",
"startedAt": "2020-01-23T17:57:58.103Z",
"pullStoppedAt": "2020-01-23T17:57:55.103Z",
"updatedAt": "2020-01-23T17:57:58.103Z",
"taskArn": "arn:aws:ecs:us-west-2:111122223333:task/FargateCluster
/c13b4cb40f1f4fe4a2971f76ae5a47ad",
"taskDefinitionArn": "arn:aws:ecs:us-west-2:111122223333:task-definition/sample-fargate:1",
"version": 4,
"platformVersion": "1.3.0"
}
}
Eventos de ação de serviço
O Amazon ECS envia eventos de ação de serviço com o tipo de detalhe ECS Service Action (Eventos de serviço do ECS). Ao contrário da instância de contêiner e dos eventos de alteração de estado da tarefa, os eventos de ação de serviços não incluem um número de versão no campo de resposta details
. Veja a seguir um padrão de evento que é usado para criar uma regra do Eventbridge para eventos de ação de serviços do Amazon ECS. Para obter mais informações, consulte Criar uma regra para o EventBridge no Guia do usuário do Amazon EventBridge.
{ "source": [ "aws.ecs" ], "detail-type": [ "ECS Service Action" ] }
O Amazon ECS envia eventos com os tipos de evento INFO
, WARN
e ERROR
. A seguir estão os eventos de ação de serviço.
Eventos de ação de serviço com tipo de evento INFO
SERVICE_STEADY_STATE
-
O serviço é saudável e no número desejado de tarefas, atingindo assim um estado estável. O programador de serviços relata o status periodicamente, portanto, você pode receber essa mensagem várias vezes.
TASKSET_STEADY_STATE
-
O conjunto de tarefas é saudável e no número desejado de tarefas, atingindo assim um estado estável.
CAPACITY_PROVIDER_STEADY_STATE
-
Um provedor de capacidade associado a um serviço atinge um estado estável.
SERVICE_DESIRED_COUNT_UPDATED
-
Quando o agendador de serviço atualiza a contagem desejada calculada para um serviço ou conjunto de tarefas. Esse evento não é enviado quando a contagem desejada é atualizada manualmente por um usuário.
Eventos de ação de serviço com tipo de evento WARN
SERVICE_TASK_START_IMPAIRED
-
O serviço não consegue iniciar tarefas com êxito de maneira consistente.
SERVICE_DISCOVERY_INSTANCE_UNHEALTHY
-
Um serviço que usa a descoberta de serviço contém uma tarefa não íntegra. O agendador de serviço detecta que uma tarefa dentro de um registro de serviço não está íntegra.
Eventos de ação de serviço com tipo de evento ERROR
SERVICE_DAEMON_PLACEMENT_CONSTRAINT_VIOLATED
-
Uma tarefa em um serviço que usa a estratégia do agendador de serviço
DAEMON
não atende mais à estratégia de restrição de posicionamento para o serviço. ECS_OPERATION_THROTTLED
-
O programador de serviço teve sua utilização controlada devido aos limites de controle de utilização da API do Amazon ECS.
SERVICE_DISCOVERY_OPERATION_THROTTLED
-
O agendador de serviço foi limitado devido aos limites de aceleração da API do AWS Cloud Map. Isto pode ocorrer em serviços configurados para usar a descoberta de serviço.
SERVICE_TASK_PLACEMENT_FAILURE
-
O agendador de serviço não consegue colocar uma tarefa. A causa será descrita no campo
reason
.Uma causa comum para esse evento de serviço que está sendo gerado é a falta de recursos no cluster para posicionar a tarefa. Por exemplo, não há capacidade suficiente de CPU ou memória nas instâncias de contêiner disponíveis ou não há nenhuma instância de contêiner disponível. Outra causa comum é quando o agente de contêiner do Amazon ECS é desconectado na instância de contêiner, fazendo com que o programador não consiga colocar a tarefa.
SERVICE_TASK_CONFIGURATION_FAILURE
-
O agendador de serviço não consegue colocar uma tarefa devido a um erro de configuração. A causa será descrita no campo
reason
.Uma causa comum da geração desse evento de serviço são etiquetas que estavam sendo aplicadas ao serviço, mas o usuário ou o perfil não aceitou o novo formato de nome do recurso da Amazon (ARN) na região. Para mais informações, consulte Nomes de recursos da Amazon (ARNs) e IDs. Outra causa comum é que o Amazon ECS não conseguiu assumir a função do IAM da tarefa fornecida.
exemplo Evento de estado estacionário do serviço
Os eventos de estado constante do serviço são entregues no formato seguinte. Para obter mais informações sobre os parâmetros do Eventbridge, consulte Eventos e padrões de eventos no Guia do usuário do Amazon EventBridge.
{
"version": "0",
"id": "af3c496d-f4a8-65d1-70f4-a69d52e9b584",
"detail-type": "ECS Service Action",
"source": "aws.ecs",
"account": "111122223333",
"time": "2019-11-19T19:27:22Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "INFO",
"eventName": "SERVICE_STEADY_STATE",
"clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default",
"createdAt": "2019-11-19T19:27:22.695Z"
}
}
exemplo Evento de estado estacionário do provedor de capacidade
Os eventos de estado constante do provedor de capacidade são entregues no formato a seguir.
{
"version": "0",
"id": "b9baa007-2f33-0eb1-5760-0d02a572d81f",
"detail-type": "ECS Service Action",
"source": "aws.ecs",
"account": "111122223333",
"time": "2019-11-19T19:37:00Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "INFO",
"eventName": "CAPACITY_PROVIDER_STEADY_STATE",
"clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default",
"capacityProviderArns": [
"arn:aws:ecs:us-west-2:111122223333:capacity-provider/ASG-tutorial-capacity-provider"
],
"createdAt": "2019-11-19T19:37:00.807Z"
}
}
exemplo Evento de início da tarefa de serviço com deficiência
Os eventos de início da tarefa de serviço com deficiência são entregues no formato a seguir.
{
"version": "0",
"id": "57c9506e-9d21-294c-d2fe-e8738da7e67d",
"detail-type": "ECS Service Action",
"source": "aws.ecs",
"account": "111122223333",
"time": "2019-11-19T19:55:38Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "WARN",
"eventName": "SERVICE_TASK_START_IMPAIRED",
"clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default",
"createdAt": "2019-11-19T19:55:38.725Z"
}
}
exemplo Evento de falha no posicionamento da tarefas de serviço
Os eventos de falha de posicionamento de tarefas de serviço são entregues no formato a seguir. Para obter mais informações sobre os parâmetros do Eventbridge, consulte Eventos e padrões de eventos no Guia do usuário do Amazon EventBridge.
No exemplo a seguir, a tarefa estava tentando usar o provedor de capacidade FARGATE_SPOT
, mas o programador de serviços não conseguiu adquirir nenhuma capacidade do Fargate Spot.
{
"version": "0",
"id": "ddca6449-b258-46c0-8653-e0e3a6d0468b",
"detail-type": "ECS Service Action",
"source": "aws.ecs",
"account": "111122223333",
"time": "2019-11-19T19:55:38Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "ERROR",
"eventName": "SERVICE_TASK_PLACEMENT_FAILURE",
"clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default",
"capacityProviderArns": [
"arn:aws:ecs:us-west-2:111122223333:capacity-provider/FARGATE_SPOT"
],
"reason": "RESOURCE:FARGATE",
"createdAt": "2019-11-06T19:09:33.087Z"
}
}
No exemplo a seguir para o tipo de execução do EC2, a tarefa tentou iniciar na instância de contêiner 2dd1b186f39845a584488d2ef155c131
, mas o programador de serviços não conseguiu colocar a tarefa devido a CPU insuficiente.
{
"version": "0",
"id": "ddca6449-b258-46c0-8653-e0e3a6d0468b",
"detail-type": "ECS Service Action",
"source": "aws.ecs",
"account": "111122223333",
"time": "2019-11-19T19:55:38Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "ERROR",
"eventName": "SERVICE_TASK_PLACEMENT_FAILURE",
"clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default",
"containerInstanceArns": [
"arn:aws:ecs:us-west-2:111122223333:container-instance/default/2dd1b186f39845a584488d2ef155c131"
],
"reason": "RESOURCE:CPU",
"createdAt": "2019-11-06T19:09:33.087Z"
}
}
Eventos de alteração do estado da implantação de serviço
O Amazon ECS envia eventos de estado de alteração de implantação de serviço com o tipo de detalhe ECS Deployment State Change (Alteração do estado de implantação do ECS). Veja a seguir um padrão de evento que é usado para criar uma regra do Eventbridge para eventos de alteração de estado de implantação de serviços do Amazon ECS. Para obter mais informações, consulte Criar uma regra para o EventBridge no Guia do usuário do Amazon EventBridge.
{ "source": [ "aws.ecs" ], "detail-type": [ "ECS Deployment State Change" ] }
O Amazon ECS envia eventos com os tipos de evento INFO
e ERROR
. Veja a seguir os eventos de alteração de estado de implantação de serviços.
SERVICE_DEPLOYMENT_IN_PROGRESS
-
A implantação do serviço está em andamento. Esse evento é enviado para implantações iniciais e implantações de reversão.
SERVICE_DEPLOYMENT_COMPLETED
-
A implantação do serviço foi concluída. Esse evento é enviado quando um serviço atinge um estado estacionário após uma implantação.
SERVICE_DEPLOYMENT_FAILED
-
Houve falha na implantação do serviço. Esse evento é enviado para serviços com a lógica de disjuntor de implantação ativada.
exemplo evento de implantação de serviço em andamento
Os eventos de implantação de serviço em andamento são fornecidos quando uma implantação inicial e uma de reversão são iniciadas. A diferença entre as duas está no campo reason
. Para obter mais informações sobre os parâmetros do Eventbridge, consulte Eventos e padrões de eventos no Guia do usuário do Amazon EventBridge.
Veja a seguir um exemplo de saída para o início de uma implantação inicial.
{
"version": "0",
"id": "ddca6449-b258-46c0-8653-e0e3a6EXAMPLE",
"detail-type": "ECS Deployment State Change",
"source": "aws.ecs",
"account": "111122223333",
"time": "2020-05-23T12:31:14Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "INFO",
"eventName": "SERVICE_DEPLOYMENT_IN_PROGRESS",
"deploymentId": "ecs-svc/123
",
"updatedAt": "2020-05-23T11:11:11Z",
"reason": "ECS deployment deploymentId
in progress."
}
}
Veja a seguir um exemplo de saída para o início de uma implantação de reversão. O campo reason
fornece o ID da implantação para a qual o serviço está revertendo.
{
"version": "0",
"id": "ddca6449-b258-46c0-8653-e0e3aEXAMPLE",
"detail-type": "ECS Deployment State Change",
"source": "aws.ecs",
"account": "111122223333",
"time": "2020-05-23T12:31:14Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "INFO",
"eventName": "SERVICE_DEPLOYMENT_IN_PROGRESS",
"deploymentId": "ecs-svc/123",
"updatedAt": "2020-05-23T11:11:11Z",
"reason": "ECS deployment circuit breaker: rolling back to deploymentId deploymentID
."
}
}
exemplo evento de implantação de serviço concluído
Os eventos de implantação de serviço no estado concluído são entregues no formato a seguir. Para mais informações, consulte Atualização contínua.
{
"version": "0",
"id": "ddca6449-b258-46c0-8653-e0e3aEXAMPLE",
"detail-type": "ECS Deployment State Change",
"source": "aws.ecs",
"account": "111122223333",
"time": "2020-05-23T12:31:14Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "INFO",
"eventName": "SERVICE_DEPLOYMENT_COMPLETED",
"deploymentId": "ecs-svc/123",
"updatedAt": "2020-05-23T11:11:11Z",
"reason": "ECS deployment deploymentID
completed."
}
}
exemplo evento de implantação de serviço com falha
Os eventos de implantação de serviço no estado com falha são entregues no formato a seguir. Um evento de implantação de serviço em estado com falha só será enviado para serviços com a lógica de disjuntor de implantação ativada. Para mais informações, consulte Atualização contínua.
{
"version": "0",
"id": "ddca6449-b258-46c0-8653-e0e3aEXAMPLE",
"detail-type": "ECS Deployment State Change",
"source": "aws.ecs",
"account": "111122223333",
"time": "2020-05-23T12:31:14Z",
"region": "us-west-2",
"resources": [
"arn:aws:ecs:us-west-2:111122223333:service/default/servicetest"
],
"detail": {
"eventType": "ERROR",
"eventName": "SERVICE_DEPLOYMENT_FAILED",
"deploymentId": "ecs-svc/123",
"updatedAt": "2020-05-23T11:11:11Z",
"reason": "ECS deployment circuit breaker: task failed to start."
}
}