

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Configuración de registros para los buses de EventBridge eventos de Amazon
<a name="eb-event-bus-logs"></a>

Puede configurarlos EventBridge para enviar registros que detallen cómo un bus de eventos procesa los eventos, a fin de facilitar la resolución de problemas y la depuración.

Puede seleccionar los siguientes AWS servicios como *destinos de registro a los* que se envían EventBridge los registros del bus de eventos especificado:
+ Amazon CloudWatch Logs

  EventBridge entrega los registros al grupo CloudWatch de registros especificado. 

  Utilice CloudWatch los registros para centralizar los registros de todos los sistemas, aplicaciones y AWS servicios que utilice en un único servicio altamente escalable. Para obtener más información, consulte [Trabajar con grupos de registros y transmisiones](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) de * CloudWatch registros en la Guía del usuario de Amazon Logs*.
+ Amazon Data Firehose 

  EventBridge entrega troncos a un flujo de entrega de Firehose. 

  Amazon Data Firehose es un servicio totalmente gestionado para entregar datos de streaming en tiempo real a destinos como determinados AWS servicios, así como a cualquier punto de enlace HTTP personalizado o punto de enlace HTTP propiedad de proveedores de servicios externos compatibles. Para más información, consulte [Creación de un flujo de entrega de Amazon Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html) en la *Guía del usuario de Amazon Data Firehose*.
+ Amazon S3 

  EventBridge entrega los registros como objetos de Amazon S3 al bucket especificado.

  Amazon S3 es un servicio de almacenamiento de objetos que ofrece escalabilidad, disponibilidad de datos, seguridad y rendimiento líderes del sector. Para obtener más información, consulte [Cargar, descargar y trabajar con objetos en Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/uploading-downloading-objects.html) en la *Guía del usuario de Amazon Simple Storage Service*.

## Funcionamiento del proceso de registro para buses de eventos
<a name="eb-event-logs-overview"></a>

EventBridge genera registros para: 
+ Cualquier evento AWS de servicio que coincida con una regla del bus de eventos
+ cualquier evento entregado con los siguientes métodos, independientemente de si el evento se ha ingerido correctamente o si coincide con alguna regla:
  + Eventos de [orígenes de eventos de socios](eb-saas.md)
  + Eventos [reproducidos desde un archivo](eb-archive.md)
  + Eventos enviados al bus a través de [`PutEvents`](eb-putevents.md)

