

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

# Configurando registros para ônibus de EventBridge eventos da Amazon
<a name="eb-event-bus-logs"></a>

Você pode configurar EventBridge para enviar registros detalhando como um barramento de eventos está processando eventos, para ajudar na solução de problemas e na depuração.

Você pode selecionar os seguintes AWS serviços como *destinos de registro* para os quais EventBridge entregam registros para o barramento de eventos especificado:
+  CloudWatch Registros da Amazon

  EventBridge entrega registros para o grupo de CloudWatch registros de registros especificado. 

  Use o CloudWatch Logs para centralizar os registros de todos os seus sistemas, aplicativos e AWS serviços que você usa, em um único serviço altamente escalável. Para obter mais informações, consulte Como [trabalhar com grupos e fluxos de registros](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) no *Guia do usuário do Amazon CloudWatch Logs*.
+ Amazon Data Firehose 

  EventBridge entrega registros para um stream de entrega do Firehose. 

  O Amazon Data Firehose é um serviço totalmente gerenciado para fornecer dados de streaming em tempo real para destinos como determinados AWS serviços, bem como qualquer endpoint HTTP personalizado ou endpoints HTTP de propriedade de provedores de serviços terceirizados compatíveis. Para obter mais informações, consulte [Creating an Amazon Data Firehose delivery stream](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html) no *Guia do desenvolvedor do Amazon Data Firehose*.
+ Amazon S3 

  EventBridge entrega registros como objetos do Amazon S3 para o bucket especificado.

  O Amazon S3 é um serviço de armazenamento de objetos que oferece escalabilidade, disponibilidade de dados, segurança e performance líderes do setor. Para obter mais informações, consulte [Fazer upload, baixar e trabalhar com objetos no Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/uploading-downloading-objects.html) no *Manual do usuário do Amazon Simple Storage Service*.

## Como funciona o registro em log para barramentos de eventos
<a name="eb-event-logs-overview"></a>

EventBridge gera registros para: 
+ Qualquer evento AWS de serviço que corresponda a uma regra no barramento de eventos
+ Qualquer evento entregue pelos seguintes métodos, independentemente do evento ter sido ingerido com êxito ou corresponder a alguma regra:
  + Eventos das [fontes de eventos de parceiro](eb-saas.md)
  + Eventos [reproduzidos de um arquivo](eb-archive.md)
  + Eventos enviados para o barramento por meio de [`PutEvents`](eb-putevents.md)

