

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.

# Registro de Amazon MSK
<a name="msk-logging"></a>

Amazon MSK admite los registros de agentes y autorizadores en los corredores Standard y Express. Puede entregar estos registros a uno o más de los siguientes tipos de destino: Amazon CloudWatch Logs, Amazon S3 y Amazon Data Firehose. También puede registrar las llamadas a la API de Amazon MSK con. AWS CloudTrail

Debe crear un recurso de destino antes de configurar el clúster para que le entregue los registros. Amazon MSK no crea estos recursos de destino si aún no existen. Para obtener información acerca de estos tres tipos de recursos de destino y cómo crearlos, consulte la siguiente documentación:
+ [Amazon CloudWatch Logs ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html)
+ [Amazon Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html)

## Registros de agente
<a name="broker-logs"></a>

Los registros de agente le permiten solucionar problemas de las aplicaciones de Apache Kafka y analizar las comunicaciones con su clúster de MSK. Puedes configurar tu clúster de MSK nuevo o existente para que entregue los registros INFO-level de los agentes a uno o más de los siguientes tipos de recursos de destino: un grupo de CloudWatch registros, un bucket de S3 o un flujo de entrega de Firehose. A través de Firehose, puedes enviar a Service los datos de registro de tu transmisión de entrega. OpenSearch 

### Configure los registros del agente mediante el AWS CLI
<a name="broker-logs-cli"></a>

Si utiliza los comandos `update-monitoring` o `create-cluster`, tiene la opción de especificar el parámetro `logging-info` y pasarlo a una estructura JSON como en el siguiente ejemplo. En este JSON, los tres tipos de destino son opcionales.

**nota**  
Debe establecer la etiqueta `LogDeliveryEnabled` en `true` en los flujos de Firehose para configurar la entrega de registros. La función vinculada a un servicio que AWS crea CloudWatch los registros usa esta etiqueta para conceder permisos a todas las transmisiones de entrega de Firehose. Si elimina esta etiqueta, el rol vinculado al servicio no podrá entregar registros al flujo de Firehose. Para ver un ejemplo de una política de IAM que muestre los permisos que incluye el rol vinculado a un servicio, consulta los roles de [ IAM utilizados para los permisos de recursos en la Guía del usuario de Amazon. ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-infrastructure-V2-Firehose.html) * CloudWatch *

```
{
  "BrokerLogs": {
    "S3": {
      "Bucket": "amzn-s3-demo-bucket",
      "Prefix": "ExamplePrefix",
      "Enabled": true
    },
    "Firehose": {
      "DeliveryStream": "ExampleDeliveryStreamName",
      "Enabled": true
    },
    "CloudWatchLogs": {
      "Enabled": true,
      "LogGroup": "ExampleLogGroupName"
    }
  }
}
```

### Configuración de los registros de agente con la API
<a name="broker-logs-api"></a>