EventBridge no registra los eventos que solo coinciden con [las reglas administradas](eb-rules.md#eb-rules-managed).

Los datos de registro enviados a cada destino de registro seleccionado son los mismos.

Puede personalizar los registros que se EventBridge envían a los destinos seleccionados de la siguiente manera:
+ Puede especificar el *nivel de registro*, que determina los pasos para EventBridge enviar los registros a los destinos seleccionados. Para obtener más información, consulte [Especificación del nivel de registro del bus de eventos](#eb-event-bus-logs-level).
+ Puede especificar si EventBridge incluye información más detallada cuando sea pertinente, como:
  + Detalles del evento
  + Información de entrada del destino
  + Información de solicitud del destino

  Para obtener más información, consulte [Inclusión de datos detallados en los registros del bus de eventos](#eb-event-logs-data).

### Consideraciones sobre la entrega de registro
<a name="eb-event-logs-delivery"></a>

Tenga en cuenta las siguientes consideraciones al configurar el registro para los buses de eventos:
+ Las entregas de registro de los buses de eventos se envían en la medida de lo posible. Para la mayoría de solicitudes de un bus de eventos configurado correctamente se envían archivos de registro. No se garantiza que los registros de buses de eventos estén completos ni que lleguen de manera oportuna. 
+ En algunas circunstancias, la entrega de los registros del bus de eventos por sí misma genera eventos a los que luego se envían EventBridge, lo que puede provocar interrupciones en la entrega de los registros del registro. Por este motivo, EventBridge no registra los siguientes eventos:
  + AWS KMS `[Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)`y `[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)` los eventos que se generan cuando los registros cifrados con una clave gestionada por el cliente se envían a un destino de registro.
  + Los eventos `[PutRecordBatch](https://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecordBatch.html)` en Firehose generados por la entrega de registros del bus de eventos.
+ Para los destinos de registro de S3, no se recomienda especificar un depósito [de destino con la notificación de eventos EventBridge](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-event-notifications-eventbridge.html) habilitada, ya que esto puede provocar interrupciones en la entrega de los registros.

### Cifrado de registros
<a name="eb-event-logs-encryption"></a>

Al enviar registros, EventBridge cifra las `error` secciones `detail` y de cada registro con la clave KMS especificada para el bus de eventos. Una vez entregado, el registro se descifra y, a continuación, se vuelve a cifrar con la clave de KMS especificada para el destino del registro.

Para obtener más información, consulte [Cifrado de registros de bus de eventos](encryption-bus-logs.md).

### Especificación de los permisos de registro del bus de eventos
<a name="eb-event-logs-permission"></a>

Para habilitar el registro desde un bus de eventos, debe conceder permisos EventBridge para enviar registros desde ese bus. Agregue una política que los conceda **AllowVendedLogDeliveryForResource**al bus de eventos.

------
#### [ 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 obtener más información, consulte los [permisos específicos del servicio](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html#AWS-vended-logs-permissions) en la Guía del *usuario de CloudWatch Logs*.

## Especificación del nivel de registro del bus de eventos
<a name="eb-event-bus-logs-level"></a>

Puede especificar los tipos de pasos de procesamiento de eventos que se EventBridge registran en los destinos de registro seleccionados. 

Elija entre los siguientes niveles de detalle para incluirlos en los registros. El nivel de registro se aplica a todos los destinos de registro especificados para el bus de eventos. Cada nivel de registro incluye los pasos de los niveles de registro anteriores.
+ **DESACTIVADO**: EventBridge no envía ningún registro. Este es el valor predeterminado.
+ **ERROR**: EventBridge envía todos los registros relacionados con los errores generados durante el procesamiento del evento y la entrega objetivo.
+ **INFORMACIÓN**: EventBridge envía todos los registros relacionados con los errores, así como los principales pasos realizados durante el procesamiento del evento.
+ **TRACE**: EventBridge envía todos los registros generados durante todos los pasos del procesamiento del evento.

En la siguiente tabla se enumeran los pasos de procesamiento del evento incluidos en cada nivel de registro.


| Paso | TRACE | INFO | ERROR | OFF | 
| --- | --- | --- | --- | --- | 
|  Evento ingerido  | x | x |  |  | 
|  Error al ingerir el evento  | x | x | x |  | 
|  Evento recibido  | x |  |  |  | 
|  Intento de invocación iniciado  | x |  |  |  | 
|  Error permanente del intento de invocación  | x | x | x |  | 
|  Error del reintento de invocación  | x | x | x |  | 
|  Intento de invocación correcto  | x |  |  |  | 
|  Intento de invocación limitado  | x | x | x |  | 
|  DLQ de invocación  | x | x | x |  | 
|  Invocación fallida  | x | x | x |  | 
|  Invocación iniciada  | x | x |  |  | 
|  Invocación correcta  | x | x |  |  | 
|  Limitación de la invocación iniciada  | x | x | x |  | 
|  No coincide ninguna regla  | x | x |  |  | 
|  Regla coincidente   | x | x |  |  | 
|  Coincidencia de reglas iniciada   | x |  |  |  | 

## Inclusión de datos detallados en los registros del bus de eventos
<a name="eb-event-logs-data"></a>

Puede especificar si EventBridge desea incluir información más detallada en los registros que genera. Los datos son útiles para solucionar problemas y depurar. Si selecciona esta opción, EventBridge incluye estos datos en los registros pertinentes de todos los destinos de registro especificados.

La información detallada incluye los siguientes campos: 
+ `event_detail`: los detalles del evento en sí.
+ `target_input`: la solicitud se EventBridge envía al destino.
+ `target_properties`: 

## Truncamiento de los datos en los registros del bus de eventos
<a name="eb-event-logs-data-truncation"></a>

Debido a las restricciones de destino del registro, EventBridge limita los registros a 1 MB. Si un registro supera este límite, EventBridge trunca el registro quitando los siguientes campos en el orden siguiente:
+ `target_input`
+ `target_properties`
+ `target_response_body`

EventBridge elimina el `event_detail` campo de los siguientes tipos de registros si es necesario:
+ `EVENT_RECEIVED`
+ `EVENT_INGESTED`
+ `EVENT_INGESTED_FAILED`
+ `RULE_MATCH_STARTED`

Si es necesario truncarlo, EventBridge elimina todo el campo.

Si EventBridge trunca los campos en el caso, el `dropped_fields` campo incluye una lista de los campos de datos eliminados.

## Informe de errores en los registros del bus de eventos
<a name="eb-event-logs-errors"></a>

EventBridge también incluye los datos de error, si están disponibles, en pasos que representan los estados de fallo. Estos pasos incluyen:
+ `EVENT_INGEST_FAILURE`
+ `INVOCATION_THROTTLE_START`
+ `INVOCATION_ATTEMPT_THROTTLE`
+ `INVOCATION_ATTEMPT_RETRYABLE_FAILURE`
+ `INVOCATION_ATTEMPT_PERMANENT_FAILURE`
+ `INVOCATION_FAILURE`
+ `INVOCATION_DLQ`

# Lo que Amazon EventBridge registra para los autobuses de eventos
<a name="eb-event-logs-execution-steps"></a>

Entender cómo EventBridge los eventos de los procesos puede ayudarle a utilizar los registros para solucionar o depurar los problemas del bus de eventos.

Si el registro está activado, EventBridge genera varios registros a medida que se procesa un evento. 

Estos son los pasos principales que se EventBridge realizan al procesar un evento:
+ Se envía un evento a un bus de eventos

  EventBridge genera registros de los eventos enviados desde fuentes asociadas, reproducidos desde archivos o enviados utilizando `PutEvents` alguna regla o no.
+ EventBridge determina si el evento coincide con alguna de las reglas del autobús.

  Si el evento coincide con una o más reglas, EventBridge continúe con el siguiente paso.

  Si un AWS evento no coincide con ninguna regla, lo EventBridge descarta y no genera ningún registro.
+ EventBridge invoca el objetivo.

  EventBridge vuelve a intentar invocar el objetivo según sea necesario hasta que:
  + El clúster se haya eliminado correctamente.
  + Se produce un error en la entrega de eventos, por ejemplo, si la política de reintentos caduca o se produce un error permanente.

    Si se produce un error en la entrega, EventBridge envía el evento a una cola de espera (DLQ) si se ha especificado alguna, o lo descarta si no se ha especificado ningún DLQ.

En el siguiente diagrama se muestra con detalle el flujo de procesamiento de eventos, con todos los pasos posibles representados, junto con el nivel de registro de cada paso.

Para obtener una lista completa de los pasos, consulte [Especificación del nivel de registro](eb-event-bus-logs.md#eb-event-bus-logs-level).

![\[EventBridge sigue los pasos necesarios para procesar cada evento enviado al bus.\]](http://docs.aws.amazon.com/es_es/eventbridge/latest/userguide/images/bus_logging_eventbridge_conceptual.svg)


# Esquema de registro EventBridge del bus de eventos de Amazon
<a name="eb-event-logs-schema"></a>

La siguiente referencia detalla el esquema de los registros del bus de eventos. EventBridge Cada registro representa un paso que EventBridge lleva a cabo el procesamiento de un evento específico.

Para obtener más información, consulte [Registro de buses 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>
Es el Nombre de recurso de Amazon (ARN) para el bus de eventos.

**request\$1id**  <a name="event-log-schema-request-id"></a>
El ID de la solicitud.

**event\$1id**  <a name="event-log-schema-event-id"></a>
Es el ID del evento que se está procesando.

**invocation\$1id**  <a name="event-log-schema-invocation-id"></a>
Es el ID de la invocación para el evento.

**message\$1timestamp\$1ms**  <a name="event-log-schema-timestamp"></a>
La fecha y la hora en que se emitió el evento de registro.  
Unidad: milisegundos

**message\$1type**  <a name="event-log-schema-message-type"></a>
Es el paso de procesamiento de eventos para el que se ha generado el registro.  
Para obtener más información sobre los pasos que se EventBridge realizan al procesar un evento, consulte[Lo que Amazon EventBridge registra para los autobuses 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>
Es el nivel de detalle especificado para el registro del bus de eventos.  
*Valores válidos*: `ERROR` \$1 `INFO` \$1 `TRACE`  
Para obtener más información, consulte [Especificación del nivel de registro del bus de eventos](eb-event-bus-logs.md#eb-event-bus-logs-level).

**details**  <a name="event-log-schema-details"></a>
Contiene detalles de los pasos, según el tipo de detalle del paso.  
Los campos que se muestran a continuación se devuelven para los siguientes tipos de mensaje:  
+ `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": "{}"
}
```
Los campos que se muestran a continuación se devuelven para el siguiente tipo de mensaje:  
+ `RULE_MATCH`

```
{
  "rule_arn": "ARN",
  "target_arns": [
    "ARN"
  ],
  "invocation_ids": [
    "guid"
  ]
}
```
Los campos que se muestran a continuación se devuelven para los siguientes tipos de mensaje:  
+ `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"
}
```
Los campos que se muestran a continuación se devuelven para los siguientes tipos de mensaje:  
+ `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"
}
```
Los `ingestion_to_start_latency_ms` y `ingestion_to_complete_latency_ms` solo se incluyen en el primer intento de invocación. El campo `ingestion_to_success_latency_ms` solo se incluye para las invocaciones correctas.  
Los campos que se muestran a continuación se devuelven para los siguientes tipos de mensaje:  
+ `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>
Se EventBridge ha truncado una lista de todos los campos de datos para mantener el registro por debajo del límite de tamaño de 1 MB.  
EventBridge no incluye este campo si ha truncado algún campo de detalle.  
Para obtener más información, consulte [Truncamiento de los datos en los registros del bus de eventos](eb-event-bus-logs.md#eb-event-logs-data-truncation).

**error**  <a name="event-log-schema-error"></a>
Contiene información sobre los errores generados durante este paso. Para errores, EventBridge siempre incluye los siguientes campos:  
+ `error_message`
+ `aws_service`
Y los siguientes campos, si están disponibles:  
+ `request_id`
+ `http_status_code`
Si no se generó ningún error durante este paso, EventBridge no incluye este campo en el registro.    
**http\$1status\$1code**  <a name="event-log-schema-http-status-code"></a>
El código de estado HTTP devuelto por el servicio al que se llama.  
**mensaje\$1error**  <a name="event-log-schema-message"></a>
El mensaje de error que devuelve el servicio al que se llama.  
**aws\$1service**  <a name="event-log-schema-aws-service"></a>
El nombre del servicio al que se llama.  
**request\$1id**  <a name="event-log-schema-error-request-id"></a>
El ID de solicitud para esta solicitud del servicio al que se llama.