EventBridge não registra eventos que correspondam apenas às [regras gerenciadas](eb-rules.md#eb-rules-managed).

Os dados de log enviados para cada destino de log selecionado são iguais.

Você pode personalizar os registros EventBridge enviados para os destinos selecionados da seguinte forma:
+ Você pode especificar o *nível do registro*, que determina as etapas para as quais os registros são EventBridge enviados para os destinos selecionados. Para obter mais informações, consulte [Especificação do nível de log do barramento de eventos](#eb-event-bus-logs-level).
+ Você pode especificar se EventBridge inclui mais informações granulares quando relevante, incluindo:
  + Detalhes do evento
  + Informações de entrada do destino
  + Informações de solicitação do destino

  Para obter mais informações, consulte [Inclusão de dados detalhados em logs do barramento de eventos](#eb-event-logs-data).

### Considerações da entrega de log
<a name="eb-event-logs-delivery"></a>

Tenha as seguintes considerações em mente ao configurar o registro em log para barramentos de eventos:
+ Os registros de log do barramento de eventos são entregues com base no melhor esforço. A maioria das solicitações para um barramento de eventos devidamente configurada para registro em log resulta em um registro de log entregue. A integralidade e a pontualidade do registro em log do barramento de eventos não são garantidas. 
+ Em algumas circunstâncias, a entrega de registros de log do barramento de eventos por si só gera eventos que são enviados para EventBridge, o que pode causar interrupções na entrega dos registros de log. Por esse motivo, EventBridge não registra os seguintes eventos:
  + AWS KMS `[Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)`e `[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)` eventos gerados quando registros de log criptografados usando uma chave gerenciada pelo cliente são entregues a um destino de log.
  + Os eventos `[PutRecordBatch](https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html)` no Firehose gerados pela entrega dos logs do barramento de eventos.
+ Para destinos de log do S3, não é recomendável especificar um bucket de destino com a [notificação de eventos EventBridge](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-event-notifications-eventbridge.html) ativada, pois isso pode resultar em interrupção na entrega de seus registros.

### Registro em log da criptografia
<a name="eb-event-logs-encryption"></a>

Ao enviar registros, EventBridge criptografa as `error` seções `detail` e de cada registro de log com a chave KMS especificada para o barramento de eventos. Depois de entregue, o registro será descriptografado e, em seguida, recriptografado com a chave KMS especificada para o destino do log.

Para obter mais informações, consulte [Criptografia de logs do barramento de eventos](encryption-bus-logs.md).

### Especificação das permissões do registro em log do barramento de eventos
<a name="eb-event-logs-permission"></a>

Para habilitar o registro a partir de um barramento de eventos, você deve conceder permissões EventBridge para enviar registros desse barramento. Adicione uma política que conceda subsídios **AllowVendedLogDeliveryForResource**ao ônibus do evento.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ServiceLevelAccessForLogDelivery",
            "Effect": "Allow",
            "Action": [
                "events:AllowVendedLogDeliveryForResource"
            ],
            "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/my-event-bus*"
        }
    ]
}
```

------

Para obter mais informações, consulte [Permissões específicas do serviço no Guia](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-vended-logs-permissions) do *usuário de CloudWatch registros*.

## Especificação do nível de log do barramento de eventos
<a name="eb-event-bus-logs-level"></a>

Você pode especificar os tipos de etapas de processamento de eventos que são EventBridge registrados nos destinos de log selecionados. 

Escolha um dentre os níveis de detalhe a seguir para incluir em logs. O nível de log se aplica a todos os destinos de log especificados para o barramento de eventos. Cada nível de log inclui as etapas dos níveis de log anteriores.
+ **DESLIGADO** — EventBridge não envia nenhum registro. Esse é o padrão.
+ **ERRO** — EventBridge envia todos os registros relacionados aos erros gerados durante o processamento do evento e a entrega do alvo.
+ **INFO** — EventBridge envia todos os registros relacionados a erros, bem como as principais etapas executadas durante o processamento do evento.
+ **TRACE** — EventBridge envia todos os registros gerados durante todas as etapas do processamento do evento.

A tabela a seguir lista as etapas de processamento de eventos inclusas em cada nível do log.


| Etapa | RASTREAR | INFO | ERRO | DESL. | 
| --- | --- | --- | --- | --- | 
|  Evento ingerido  | x | x |  |  | 
|  Falha na ingestão de eventos  | x | x | x |  | 
|  Evento recebido  | x |  |  |  | 
|  Tentativa de invocação iniciada  | x |  |  |  | 
|  Falha permanente na tentativa de invocação  | x | x | x |  | 
|  Falha na nova tentativa de invocação  | x | x | x |  | 
|  Tentativa de invocação com êxito  | x |  |  |  | 
|  Tentativa de invocação com controle de utilização  | x | x | x |  | 
|  DLQ de invocação  | x | x | x |  | 
|  Falha na invocação  | x | x | x |  | 
|  Invocação iniciada  | x | x |  |  | 
|  Invocação bem-sucedida  | x | x |  |  | 
|  Invocação iniciada com controle de utilização  | x | x | x |  | 
|  Nenhuma regra correspondente  | x | x |  |  | 
|  Regra correspondente   | x | x |  |  | 
|  Combinação de regras iniciada   | x |  |  |  | 

## Inclusão de dados detalhados em logs do barramento de eventos
<a name="eb-event-logs-data"></a>

Você pode especificar EventBridge para incluir informações mais granulares nos registros que ele gera. Esses dados podem ser úteis para solução de problemas e depuração. Se você selecionar essa opção, EventBridge inclua esses dados nos registros relevantes para todos os destinos de log especificados.

As informações detalhadas incluem os seguintes campos: 
+ `event_detail`: os detalhes do próprio evento.
+ `target_input`: a solicitação é EventBridge enviada para o destino.
+ `target_properties`: 

## Truncamento de dados em logs do barramento de eventos
<a name="eb-event-logs-data-truncation"></a>

Devido às restrições de destino do log, EventBridge limita os registros de log a 1 MB. Se um registro de log exceder esse limite, EventBridge truncará o registro removendo os seguintes campos na seguinte ordem:
+ `target_input`
+ `target_properties`
+ `target_response_body`

EventBridge remove o `event_detail` campo dos seguintes tipos de registro de log, se necessário:
+ `EVENT_RECEIVED`
+ `EVENT_INGESTED`
+ `EVENT_INGESTED_FAILED`
+ `RULE_MATCH_STARTED`

Se o truncamento for necessário, EventBridge remove o campo inteiro.

Se EventBridge truncar campos no evento, o `dropped_fields` campo incluirá uma lista dos campos de dados excisados.

## Relatório de erros em logs do barramento de eventos
<a name="eb-event-logs-errors"></a>

EventBridge também inclui dados de erro, quando disponíveis, em etapas que representam estados de falha. Essas etapas incluem:
+ `EVENT_INGEST_FAILURE`
+ `INVOCATION_THROTTLE_START`
+ `INVOCATION_ATTEMPT_THROTTLE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_FAILURE`
+ `INVOCATION_DLQ`

# O que a Amazon EventBridge registra para ônibus de eventos
<a name="eb-event-logs-execution-steps"></a>

Entender como EventBridge os eventos de processos podem ajudar você a usar registros para solucionar ou depurar problemas de barramento de eventos.

Se o registro estiver ativado, EventBridge gerará vários registros de registro à medida que um evento for processado. 

Aqui estão as principais etapas EventBridge executadas ao processar um evento:
+ Um evento é enviado para um barramento de eventos

  EventBridge gera registros de eventos enviados de fontes parceiras, reproduzidos de arquivos ou enviados usando`PutEvents`, independentemente de corresponderem ou não a alguma regra.
+ EventBridge determina se o evento corresponde a alguma regra no ônibus.

  Se o evento corresponder a uma ou mais regras, EventBridge prossiga para a próxima etapa.

  Se um AWS evento não corresponder a nenhuma regra, EventBridge descarta-o e não gera nenhum registro.
+ EventBridge invoca o alvo.

  EventBridge tenta invocar o alvo novamente conforme necessário até:
  + O evento ter sido entregue com êxito.
  + Falha na entrega do evento, como se a política de nova tentativa expira ou ocorre uma falha permanente.

    Se a entrega falhar, EventBridge envia o evento para uma fila de cartas mortas (DLQ), se uma for especificada, ou descarta o evento se nenhuma DLQ for especificada.

O diagrama abaixo apresenta uma exibição detalhada do fluxo de processamento de eventos, com todas as etapas possíveis representadas, com o nível de log de cada etapa.

Para obter uma lista completa de etapas, consulte [Como especificar o nível do log](eb-event-bus-logs.md#eb-event-bus-logs-level).

![\[EventBridge prossegue com as etapas para processar cada evento enviado ao ônibus.\]](http://docs.aws.amazon.com/pt_br/eventbridge/latest/userguide/images/bus_logging_eventbridge_conceptual.svg)


# Esquema de registro de ônibus de EventBridge eventos da Amazon
<a name="eb-event-logs-schema"></a>

A referência a seguir detalha o esquema dos registros de log EventBridge do barramento de eventos. Cada registro representa uma etapa que EventBridge executa o processamento de um evento específico.

Para obter mais informações, consulte [Registro em log dos barramentos de eventos ](eb-event-bus-logs.md).

```
{    
    "resource\$1arn": "arn:aws:events:region:account:event-bus/bus-name",
    "request\$1id": "guid", 
    "event\$1id": "guid", 
    "invocation\$1id": "guid",
    "message\$1timestamp\$1ms": "date_time",    
    "message\$1type": "step",  
    "log\$1level": "TRACE | INFO | ERROR",
    "details": {
      },
    "error": {  
        "http\$1status\$1code": code,  
        "error\$1message": "error_message",  
        "aws\$1service": "service_name",  
        "request\$1id": "service_request_id"  
    }  
}
```

**resource\$1arn**  <a name="event-log-schema-resource-arn"></a>
O nome do recurso da Amazon (ARN) do barramento de eventos.

**request\$1id**  <a name="event-log-schema-request-id"></a>
O ID da solicitação.

**event\$1id**  <a name="event-log-schema-event-id"></a>
O ID do evento que está sendo processado.

**invocation\$1id**  <a name="event-log-schema-invocation-id"></a>
O ID da invocação do evento.

**message\$1timestamp\$1ms**  <a name="event-log-schema-timestamp"></a>
A data e a hora em que o evento de log foi emitido.  
Unidade: milissegundo

**message\$1type**  <a name="event-log-schema-message-type"></a>
A etapa de processamento do evento para a qual o registro de log foi gerado.  
Para obter mais informações sobre as etapas EventBridge executadas ao processar um evento, consulte[O que a Amazon EventBridge registra para ônibus de eventos](eb-event-logs-execution-steps.md).  
*Valores válidos:*  
+ `EVENT_INGEST_FAILURE`
+ `EVENT_INGEST_SUCCESS`
+ `EVENT_RECEIPT`
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_START`
+ `INVOCATION_ATTEMPT_SUCCESS`
+ `INVOCATION_ATTEMPT_THROTTLE`
+ `INVOCATION_DLQ`
+ `INVOCATION_FAILURE`
+ `INVOCATION_START`
+ `INVOCATION_SUCCESS`
+ `INVOCATION_THROTTLE_START`
+ `NO_STANDARD_RULES_MATCHED`
+ `RULE_MATCH`
+ `RULE_MATCH_START`

