

# Registro de pares del servidor de enrutamiento
<a name="route-server-peer-logging"></a>

Utilice el registro de pares del servidor de enrutamiento de VPC cuando necesite realizar lo siguiente:
+ Supervisar el estado de las sesiones de BGP y BFD
+ Solucionar problemas de conexión
+ Revisar los cambios históricos de las sesiones
+ Realizar un seguimiento del estado de la red

## Precios
<a name="pricing"></a>
+ **CloudWatch**: se aplican costos por archivo e ingesta de datos para los registros a la venta cuando se publican registros de pares de servidor de enrutamiento en registros de CloudWatch. 
+ **S3**: se aplican costos por archivo e ingesta de datos para los registros a la venta cuando se publican registros pares de servidor de enrutamiento en registros en Amazon S3.
+ **Data Firehose**: se aplican los cargos estándar de ingesta y entrega.

Los registros a la venta son registros de servicios específicos de AWS que están disponibles con precios escalonados según el volumen y se entregan a registros de CloudWatch, Amazon S3 o Amazon Data Firehose. Para obtener más información, abra [Precios de Amazon CloudWatch](https://aws.amazon.com//cloudwatch/pricing/) seleccione **Logs** (Registros) y consulte **Vended Logs** (Registros distribuidos).

## Ejemplo de formato de registro
<a name="example-log-format"></a>

```
{
    "resource_arn": "arn:aws:ec2:us-east-1:111122223333:route-server-peer/rsp-1234567890abcdef0",
    "event_timestamp": 1746643505367,
    "type": "RouteStatus",
    "status": "ADVERTISED",
    "message": {
        "prefix": "10.24.34.0/32",
        "asPath": "65000",
        "med": 100,
        "nextHopIp": "10.24.34.1"
    }
}

{
    "resource_arn": "arn:aws:ec2:us-east-1:111122223333:route-server-peer/rsp-1234567890abcdef0",
    "event_timestamp": 1746643490000,
    "type": "BGPStatus",
    "status": "UP",
    "message": null
}
```

Donde:
+ El `resource_arn` es el ARN del par del servidor de enrutamiento.
+ La `event_timestamp` es la marca de tiempo del evento.
+ El `type` de eventos de registro que producimos (`RouteStatus`, `BGPStatus`, `BFDStatus`).
+ El campo `status` es la actualización de estado.
  + Para mensajes de tipo `RouteStatus`
    + `ADVERTISED` (el enrutamiento fue anunciado por el par)
    + `UPDATED` (el par actualizó el enrutamiento existente)
    + `WITHDRAWN` (el par retiró el enrutamiento)
  + Para actualizaciones de `BFDStatus` y `BGPStatus`
    + `UP`, `DOWN`.
+ Actualmente, el campo `message` solo se usa para los atributos de enrutamiento del tipo de mensaje RouteStatus, pero puede rellenarse con información relevante para cualquier tipo.

------
#### [ AWS Management Console ]

Cómo crear registros de par de servidor de enrutamiento:

1. Abra la consola de Amazon VPC en [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. En el panel de navegación, en **Nube privada de virtualización**, seleccione **Servidores de ruta**.

1. En la página **Servidores de rutas**, elija **Pares servidor de enrutamiento**.

1. Elija la pestaña **Entrega de registros**.

1. Elija **Añadir entrega de registros**.

1. Elija un destino y configure los ajustes:
   + Registros de Amazon CloudWatch
     + **Tipo de registro**: los tipos de registros que se van a entregar. El único tipo de registro compatible es EVENT\$1LOGS.
     + **Grupo de registros de destino**: el grupo de registros de CloudWatch al que se enviarán los registros. Puede elegir un grupo de registros existente o crear uno nuevo (por ejemplo: /aws/vpc/route-server-peers).
     + **Selección de campos**: los campos de datos que incluirá en sus registros.
     + **Formato de salida**: cómo se formatean los registros:
       + JSON: formato estructurado para procesamiento por computadora
       + Texto: formato de texto sin formato
     + **Delimitador de campo**: cuando se utiliza el formato de texto, es el carácter que separa los campos (por ejemplo: coma, tabulación, espacio).
   + Amazon S3
     + Cuenta cruzada: envío de registros a diferentes cuentas de AWS
       + **Tipo de registro**: los tipos de registros que se van a entregar. El único tipo de registro compatible es EVENT\$1LOGS.
       + **ARN de destino de entrega**: el nombre del recurso de Amazon del bucket de S3 en otra cuenta de AWS a la que se enviarán los registros.
       + **Selección de campos**: los campos de datos que incluirá en sus registros.
       + **Sufijo**: la extensión que se añade a los nombres de los archivos de registro (por ejemplo: .log, .txt).
       + **Compatible con Hive**: cuando está activado, organiza los registros en una estructura de carpetas que funciona con las herramientas basadas en Hive para facilitar la búsqueda con servicios como Amazon Athena.
       + **Delimitador de campos**: cuando se utiliza el formato de texto, es el carácter que separa los campos.
     + En la cuenta actual
       + **Tipo de registro**: los tipos de registros que se van a entregar. El único tipo de registro compatible es EVENT\$1LOGS.
       + **Bucket de S3 de destino**: el bucket de S3 de su cuenta al que se enviarán los registros. Puede especificar la ruta de una subcarpeta.
       + **Selección de campos**: los campos de datos que incluirá en sus registros.
       + **Sufijo**: la extensión que se añade a los nombres de los archivos de registro (por ejemplo: .log, .txt).
       + **Compatible con Hive**: cuando está activado, organiza los registros en una estructura de carpetas que funciona con las herramientas basadas en Hive para facilitar la búsqueda.
       + **Delimitador de campos**: cuando se utiliza el formato de texto, es el carácter que separa los campos.
   + Amazon Data Firehose
     + Entre cuentas
       + **Tipo de registro**: los tipos de registros que se van a entregar. El único tipo de registro compatible es EVENT\$1LOGS.
       + **ARN de destino de entrega**: el nombre de recurso de Amazon del flujo de entrega de Firehose en otra cuenta de AWS.
       + **Selección de campos**: los campos de datos que incluirá en sus registros.
       + **Delimitador de campos**: cuando se utiliza el formato de texto, es el carácter que separa los campos.
     + En la cuenta actual
       + **Tipo de registro**: los tipos de registros que se van a entregar. El único tipo de registro compatible es EVENT\$1LOGS.
       + **Flujo de destino de la entrega**: el flujo de entrega de Firehose de su cuenta a la que se enviarán los registros. El flujo debe usar el tipo de origen "Direct Put".
       + **Selección de campos**: los campos de datos que incluirá en sus registros.
       + **Formato de salida**: cómo se formatean los registros:
         + JSON: formato estructurado para procesamiento por computadora
         + Texto: formato de texto sin formato
       + **Delimitador de campos**: cuando se utiliza el formato de texto, es el carácter que separa los campos.

------
#### [ Command line ]

Los comandos de esta sección contienen enlaces a la *Referencia de comandos de la AWS CLI*. La documentación proporciona descripciones detalladas de las opciones que puede utilizar al ejecutar los comandos.

Cómo crear registros de par de servidor de enrutamiento:

1. Utilice el comando [put-delivery-source](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/put-delivery-source.html).
   + Ejemplo de solicitud

     ```
     aws logs put-delivery-source --name "source-rsp-1234567890abcdef0" --resource-arn "arn:aws:ec2:us-east-1:111122223333:route-server-peer/rsp-1234567890abcdef0" --log-type "EVENT_LOGS"
     ```
   + Respuesta de ejemplo

     ```
     {
          "deliverySource": {
             "name": "source-rsp-1234567890abcdef0",
             "arn": "arn:aws:logs:us-east-1:111122223333:delivery-source:source-rsp-1234567890abcdef0",
             "resourceArns": [
                 "arn:aws:ec2:us-east-1:111122223333:route-server-peer/rsp-1234567890abcdef0"
             ],
             "service": "ec2",
             "logType": "EVENT_LOGS"
         }
     }
     ```

1. Utilice el comando [put-delivery-destination](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/put-delivery-destination.html).
   + El siguiente ejemplo de la CLI de AWS crea un registro del servidor de enrutamiento. Los registros se entregan al grupo de registros especificado.
   + Ejemplo de solicitud

     ```
     aws logs put-delivery-destination --name "destination-rsp-abcdef01234567890" --destination-resource-arn "arn:aws:logs:us-east-1:111122223333:log-group:/aws/vendedlogs/ec2/route-server-peer/EVENT_LOGS/rsp-abcdef01234567890"
     ```
   + Respuesta de ejemplo

     ```
     {
          "deliveryDestination": {
             "name": "destination-rsp-abcdef01234567890",
             "arn": "arn:aws:logs:us-east-1:111122223333:delivery-destination:destination-rsp-abcdef01234567890",
             "deliveryDestinationType": "CWL",
             "deliveryDestinationConfiguration": {
                 "destinationResourceArn": "arn:aws:logs:us-east-1:111122223333:log-group:/aws/vendedlogs/ec2/route-server-peer/EVENT_LOGS/rsp-abcdef01234567890"
             }
         }
     }
     ```

1. Utilice el comando [create-delivery](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/create-delivery.html).
   + Ejemplo de solicitud

     ```
     aws logs create-delivery --delivery-source-name "source-rsp-1234567890abcdef0" --delivery-destination-arn "arn:aws:logs:us-east-1:111122223333:delivery-destination:destination-rsp-abcdef01234567890"
     ```
   + Respuesta de ejemplo

     ```
     {
          "delivery": {
             "id": "1234567890abcdef0",
             "arn": "arn:aws:logs:us-east-1:111122223333:delivery:1234567890abcdef0",
             "deliverySourceName": "source-rsp-1234567890abcdef0",
             "deliveryDestinationArn": "arn:aws:logs:us-east-1:111122223333:delivery-destination:destination-rsp-abcdef01234567890",
             "deliveryDestinationType": "CWL",
             "recordFields": [
                 "resource_arn",
                 "event_timestamp",
                 "type",
                 "status",
                 "message"
             ]
         }
     }
     ```

------