Puedes especificar la `loggingInfo` estructura opcional en el JSON que transfieres a las operaciones o. [ CreateCluster ](https://docs.aws.amazon.com/msk/1.0/apireference/clusters.html#CreateCluster) [ UpdateMonitoring ](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-monitoring.html#UpdateMonitoring)

**nota**  
De forma predeterminada, cuando el registro de agentes está habilitado, Amazon MSK almacena los registros de `INFO` en los destinos especificados. Sin embargo, en el caso de los corredores Standard y Express, los usuarios de Apache Kafka 2.4.X y versiones posteriores pueden establecer dinámicamente el nivel de registro del agente en cualquiera de los niveles de registro de [ log4j. ](https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html) Para obtener información sobre cómo configurar dinámicamente el nivel de registro del agente, consulte [ KIP-412: Ampliar la API de administración para que admita los niveles de registro dinámicos de las aplicaciones. ](https://cwiki.apache.org/confluence/display/KAFKA/KIP-412%3A+Extend+Admin+API+to+support+dynamic+application+log+levels) Si establece el nivel de registro de forma dinámica en `DEBUG` o `TRACE`, recomendamos que utilice Amazon S3 o Firehose como destino de los registros. Si utiliza CloudWatch los registros como destino del registro y habilita `DEBUG` o `TRACE` nivela el registro de forma dinámica, Amazon MSK puede entregar una muestra de registros de forma continua. Esto puede afectar considerablemente al rendimiento del agente y solo debe utilizarse cuando el nivel de registro `INFO` no sea lo suficientemente detallado como para determinar la causa raíz del problema.

## Registros de autorizador
<a name="authorizer-logs"></a>

Los registros de autorización capturan las decisiones de autorización tomadas por su clúster de MSK. Puede usar estos registros para supervisar los patrones de acceso de los clientes y solucionar problemas de autorización. Puedes configurar tu clúster de MSK para enviar los registros de autorización a uno o más de los siguientes tipos de recursos de destino: un grupo de CloudWatch registros, un bucket de S3 o una transmisión de entrega de Firehose.

### Configura los registros de autorización mediante el AWS CLI
<a name="authorizer-logs-cli"></a>

Si utiliza los comandos `update-monitoring` o `create-cluster`, tiene la opción de especificar el parámetro `logging-info` y pasarlo a una estructura JSON como en el siguiente ejemplo. En este JSON, los tres tipos de destino son opcionales.

```
{
  "AuthorizerLogs": {
    "S3": {
      "Bucket": "amzn-s3-demo-bucket",
      "Prefix": "ExamplePrefix",
      "Enabled": true
    },
    "Firehose": {
      "DeliveryStream": "ExampleDeliveryStreamName",
      "Enabled": true
    },
    "CloudWatchLogs": {
      "Enabled": true,
      "LogGroup": "ExampleLogGroupName"
    }
  }
}
```

### Configure los registros del autorizador mediante la API
<a name="authorizer-logs-api"></a>

Puedes especificar la `loggingInfo` estructura opcional en el JSON que transfieres a las [ UpdateMonitoring ](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-monitoring.html#UpdateMonitoring) operaciones [ CreateCluster ](https://docs.aws.amazon.com/msk/1.0/apireference/clusters.html#CreateCluster) o.

### Permisos necesarios
<a name="broker-logs-perms"></a>

Para configurar un destino para los registros de Amazon MSK, la identidad de IAM que utilice para las acciones de Amazon MSK debe tener los permisos descritos en la política. [AWS política gestionada: AmazonMSKFullAccess](security-iam-awsmanpol-AmazonMSKFullAccess.md) 

Para transmitir los registros a un bucket de S3, también necesita el permiso. `s3:PutBucketPolicy` Para obtener información acerca de las políticas de bucket de S3, consulte [¿Cómo agrego una política de bucket de S3?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-bucket-policy.html) en la Guía del usuario de Amazon S3. Para obtener información acerca de las políticas de IAM en general, consulte [Administración de accesos](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) en la Guía del usuario de IAM. 

### Política de claves de KMS obligatoria para su uso con SSE-KMS cubos
<a name="sse-kms-buckets"></a>

Si habilitó el cifrado del lado del servidor para su bucket de S3 mediante AWS KMS-managed keys (SSE-KMS) con una clave gestionada por el cliente, añada lo siguiente a la política de claves de su clave de KMS para que Amazon MSK pueda escribir registros en el bucket.

```
{
  "Sid": "Allow Amazon MSK to use the key.",
  "Effect": "Allow",
  "Principal": {
    "Service": [
      "delivery.logs.amazonaws.com"
    ]
  },
  "Action": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:DescribeKey"
  ],
  "Resource": "*"
}
```

### Configure los registros mediante el Consola de administración de AWS
<a name="broker-logs-console"></a>

Si va a crear un clúster nuevo, busque el ** encabezado Entrega de registros del ** Broker ** o ** del Authorizer en la ** sección ** Supervisión. Puede especificar los destinos a los que desea que Amazon MSK entregue sus registros. 

Para un clúster existente, elija el clúster de la lista de clústeres y, a continuación, elija la pestaña **Propiedades**. Desplácese hacia abajo hasta la sección **Envío de registros** y, a continuación, elija el botón **Editar**. Puede especificar los destinos a los que desea que Amazon MSK entregue sus registros.