**log\$1level**  <a name="event-log-schema-loglevel"></a>
O nível de detalhe especificado para o log do barramento de eventos.  
*Valores válidos*: `ERROR` \$1 `INFO` \$1 `TRACE`  
Para obter mais informações, consulte [Especificação do nível de log do barramento de eventos](eb-event-bus-logs.md#eb-event-bus-logs-level).

**detalhes**  <a name="event-log-schema-details"></a>
Contém detalhes da etapa, com base no tipo de detalhe da etapa.  
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `EVENT_INGEST_SUCCESS`
+ `EVENT_INGEST_FAILURE`
+ `EVENT_RECEIPT`
+ `RULE_MATCH_START`

```
{
  "caller_account_id": "account_id",
  "source_time_ms": date_time,
  "source": "source",
  "detail_type": " type",
  "resources": [],
  "event_detail": "{}"
}
```
Os campos listados abaixo são retornados para o seguinte tipo de mensagem:  
+ `RULE_MATCH`

```
{
  "rule_arn": "ARN",
  "target_arns": [
    "ARN"
  ],
  "invocation_ids": [
    "guid"
  ]
}
```
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `INVOCATION_ATTEMPT_START`
+ `INVOCATION_START`
+ `INVOCATION_THROTTLE_START`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "attempt_count": Integer,
  "target_input": "string",
  "target_properties": "string"
}
```
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `INVOCATION_DLQ`
+ `INVOCATION_FAILURE`
+ `INVOCATION_SUCCESS`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "target_input": "string",
  "target_properties": "string",
  "total_attempts": Integer,
  "final_invocation_status": "status",
  "ingestion_to_start_latency_ms": Integer,
  "ingestion_to_complete_latency_ms": Integer,
  "ingestion_to_success_latency_ms": Integer,
  "target_duration_ms": Integer,
  "target_response_body": "string"
}
```
Os `ingestion_to_start_latency_ms` e `ingestion_to_complete_latency_ms` só são incluídos na primeira tentativa de invocação. O campo `ingestion_to_success_latency_ms` só é incluído para invocações bem-sucedidas.  
Os campos listados abaixo são retornados para os seguintes tipos de mensagem:  
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_SUCCESS`
+ `INVOCATION_ATTEMPT_THROTTLE`

```
{
  "rule_arn": "ARN",
  "role_arn": "ARN",
  "target_arn": "ARN",
  "attempt_type": "FIRST | THROTTLE | RETRY",
  "attempt_count": Integer,
  "invocation_status": "status",
  "target_duration_ms": Integer,
  "target_response_body": "string"
}
```

**dropped\$1fields**  <a name="event-log-schema-dropped_fields"></a>
Uma lista de todos os campos de dados EventBridge foi truncada para manter o registro abaixo do limite de tamanho de 1 MB.  
EventBridge não inclui esse campo se tiver truncado quaisquer campos de detalhes.  
Para obter mais informações, consulte [Truncamento de dados em logs do barramento de eventos](eb-event-bus-logs.md#eb-event-logs-data-truncation).

**erro**  <a name="event-log-schema-error"></a>
Contém informações de qualquer erro gerado durante esta etapa. Para erros, o EV sempre inclui os seguintes campos:  
+ `error_message`
+ `aws_service`
E os seguintes campos, se disponíveis:  
+ `request_id`
+ `http_status_code`
Se nenhum erro foi gerado durante essa etapa, EventBridge não inclui esse campo no registro de log.    
**http\$1status\$1code**  <a name="event-log-schema-http-status-code"></a>
O código de status HTTP retornado pelo serviço chamado.  
**mensagem\$1de\$1erro**  <a name="event-log-schema-message"></a>
A mensagem de erro retornada pelo serviço chamado.  
**aws\$1service**  <a name="event-log-schema-aws-service"></a>
O nome do serviço chamado.  
**identificação\$1solicitação**  <a name="event-log-schema-error-request-id"></a>
O ID de solicitação para essa solicitação do serviço chamado.