

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.

# Monitorización AWS IoT
<a name="monitoring_overview"></a>

La supervisión es una parte importante del mantenimiento de la confiabilidad, la disponibilidad y el rendimiento de AWS IoT sus AWS soluciones.

Le recomendamos encarecidamente que recopile datos de supervisión de todas las partes de su AWS solución para facilitar la depuración de una falla multipunto, si se produce alguna. Comience por crear un plan de monitoreo que responda a las siguientes preguntas. Si no está seguro de cómo responderlas, puede continuar [habilitando el registro](configure-logging.md) y estableciendo las líneas base de rendimiento.
+ ¿Cuáles son los objetivos de la monitorización?
+ ¿Qué recursos va a monitorizar?
+ ¿Con qué frecuencia va a monitorizar estos recursos?
+ ¿Qué herramientas de monitorización va a utilizar?
+ ¿Quién se encargará de realizar las tareas de supervisión?
+ ¿Quién debería recibir una notificación cuando surjan problemas?

El siguiente paso es [habilitar el registro](configure-logging.md) y establecer una línea base del AWS IoT rendimiento normal en su entorno midiendo el rendimiento en distintos momentos y bajo diferentes condiciones de carga. Mientras supervisa AWS IoT, conserve los datos de supervisión históricos para poder compararlos con los datos de rendimiento actuales. Esto le ayudará a identificar patrones de rendimiento normales y anomalías de rendimiento, así como a idear métodos para abordarlos.

Para establecer su rendimiento de referencia AWS IoT, debe supervisar estas métricas desde el principio. Siempre puede monitorear más métricas más adelante.
+  [`PublishIn.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`PublishOut.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`Subscribe.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`Ping.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`Connect.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`GetThingShadow.Accepted`](metrics_dimensions.md#shadow-metrics) 
+  [`UpdateThingShadow.Accepted`](metrics_dimensions.md#shadow-metrics) 
+  [`DeleteThingShadow.Accepted`](metrics_dimensions.md#shadow-metrics) 
+  [`RulesExecuted`](metrics_dimensions.md#iot-metrics) 

Los temas de esta sección pueden ayudarlo a iniciar el registro y el monitoreo de AWS IoT.

**Topics**
+ [Configure el AWS IoT registro](configure-logging.md)
+ [Supervisa AWS IoT las alarmas y las métricas con Amazon CloudWatch](monitoring-cloudwatch.md)
+ [Supervise AWS IoT mediante registros CloudWatch](cloud-watch-logs.md)
+ [Sube registros del lado del dispositivo a Amazon CloudWatch](upload-device-logs-to-cloudwatch.md)
+ [Registrar las llamadas a la AWS IoT API mediante AWS CloudTrail](iot-using-cloudtrail.md)

# Configure el AWS IoT registro
<a name="configure-logging"></a>

Debe habilitar el registro mediante la AWS IoT consola, la CLI o la API antes de poder supervisar y registrar AWS IoT la actividad. Puede configurar el registro AWS IoT en tres niveles: nivel de cuenta, nivel de evento o nivel específico de recursos. El registro a nivel de eventos y de recursos específicos está disponible exclusivamente con el registro V2. Los clientes que utilizan el registro de la versión 1 deben realizar una migración a la versión 2 para acceder a estas funciones. Consulte [los detalles](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#migration-v1-v2). 

Al considerar cómo configurar el AWS IoT registro, la configuración del registro a nivel de cuenta determina cómo se registrará la AWS IoT actividad, a menos que se especifique lo contrario. Para empezar, es posible que desee obtener registros detallados con un [nivel de registro](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#log-level) predeterminado de INFO o DEBUG. Tras revisar los registros iniciales, puede cambiar el nivel de registro predeterminado a un nivel menos detallado, como WARN o ERROR, a nivel de cuenta o evento, y establecer un nivel de registro más detallado y específico para los recursos que puedan necesitar más atención. Los niveles de registro se pueden cambiar cuando lo desee. 

En este tema se describe el inicio de sesión en la nube. AWS IoT Para obtener información sobre el registro y la supervisión del lado del dispositivo, consulte [Cargar registros del lado del dispositivo](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch.html) a. CloudWatch

Para obtener información sobre el registro y la supervisión AWS IoT Greengrass, consulte [Registro](https://docs.aws.amazon.com/greengrass/v2/developerguide/logging-and-monitoring.html) y supervisión. AWS IoT Greengrass

## Configurar el inicio de sesión en V2 AWS IoT
<a name="configuring-v2-logging"></a>

### Determinar la versión de registro
<a name="determing-your-logging-version"></a>

La [LoggingOptions API GetV2](https://docs.aws.amazon.com/iot/latest/apireference/API_GetV2LoggingOptions.html) devuelve un valor NotConfiguredException si el registro de V2 no está habilitado. Este error se produce cuando se utiliza el registro de la V1 o no se ha configurado ningún registro. 

### Comprender las funciones de registro de la versión 2
<a name="understanding-v2-logging-features"></a>

El registro V2 ofrece dos capacidades clave: el registro a nivel de eventos y el registro de recursos específicos. El registro a nivel de eventos permite una configuración de registro específica con niveles de registro y destinos de grupos de registros personalizables. CloudWatch El registro de recursos específicos le permite filtrar los registros por grupo de cosas, IP de origen, ID de cliente o ID principal. En conjunto, estas características proporcionan un control granular y una visibilidad completa de las operaciones de IoT, lo que mejora la capacidad de búsqueda de registros y reduce los costos al eliminar la actividad de registro innecesaria. 

### Migración de V1 a V2
<a name="migration-v1-v2"></a>

Puede migrar al registro de V2 mediante la LoggingOptions API de SetV2 mediante la AWS [CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-options.html) o el SDK. Tras la migración, enruta AWS IoT automáticamente todos los registros al grupo de CloudWatch registros «AWSIotLogsV2». Importante: Si sus aplicaciones o recursos posteriores consumen información de los «AWSIotregistros», actualícelos para que utilicen la ruta del grupo de registros correspondiente. 

## Configuración del rol y la política de registro
<a name="configure-logging-role-and-policy"></a>

 Antes de habilitar el inicio de sesión AWS IoT, debe crear un rol de IAM y una política que permita escribir actividades AWS IoT de AWS IoT registro en grupos de registros en su CloudWatch nombre. También puedes generar un rol de IAM con las políticas necesarias en la [sección Registros de la AWS IoT consola](https://console.aws.amazon.com/iot/home#/settings/logging). 

**nota**  
Antes de habilitar el AWS IoT registro, asegúrese de entender los permisos de acceso a los CloudWatch registros. Los usuarios con acceso a CloudWatch los registros pueden ver la información de depuración de sus dispositivos. Para obtener más información, consulte [Autenticación y control de acceso para Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/auth-and-access-control-cw.html).  
Si espera que se produzcan patrones de tráfico elevados AWS IoT Core debido a las pruebas de carga, considere la posibilidad de deshabilitar el registro de IoT para evitar la limitación. Si se detecta mucho tráfico, es posible que nuestro servicio deshabilite el inicio de sesión en su cuenta.

A continuación, se muestra cómo crear una función y una política de registro para los recursos. AWS IoT Core 

### Creación de un rol de registro
<a name="create-logging-role"></a>

Para crear un rol de registro, abra la página [Centro de roles de la consola de IAM](https://console.aws.amazon.com/iam/home#/roles) y elija **Crear rol**. 

1. En **Seleccionar tipo de entidad de confianza**, elija **Servicio de AWS **. A continuación, seleccione **IoT** en **Caso de uso**. Si no ve **IoT**, introduzca y busque **IoT** en el menú desplegable **Casos de uso para otros servicios de AWS :**. Seleccione **Siguiente**. 

1. En la página **Añadir permisos**, verá las políticas que se asocian automáticamente al rol de servicio. Elija **Siguiente**. 

1. En la página **Nombrar, revisar y crear**, introduzca un **Nombre de rol** y **Descripción de rol** para el rol y, a continuación, elija **Crear rol**. 

### Política de rol de registro
<a name="logging-role-policy"></a>

Los siguientes documentos de política proporcionan la política de roles y la política de confianza que AWS IoT permiten enviar entradas de registro CloudWatch en su nombre. Si configura el registro a nivel de eventos con un grupo de CloudWatch registros personalizado, debe actualizar la política de roles para incluir el ARN del recurso personalizado. 

Si también se te permite AWS IoT Core para LoRaWAN enviar entradas de registro, verás un documento de política creado para ti en el que se registran ambas actividades. 

**nota**  
Estos documentos se crearon para usted cuando creó el rol de registro. Los documentos tienen variables y * `${partition}`, * * `${region}` ** `${accountId}` *, que debes reemplazar por tus valores.  
Sustituya la partición por la partición de la región.
Sustituya la AWS región por la región que utilice. Asegúrese de usar la misma AWS región que usó para configurar la AWS CLI en su dispositivo.
Sustituya account-id por su ID de AWS cuenta.

Política de roles:

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:PutMetricFilter",
                "logs:PutRetentionPolicy",
                "iot:GetLoggingOptions",
                "iot:SetLoggingOptions",
                "iot:SetV2LoggingOptions",
                "iot:GetV2LoggingOptions",
                "iot:SetV2LoggingLevel",
                "iot:ListV2LoggingLevels",
                "iot:DeleteV2LoggingLevel"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:123456789012:log-group:AWSIotLogsV2:*"
            ]
        }
    ]
}
```

Política de confianza para registrar únicamente AWS IoT Core la actividad:

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "iot.amazonaws.com"
        },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

AWS IoT Es posible que el registro no pueda publicar el registro en CloudWatch Logs debido a que los permisos de rol de IAM son insuficientes. Cuando esto ocurra, compruebe [las métricas de CloudWatch registro](https://docs.aws.amazon.com/iot/latest/developerguide/metrics_dimensions.html#logging-metrics) para investigar y solucionar los errores.

## Configure el registro en la AWS IoT (consola)
<a name="configure-logging-console"></a>

En esta sección se describe cómo configurar el AWS IoT registro mediante la AWS IoT consola. Puede configurar el registro a nivel de cuenta, de eventos y de recursos específicos.

**AWS IoT Para configurar el registro:**

1. Inicie sesión en la AWS IoT consola. Para obtener más información, consulte [Abre la AWS IoT consola](setting-up.md#iot-console-signin).

1. En el panel de navegación izquierdo, selecciona **Registros** (anteriormente, una sección en Configuración). 

1. Configura el registro a nivel de cuenta: el registro a nivel de cuenta se aplica a toda tu AWS IoT flota (dispositivos o terminales), a menos que lo anule la configuración a nivel de evento o de recursos específicos.

   1. **En Registro a nivel de cuenta, selecciona Administrar el registro a nivel de cuenta para realizar actualizaciones.** 

   1. Selecciona la casilla de verificación «Habilitar el registro» para empezar a enviar los registros. CloudWatch Si la opción «Activar registro» está desactivada, no AWS IoT se enviará ningún CloudWatch registro a los grupos de registros, independientemente de las configuraciones de registro a nivel de eventos o recursos. 

   1. En Función de **registro de IAM, selecciona una función** existente de la lista desplegable. Puede **ver los detalles del rol para inspeccionar los** permisos del rol. También puede seleccionar **Crear un nuevo rol** para configurar un nuevo rol de IAM. La función de registro proporciona políticas que permiten AWS IoT enviar entradas de registro CloudWatch en su nombre. Si configura el registro a nivel de eventos con un grupo de CloudWatch registros personalizado, debe actualizar la política de roles para incluir el ARN de este grupo de registros. 

   1. Elija el **nivel de registro predeterminado** que corresponda al [nivel de detalle de](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#log-level) las entradas de registro que desea que aparezcan en los registros. CloudWatch Nota: El nivel de registro «DEBUG» es el que proporciona más detalles, pero aumenta CloudWatch los costes. CloudWatch Los destinos de los grupos de registros no se pueden configurar a nivel de cuenta. Sin embargo, puede especificar grupos de registros personalizados para tipos de eventos individuales, tal y como se describe en la siguiente sección. 

   1. Seleccione **Actualizar registro** para guardar los cambios. 

1. El registro a nivel de eventos le permite capturar de forma selectiva los registros de los eventos relevantes y dirigirlos a grupos de registros específicos CloudWatch . Esto le brinda la flexibilidad de organizar los registros por casos de uso para una mejor visibilidad, compartirlos con diferentes audiencias y reducir los CloudWatch costos al habilitar los registros y establecer los niveles de registro en función de la gravedad de los eventos. 

   Configure el registro a **nivel de eventos: el registro** a nivel de eventos captura AWS IoT eventos específicos, como los intentos de autenticación del cliente. Estos ajustes anulan el registro a nivel de cuenta.

   1. En la sección **Registro a nivel de eventos, selecciona Administrar el registro** **a nivel de eventos para realizar actualizaciones**. 

   1. De forma predeterminada, los tipos de eventos heredan la configuración de registro a nivel de cuenta. Nota: Cuando se configura el registro específico de un recurso, anula la configuración a nivel de cuenta y evento. 

   1. Para modificar la configuración de eventos individuales, haga clic en el valor de la fila de eventos correspondiente. Puede ajustar tanto el nivel de registro como el destino del grupo de CloudWatch registros. Al especificar un destino de grupo de CloudWatch registros personalizado, debe comprobar que la política de roles de IAM incluya los permisos para el nuevo grupo de registros. Si no se actualiza la política de roles, se AWS IoT impedirá escribir registros en el grupo de registros personalizado. Tras realizar la selección, haga clic en la marca de verificación para confirmarla. La columna **«Está modificado»** mostrará «Sí» para indicar los cambios pendientes. 

   1. Haga clic en **Actualizar registro** para aplicar los cambios o seleccione **Cancelar** para descartarlos. 

1. Configurar anulaciones específicas de un recurso: las anulaciones específicas de un recurso aplican una configuración de registro a los recursos seleccionados. Un recurso puede ser un grupo de cosas, una IP de origen, un ID de cliente o un ID principal. La configuración de registro específica del recurso anula la configuración a nivel de cuenta y a nivel de evento. Cuando está habilitada, genera registros para todos los tipos de eventos en el nivel de registro configurado para los recursos especificados. Por ejemplo, puede configurar el registro a nivel de depuración para una cosa específica y, al mismo tiempo, mantener el registro a nivel de información para todas las demás cosas. 

   1. Selecciona **Añadir anulaciones específicas de un recurso en la sección Anulaciones específicas** de un recurso. 

   1. Elija un destino de registro: grupo de cosas, IP de origen, ID de cliente o ID principal. 

   1. Introduzca el valor objetivo de registro correspondiente al tipo de objetivo seleccionado. 

   1. Seleccione el nivel de registro deseado en el menú desplegable de la sección Nivel de registro específico del recurso. 

   1. Haga clic en **Enviar** para añadir la modificación o en **Cancelar** para descartar los cambios. 

   1. Para modificar una anulación específica de un recurso existente, seleccione la casilla de verificación situada junto al recurso y haga clic en «Eliminar» para eliminar la anulación o en «Editar» para modificarla. 

Después de habilitar el registro, visite [Visualización AWS IoT de los registros en la CloudWatch consola](cloud-watch-logs.md#viewing-logs) para obtener más información sobre cómo ver las entradas del registro.

## Configurar el inicio de sesión a nivel de cuenta y evento ( AWS IoT CLI)
<a name="global-logging-cli"></a>

En esta sección se describe cómo configurar el registro global AWS IoT mediante la CLI.

Si lo desea, puede configurar el registro a nivel de eventos. El registro a nivel de eventos captura la información de registro a nivel de evento, como los eventos de autenticación y autorización o de creación de certificados. Puede personalizar tanto el nivel de registro como los destinos de los grupos de CloudWatch registros a nivel de evento. El registro a nivel de eventos funciona a un nivel más específico en comparación con el registro a nivel de cuenta y, por lo tanto, anula la configuración del registro a nivel de cuenta. Este enfoque jerárquico le permite mantener diferentes estrategias de registro para diferentes tipos de eventos en función de su importancia operativa y consideraciones de costo. 

**nota**  
Necesita el nombre de recurso de Amazon (ARN) del rol que desea utilizar. Si necesita crear un rol para usar en el registro, consulte [Creación de un rol de registro](#create-logging-role) antes de continuar. Al especificar un grupo de CloudWatch registros personalizado para cualquier tipo de evento, asegúrese de que su función de registro tenga los permisos necesarios para el grupo de registros de destino.   
 La entidad principal que se utiliza para realizar la llamada a la API debe tener [Transmisión de los permisos de rol](pass-role.md) para el rol de registro. 

También puede realizar este procedimiento con la API mediante los métodos de la AWS API que corresponden a los comandos CLI que se muestran aquí. 

**Para usar la CLI para configurar el registro predeterminado para AWS IoT**

1. Utilice el comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-options.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-options.html) para establecer las opciones de registro para su cuenta.

   ```
   aws iot set-v2-logging-options \
       --event-configurations event-configuration-list \
       --role-arn logging-role-arn \
       --default-log-level log-level
   ```

   donde:  
**--role-arn**  
El ARN del rol que otorga AWS IoT permiso para escribir en tus registros en CloudWatch Logs. Para la configuración inicial, es necesaria la configuración del Role-ARN.   
**--default-log-level**  
El [nivel de registro](#log-level) que se debe usar. Los valores válidos son:`ERROR`,, `WARN``INFO`, `DEBUG` o. `DISABLED` Default-log-levella configuración es necesaria para la configuración inicial.   
**--no-disable-all-logs**  
Un parámetro opcional que permite todos los AWS IoT registros. Utilice este parámetro para habilitar el registro cuando esté deshabilitado actualmente.  
 **--disable-all-logs**   
Parámetro opcional que desactiva todos los AWS IoT registros. Utilice este parámetro para deshabilitar el registro cuando esté habilitado actualmente.  
**--event-configurations**  
Este parámetro es opcional y le permite personalizar la configuración de registro para tipos de eventos individuales:  
   + EventType: el tipo de evento que anula la configuración a nivel de cuenta
   + LogLevel: anula la configuración a nivel de cuenta con DEBUG, INFO, ERROR, WARN o DISABLED
   + LogDestination: especifique un grupo de registros personalizado para la entrega de registros CloudWatch 

   Puede configurar el nivel de registro y el destino del registro de forma independiente para cada tipo de evento. Si no se especifica, los eventos heredarán la configuración a nivel de cuenta

   ```
   aws iot set-v2-logging-options \
       --event-configurations "[{\"eventType\":\"Publish-In\",\"logLevel\":\"INFO\",\"logDestination\":\"examplePublishInLogGroup\"}]"
   ```

1. Utilice el comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/get-v2-logging-options.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/get-v2-logging-options.html) para obtener las opciones de registro actuales.

   ```
   aws iot get-v2-logging-options \
       --verbose
   ```

   donde:  
**--verbose**  
Parámetro opcional que permite recuperar todos los tipos de eventos y sus configuraciones. 

Después de habilitar el registro, visite [Visualización AWS IoT de los registros en la CloudWatch consola](cloud-watch-logs.md#viewing-logs) para obtener más información sobre cómo ver las entradas del registro.

**nota**  
AWS IoT sigue admitiendo comandos antiguos (**set-logging-options**y**get-logging-options**) para configurar y obtener el registro global en su cuenta. Tenga en cuenta que, cuando se utilizan estos comandos, los registros resultantes contienen texto sin formato, en lugar de cargas JSON y que la latencia de registro normalmente es mayor. No se realizarán mejoras en la implementación de estos comandos más antiguos. Le recomendamos que utilice las [versiones «v2"](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#migration-v1-v2) para configurar las opciones de registro y, cuando sea posible, que cambie las aplicaciones antiguas que utilizan las versiones anteriores.

## Configurar anulaciones específicas de recursos en (CLI) AWS IoT
<a name="fine-logging-cli"></a>

En esta sección se describe cómo configurar las anulaciones de recursos específicos AWS IoT mediante la CLI. Las anulaciones específicas de un recurso permiten especificar un nivel de registro para un recurso específico identificado por grupo de cosas, ID de cliente, IP de origen o ID principal. Cuando el registro específico de un recurso está habilitado, anula la configuración a nivel de cuenta y a nivel de evento. Todos los tipos de eventos generarán registros para el recurso especificado en el nivel de registro configurado, incluso si esos eventos están deshabilitados en las configuraciones a nivel de evento. 

Los grupos de objetos pueden contener otros grupos de objetos para crear una relación jerárquica. Este procedimiento describe cómo configurar el registro de un solo grupo de objetos. Puede aplicar este procedimiento al grupo de objetos principal de una jerarquía para configurar el registro de todos los grupos de objetos de la jerarquía. También puede aplicar este procedimiento a un grupo de objetos secundario para anular la configuración de registro de su principal.

Un objeto puede ser miembro de un grupo de objetos. Esta pertenencia permite al objeto heredar las configuraciones, las políticas y la configuración aplicadas al grupo de objetos. Los grupos de objetos se utilizan para administrar y aplicar la configuración a varios objetos de forma colectiva, en lugar de tratar cada uno de ellos de forma individual. Cuando su ID de cliente coincida con el nombre de la cosa, AWS IoT Core asociará automáticamente la sesión del cliente con el recurso de la cosa correspondiente. Esto permite que la sesión del cliente herede las configuraciones y los ajustes aplicados a los grupos de objetos a los que pertenece el objeto, incluidos los niveles de registro. Si el ID del cliente no coincide con el nombre del objeto, puede habilitar la asociación de objeto exclusiva para establecer dicha asociación. Para obtener más información, consulte [Asociar cualquier AWS IoT cosa a una conexión de cliente MQTT](exclusive-thing.md) .

Además de los grupos de objetos, también puede registrar los destinos, como el ID de cliente, la IP de origen y el ID de entidad principal de un dispositivo.

**nota**  
Necesita el nombre de recurso de Amazon (ARN) del rol que desea utilizar. Si necesita crear un rol para usar en el registro, consulte [Creación de un rol de registro](#create-logging-role) antes de continuar.  
La entidad principal que se utiliza para realizar la llamada a la API debe tener [Transmisión de los permisos de rol](pass-role.md) para el rol de registro. 

También puede realizar este procedimiento con la API mediante los métodos de la AWS API que corresponden a los comandos CLI que se muestran aquí. 

**Para usar la CLI para configurar anulaciones específicas de recursos para AWS IoT**

1. Habilite el registro a nivel de cuenta antes de configurar el registro específico de un recurso mediante el siguiente comando: aws iot set-v2-logging-options

1. Utilice el [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-level.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-level.html)comando para configurar las anulaciones específicas de un recurso. Consulte el siguiente ejemplo para ver la configuración de grupos de cosas:

   ```
   aws iot set-v2-logging-level \
                 --log-target targetType=THING_GROUP,targetName=thing_group_name \
                 --log-level log_level
   ```  
**--log-target**  
El tipo y nombre del recurso para el que está configurando el registro. El valor `targetType` debe ser uno de los siguientes: `THING_GROUP` \$1 `CLIENT_ID` \$1 `SOURCE_IP` \$1 `PRINCIPAL_ID`. El valor del parámetro log-target puede ser texto, como se muestra en el ejemplo de comando anterior, o una cadena JSON, como en el ejemplo siguiente.  

   ```
   aws iot set-v2-logging-level \
                 --log-target '{"targetType": "THING_GROUP","targetName": "thing_group_name"}' \
                 --log-level log_level
   ```  
**--log-level**  
El nivel de registro utilizado cuando se generan registros para el recurso especificado. Los valores válidos son: **DEBUG**, **INFO**, **ERROR**, **WARN** y **DISABLED**.

1. Utilice el comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/list-v2-logging-levels.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/list-v2-logging-levels.html) para enumerar los niveles de registro configurados actualmente.

   ```
   aws iot list-v2-logging-levels
   ```

1. Utilice el comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/delete-v2-logging-level.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/delete-v2-logging-level.html) para eliminar un nivel de registro específico de recursos, como en los ejemplos siguientes.

   ```
   aws iot delete-v2-logging-level \
                 --target-type "THING_GROUP" \
                 --target-name "thing_group_name"
   ```

   ```
   aws iot delete-v2-logging-level \
                 --target-type=CLIENT_ID 
                 --target-name=ClientId1
   ```  
**--target-type**  
El valor `target-type` debe ser uno de los siguientes: `THING_GROUP` \$1 `CLIENT_ID` \$1 `SOURCE_IP` \$1 `PRINCIPAL_ID`.  
**--target-name**  
El nombre del grupo de objetos para el que se va a quitar el nivel de registro.

## Niveles de registro
<a name="log-level"></a>

Estos niveles de registro determinan los eventos que se registran y se aplican a los niveles de registro predeterminados y específicos de recursos.

ERROR  
Cualquier error que provoque el fracaso de una operación.  
Ejemplo: no se pudo autenticar el dispositivo debido a que el certificado expiró.  
Los registros solo incluirán información de ERROR.

WARN  
Todo lo que pueda llegar a producir incoherencias en el sistema, aunque no el fracaso de la operación.  
Ejemplo: aproximarse al límite de velocidad de mensajes.  
Los registros incluirán información de ERROR y WARN.

INFO  
Información general acerca del flujo de objetos.  
Ejemplo: un cliente se ha suscrito correctamente a un tema de MQTT.  
Los registros incluirán información de INFO, ERROR y WARN.

DEBUG  
Información que puede ser útil para depurar un problema.  
Ejemplo: IoT Rules Engine detectó un mensaje publicado en el tema de reglas «rule/test» y comenzó a ejecutarse correctamente. La regla se configura con. RepublishAction  
Los registros incluirán información de DEBUG, INFO, ERROR y WARN.

DISABLED  
Todos los registros están desactivados.

# Supervisa AWS IoT las alarmas y las métricas con Amazon CloudWatch
<a name="monitoring-cloudwatch"></a>

Puedes monitorizar el AWS IoT uso CloudWatch, que recopila y procesa datos sin procesar para AWS IoT convertirlos en métricas legibles y prácticamente en tiempo real. Estas estadísticas se registran durante un periodo de dos semanas, de forma que pueda acceder a información histórica y obtener una mejor perspectiva sobre el rendimiento de su aplicación web o servicio. De forma predeterminada, los datos de las AWS IoT métricas se envían automáticamente CloudWatch en intervalos de un minuto. Para obtener más información, consulta [¿Qué son Amazon CloudWatch, Amazon CloudWatch Events y Amazon CloudWatch Logs?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html) en la *Guía del CloudWatch usuario de Amazon*. 

## Uso de AWS IoT métricas
<a name="how_to_use_metrics"></a>

Las métricas que publica AWS IoT proporcionan información que se puede analizar de diferentes maneras. Los siguientes casos de uso se basan en una situación en la que tiene diez objetos que se conectan a Internet una vez al día. Cada día:
+ Diez cosas a las que se conectan aproximadamente AWS IoT al mismo tiempo.
+ Cada objeto se suscribe a un filtro de temas y, a continuación, espera una hora antes de desconectarse. Durante este periodo, los objetos se comunican entre sí y obtienen más información sobre el estado del mundo.
+ Cada objeto publica alguna percepción que tenga según los datos que acaba de encontrar utilizando `UpdateThingShadow`. 
+ Cada cosa se desconecta de AWS IoT.

Para ayudarlo a empezar, estos temas exploran algunas de las preguntas que podría tener.
+  [¿Cómo se me puede enviar una notificación si mis objetos no se conectan correctamente cada día?](creating_alarms.md#how_to_detect_connection_failures) 
+  [¿Cómo se me puede enviar una notificación si mis objetos no publican datos cada día?](creating_alarms.md#how_to_detect_publish_failures) 
+  [¿Cómo se me puede enviar una notificación si las actualizaciones de la sombra de mi objeto se rechazan cada día?](creating_alarms.md#detect_rejected_updates) 
+  [¿Cómo puedo crear una CloudWatch alarma para Jobs?](creating_alarms.md#cw-jobs-alarms) 

**Topics**
+ [Uso de AWS IoT métricas](#how_to_use_metrics)
+ [Creación de CloudWatch alarmas para monitorizar AWS IoT](creating_alarms.md)
+ [AWS IoT métricas y dimensiones](metrics_dimensions.md)

# Creación de CloudWatch alarmas para monitorizar AWS IoT
<a name="creating_alarms"></a>

Puede crear una CloudWatch alarma que envíe un mensaje de Amazon SNS cuando la alarma cambie de estado. Una alarma vigila una métrica individual durante un periodo de tiempo que usted especifica. Cuando el valor de la métrica supera un umbral determinado en un número de períodos de tiempo, se realizan una o varias acciones. La acción puede ser una notificación que se envía a un tema de Amazon SNS o a una política de Auto Scaling. Las alarmas activan acciones únicamente en caso de cambios de estado sostenidos. CloudWatch las alarmas no activan acciones simplemente porque se encuentren en un estado determinado; el estado debe haber cambiado y mantenido durante un número específico de períodos.

**Topics**
+ [¿Cómo se me puede enviar una notificación si mis objetos no se conectan correctamente cada día?](#how_to_detect_connection_failures)
+ [¿Cómo se me puede enviar una notificación si mis objetos no publican datos cada día?](#how_to_detect_publish_failures)
+ [¿Cómo se me puede enviar una notificación si las actualizaciones de la sombra de mi objeto se rechazan cada día?](#detect_rejected_updates)
+ [¿Cómo puedo crear una CloudWatch alarma para los trabajos?](#cw-jobs-alarms)

 Puede ver todas las métricas que las CloudWatch alarmas pueden monitorizar[AWS IoT métricas y dimensiones](metrics_dimensions.md). 

## ¿Cómo se me puede enviar una notificación si mis objetos no se conectan correctamente cada día?
<a name="how_to_detect_connection_failures"></a>

1. Cree un tema de Amazon SNS denominado `things-not-connecting-successfully` y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá al ARN de su tema como ` sns-topic-arn `. 

   Para obtener más información sobre cómo crear una notificación de Amazon SNS, consulte [Introducción a Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html). 

1. Cree la alarma.

   ```
   aws cloudwatch put-metric-alarm \
       --alarm-name ConnectSuccessAlarm \
       --alarm-description "Alarm when my Things don't connect successfully" \
       --namespace AWS/IoT \
       --metric-name Connect.Success \
       --dimensions Name=Protocol,Value=MQTT \
       --statistic Sum \
       --threshold 10 \
       --comparison-operator LessThanThreshold \
       --period 86400 \
       --evaluation-periods 1 \
       --alarm-actions sns-topic-arn
   ```

1. Pruebe la alarma.

   ```
   aws cloudwatch set-alarm-state --alarm-name ConnectSuccessAlarm --state-reason "initializing" --state-value OK
   ```

   ```
   aws cloudwatch set-alarm-state --alarm-name ConnectSuccessAlarm --state-reason "initializing" --state-value ALARM
   ```

1. Compruebe que la alarma aparece en la [consola de CloudWatch ](https://console.aws.amazon.com/cloudwatch). 

## ¿Cómo se me puede enviar una notificación si mis objetos no publican datos cada día?
<a name="how_to_detect_publish_failures"></a>

1. Cree un tema de Amazon SNS denominado `things-not-publishing-data` y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá al ARN de su tema como ` sns-topic-arn `. 

   Para obtener más información sobre cómo crear una notificación de Amazon SNS, consulte [Introducción a Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html). 

1. Cree la alarma.

   ```
   aws cloudwatch put-metric-alarm \
       --alarm-name PublishInSuccessAlarm\
       --alarm-description "Alarm when my Things don't publish their data \
       --namespace AWS/IoT \
       --metric-name PublishIn.Success \
       --dimensions Name=Protocol,Value=MQTT \
       --statistic Sum \
       --threshold 10 \
       --comparison-operator LessThanThreshold \
       --period 86400 \
       --evaluation-periods 1 \
       --alarm-actions sns-topic-arn
   ```

1. Pruebe la alarma.

   ```
   aws cloudwatch set-alarm-state --alarm-name PublishInSuccessAlarm --state-reason "initializing" --state-value OK
   ```

   ```
   aws cloudwatch set-alarm-state --alarm-name PublishInSuccessAlarm --state-reason "initializing" --state-value ALARM
   ```

1. Compruebe que la alarma aparece en la [consola de CloudWatch ](https://console.aws.amazon.com/cloudwatch). 

## ¿Cómo se me puede enviar una notificación si las actualizaciones de la sombra de mi objeto se rechazan cada día?
<a name="detect_rejected_updates"></a>

1. Cree un tema de Amazon SNS denominado `things-shadow-updates-rejected` y registre su nombre de recurso de Amazon (ARN). Este procedimiento se referirá al ARN de su tema como ` sns-topic-arn `. 

   Para obtener más información sobre cómo crear una notificación de Amazon SNS, consulte [Introducción a Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html). 

1. Cree la alarma.

   ```
   aws cloudwatch put-metric-alarm \
       --alarm-name UpdateThingShadowSuccessAlarm \
       --alarm-description "Alarm when my Things Shadow updates are getting rejected" \
       --namespace AWS/IoT \
       --metric-name UpdateThingShadow.Success \
       --dimensions Name=Protocol,Value=MQTT \
       --statistic Sum \
       --threshold 10 \
       --comparison-operator LessThanThreshold \
       --period 86400 \
       --unit Count \
       --evaluation-periods 1 \
       --alarm-actions sns-topic-arn
   ```

1. Pruebe la alarma.

   ```
   aws cloudwatch set-alarm-state --alarm-name UpdateThingShadowSuccessAlarm --state-reason "initializing" --state-value OK
   ```

   ```
   aws cloudwatch set-alarm-state --alarm-name UpdateThingShadowSuccessAlarm --state-reason "initializing" --state-value ALARM
   ```

1. Compruebe que la alarma aparece en la [consola de CloudWatch ](https://console.aws.amazon.com/cloudwatch). 

## ¿Cómo puedo crear una CloudWatch alarma para los trabajos?
<a name="cw-jobs-alarms"></a>

El servicio Jobs proporciona CloudWatch métricas para que pueda supervisar sus trabajos. Puede crear CloudWatch alarmas para monitorizar cualquier tipo de alarma[Métricas de trabajos](metrics_dimensions.md#jobs-metrics).

El siguiente comando crea una CloudWatch alarma para supervisar el número total de ejecuciones de tareas fallidas de Job *SampleOTAJob* y le notifica cuando se han producido errores en más de 20 ejecuciones de tareas. La alarma monitoriza la métrica de trabajos `FailedJobExecutionTotalCount` comprobando el valor notificado cada 300 segundos. Se activa cuando un único valor notificado es mayor que 20, lo que significa que hubo más de 20 ejecuciones de trabajo fallidas desde que se inició el trabajo. Cuando la alarma se apaga, envía una notificación al tema de Amazon SNS proporcionado.

```
aws cloudwatch put-metric-alarm \
    --alarm-name TotalFailedJobExecution-SampleOTAJob \
    --alarm-description "Alarm when total number of failed job execution exceeds the threshold for SampleOTAJob" \
    --namespace AWS/IoT \
    --metric-name FailedJobExecutionTotalCount \
    --dimensions Name=JobId,Value=SampleOTAJob \
    --statistic Sum \
    --threshold 20 \
    --comparison-operator GreaterThanThreshold \
    --period 300 \
    --unit Count \
    --evaluation-periods 1 \
    --alarm-actions arn:aws:sns:<AWS_REGION>:<AWS_ACCOUNT_ID>:SampleOTAJob-has-too-many-failed-job-ececutions
```

El siguiente comando crea una CloudWatch alarma para supervisar el número de ejecuciones fallidas de Job *SampleOTAJob* en un período determinado. A continuación, lo notifica cuando más de cinco ejecuciones de un trabajo han fracasado durante ese periodo. La alarma monitoriza la métrica de trabajos `FailedJobExecutionCount` comprobando el valor notificado cada 3600 segundos. Se activa cuando un único valor notificado es mayor que 5, lo que significa que hubo más de 5 ejecuciones de trabajo fallidas en la última hora. Cuando la alarma se apaga, envía una notificación al tema de Amazon SNS proporcionado.

```
aws cloudwatch put-metric-alarm \
    --alarm-name FailedJobExecution-SampleOTAJob \
    --alarm-description "Alarm when number of failed job execution per hour exceeds the threshold for SampleOTAJob" \
    --namespace AWS/IoT \
    --metric-name FailedJobExecutionCount \
    --dimensions Name=JobId,Value=SampleOTAJob \
    --statistic Sum \
    --threshold 5 \
    --comparison-operator GreaterThanThreshold \
    --period 3600 \
    --unit Count \
    --evaluation-periods 1 \
    --alarm-actions arn:aws:sns:<AWS_REGION>:<AWS_ACCOUNT_ID>:SampleOTAJob-has-too-many-failed-job-ececutions-per-hour
```

# AWS IoT métricas y dimensiones
<a name="metrics_dimensions"></a>

Cuando interactúas con AWS IoTél, el servicio envía métricas y dimensiones a CloudWatch cada minuto. Puedes usar AWS IoT, usar la CloudWatch consola o AWS CLI ver estas métricas.

Para ver las métricas mediante la CloudWatch consola, abra la [CloudWatch consola](https://console.aws.amazon.com/cloudwatch). En el panel de navegación, elija **Métricas** y, a continuación, **Todas las métricas**. En la pestaña **Examinar**, busque AWS IoT para ver la lista de métricas. Las métricas se agrupan en primer lugar por el espacio de nombres de servicio y, a continuación, por las diversas combinaciones de dimensiones dentro de cada espacio de nombres.

Para ver las métricas mediante AWS CLI, ejecute el siguiente comando.

```
1. aws cloudwatch list-metrics --namespace "AWS/IoT"
```

**Topics**
+ [AWS IoT métricas](#iot-metrics)
+ [AWS IoT Core métricas de proveedores de credenciales](#credential-provider-metrics)
+ [Métricas de autenticación](#authentication-metrics)
+ [Métricas de la asociación de OCSP de certificados de servidor](#server-ocsp-metrics)
+ [Métricas de reglas](#rulemetrics)
+ [Métricas de acciones de reglas](#rule-action-metrics)
+ [Métricas específicas de acciones HTTP](#http-action-metrics)
+ [Métricas del agente de mensajes](#message-broker-metrics)
+ [Métricas de sombras de dispositivos](#shadow-metrics)
+ [Registrar métricas](#logging-metrics)
+ [Métricas de trabajos](#jobs-metrics)
+ [Métricas de auditoría de Device Defender](#device-defender-audit-metrics)
+ [Métricas de detección de Device Defender](#device-defender-detect-metrics)
+ [Métricas de aprovisionamiento de dispositivos](#provisioning-metrics)
+ [LoRamétricas de WAN](#lorawan-metrics)
+ [Métricas de indexación de flotas](#fleet-indexing-metrics)
+ [Dimensiones de las métricas](#aws-iot-metricdimensions)

## AWS IoT métricas
<a name="iot-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `AddThingToDynamicThingGroupsFailed`   |  Número de eventos de error asociados a la incorporación de un objeto en un grupo de objetos dinámico. La dimensión `DynamicThingGroupName` contiene el nombre de los grupos dinámicos que no pudieron agregar objetos correctamente.  | 
|   `NumLogBatchesFailedToPublishThrottled`   |  El lote de eventos de registro único que no se pudieron publicar debido a errores de limitación controlada.  | 
|   `NumLogEventsFailedToPublishThrottled`   |  El número de eventos de registro en el lote que no se pudieron publicar debido a errores de limitación controlada.  | 

## AWS IoT Core métricas de proveedores de credenciales
<a name="credential-provider-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `CredentialExchangeSuccess`   |  El número de solicitudes `AssumeRoleWithCertificate` correctas al proveedor de credenciales de AWS IoT Core .  | 

## Métricas de autenticación
<a name="authentication-metrics"></a>

**nota**  
Las métricas de autenticación se muestran en la CloudWatch consola, en **Protocol Metrics**. 


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `Connection.AuthNError`   | El número de intentos de conexión que se AWS IoT Core rechazan debido a errores de autenticación. Esta métrica solo tiene en cuenta las conexiones que envían una cadena de indicación del nombre del servidor (SNI) que coincide con un punto de conexión de su Cuenta de AWS. Esta métrica incluye los intentos de conexión desde orígenes externos, como herramientas de escaneo de internet o actividades de sondeo. La dimensión Protocol contiene el protocolo usado para enviar el intento de conexión. | 

## Métricas de la asociación de OCSP de certificados de servidor
<a name="server-ocsp-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
| Recuperar OCSPStaple datos. ¿Éxito | La respuesta del OCSP se ha recibido y procesado correctamente. Esta respuesta se incluirá durante el protocolo de enlace de TLS para el dominio configurado. La dimensión DomainConfigurationName contiene el nombre del dominio configurado con la asociación de OCSP de certificados de servidor activada. | 

## Métricas de reglas
<a name="rulemetrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `ParseError`   |  El número de errores de análisis JSON que se produjeron en los mensajes publicados en un tema en el que hay una regla a la escucha. La dimensión `RuleName` contiene el nombre de la regla.  | 
|   `RuleExecutionThrottled`   |  El número de mensajes limitados por el motor de reglas por un comportamiento malintencionado o porque el número de mensajes supera el límite del motor de reglas. La dimensión `RuleName` contiene el nombre de la regla que activar.  | 
|   `RuleNotFound`   |  No se ha podido encontrar la regla que activar. La dimensión `RuleName` contiene el nombre de la regla.  | 
|   `RulesExecuted`   |  El número de AWS IoT reglas ejecutadas.  | 
|   `TopicMatch`   |  El número de mensajes entrantes publicados en un tema en el que hay una regla a la escucha. La dimensión `RuleName` contiene el nombre de la regla.  | 

## Métricas de acciones de reglas
<a name="rule-action-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `Failure`   |  El número de llamadas a una acción de regla que produjeron un error. La dimensión `RuleName` contiene el nombre de la regla que especifica la acción. La dimensión `ActionType` contiene el tipo de acción que se invocó.  | 
|   `Success`   |  El número de llamadas correctas a una acción de regla. La dimensión `RuleName` contiene el nombre de la regla que especifica la acción. La dimensión `ActionType` contiene el tipo de acción que se invocó.  | 
|  ErrorActionFailure  | El número de acciones de error fallidas. La dimensión RuleName contiene el nombre de la regla que especifica la acción. La dimensión ActionType contiene el tipo de acción que se invocó. | 
|  ErrorActionSuccess  | El número de acciones de error correctas. La dimensión RuleName contiene el nombre de la regla que especifica la acción. La dimensión ActionType contiene el tipo de acción que se invocó. | 

## Métricas específicas de acciones HTTP
<a name="http-action-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `HttpCode_Other`   |  Se genera si el código de estado de la respuesta de la web descendente no service/application es 2xx, 4xx o 5xx.  | 
|   `HttpCode_4XX`   |  Se genera si el código de estado de la respuesta de la web descendente service/application está entre 400 y 499.  | 
|   `HttpCode_5XX`   |  Se genera si el código de estado de la respuesta de la web descendente service/application está entre 500 y 599.  | 
|   `HttpInvalidUrl`   |  Se genera si una URL de punto de conexión, una vez reemplazadas las plantillas de sustitución, no comienza por `https://`.   | 
|   `HttpRequestTimeout`   |  Se genera si la web descendente service/application no devuelve la respuesta dentro del límite de tiempo de espera de la solicitud. Para obtener más información, consulte [Cuotas de servicio](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#limits_iot).   | 
|   `HttpUnknownHost`   |  Se genera si la URL es válida, pero el servicio no existe o no está accesible.  | 

## Métricas del agente de mensajes
<a name="message-broker-metrics"></a>

**nota**  
Las métricas del agente de mensajes se muestran en la CloudWatch consola, en **Protocol** Metrics. 


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `Connect.AuthError`   |  El número de solicitudes de conexión que el agente de mensajes no pudo autorizar. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `CONNECT`.  | 
|   `Connect.ClientError`   |  El número de solicitudes de conexión rechazadas porque el mensaje MQTT no cumplía los requisitos definidos en[AWS IoTCuotas de](limits-iot.md). La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `CONNECT`.  | 
|   `Connect.ClientIDThrottle`   |  El número de solicitudes de conexión que se rechazaron porque el cliente superó el límite de solicitudes de conexión permitidas para un ID de cliente específico. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `CONNECT`.  | 
|   `Connect.ServerError`   |  El número de solicitudes de conexión que fracasaron porque se produjo un error interno. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `CONNECT`.  | 
|   `Connect.Success`   |  El número de conexiones realizadas correctamente al agente de mensajes. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `CONNECT`.  | 
|   `Connect.Throttle`   |  Número de solicitudes de conexión que se rechazaron porque la cuenta superó el límite permitido. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `CONNECT`.  | 
|   `Ping.Success`   |  El número de mensajes ping recibidos por el agente de mensajes. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje ping.  | 
|   `PublishIn.AuthError`   |  El número de solicitudes de publicación que el agente de mensajes no pudo autorizar. La dimensión `Protocol` contiene el protocolo usado para publicar el mensaje. HTTP Publish no admite esta métrica.  | 
|   `PublishIn.ClientError`   |  El número de solicitudes de publicación rechazadas por el agente de mensajes porque el mensaje no cumplía los requisitos definidos en[AWS IoTCuotas de](limits-iot.md). La dimensión `Protocol` contiene el protocolo usado para publicar el mensaje.  | 
|   `PublishIn.ServerError`   |  El número de solicitudes de publicación que el agente de mensajes no pudo procesar porque se produjo un error interno. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `PublishIn.Success`   |  El número de solicitudes de publicación que el agente de mensajes procesó correctamente. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `PublishIn.Throttle`   |  El número de solicitudes de publicación que se rechazaron porque el cliente superó el límite de mensajes entrantes permitidos. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`. HTTP Publish no admite esta métrica.  | 
|   `PublishOut.AuthError`   |  El número de solicitudes de publicación realizadas por el agente de mensajes que AWS IoT no pudo autorizar. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `PublishOut.ClientError`   |  El número de solicitudes de publicación realizadas por el agente de mensajes que se rechazaron porque el mensaje no cumplía los requisitos definidos en[AWS IoTCuotas de](limits-iot.md). La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `PublishOut.Success`   |  El número de solicitudes de publicación realizadas correctamente por el agente de mensajes. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|  PublishOut.Throttle  |  El número de solicitudes de publicación que se rechazaron porque el cliente superó el límite de mensajes salientes permitidos. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `PublishRetained.AuthError`   |  El número de solicitudes de publicación con la marca `RETAIN` establecida que el agente de mensajes no pudo autorizar. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|  PublishRetained.ServerError  |  El número de solicitudes de publicación conservadas que el agente de mensajes no pudo procesar porque se produjo un error interno. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `PublishRetained.Success`   |  El número de solicitudes de publicación con la marca `RETAIN` establecida que el agente de mensajes procesó correctamente. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `PublishRetained.Throttle`   |  El número de solicitudes de publicación con la marca `RETAIN` establecida que se limitaron porque el cliente superó la velocidad de mensajes entrantes permitidos. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `PUBLISH`.  | 
|   `Queued.Success`   |  El número de mensajes almacenados que el agente de mensajes procesó correctamente para los clientes que se desconectaron de su sesión persistente. Los mensajes con una QoS de 1 se almacenan mientras un cliente con una sesión persistente está desconectado.  | 
|   `Queued.Throttle`   |  La cantidad de mensajes que no se pudieron almacenar y que se limitaron mientras los clientes con sesiones persistentes estaban desconectados. Esto ocurre cuando los clientes superan el límite de [Mensajes en cola por segundo por cuenta](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#genref_queued_messages_per_second_per_account). Los mensajes con una QoS de 1 se almacenan mientras un cliente con una sesión persistente está desconectado.  | 
|   `Queued.ServerError`   |  El número de mensajes que no se han almacenado para una sesión persistente debido a un error interno. Cuando los clientes con una sesión persistente se desconectan, se almacenan los mensajes con una calidad de servicio (QoS) igual a 1.  | 
|   `Subscribe.AuthError`   |  El número de solicitudes de suscripción realizadas por un cliente que no se pudieron autorizar. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `SUBSCRIBE`.  | 
|   `Subscribe.ClientError`   |  El número de solicitudes de suscripción que se rechazaron porque el `SUBSCRIBE` mensaje no cumplía los requisitos definidos en[AWS IoTCuotas de](limits-iot.md). La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `SUBSCRIBE`.  | 
|   `Subscribe.ServerError`   |  El número de solicitudes de suscripción que se rechazaron porque se produjo un error interno. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `SUBSCRIBE`.  | 
|   `Subscribe.Success`   |  El número de solicitudes de suscripción que el agente de mensajes procesó correctamente. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `SUBSCRIBE`.  | 
|   `Subscribe.Throttle`   |  Es el número de solicitudes de suscripción que se ha rechazado porque se han superado los límites de la tasa de solicitudes de suscripción permitidas para su Cuenta de AWS. Estos límites incluyen las suscripciones por segundo por cuenta, las suscripciones por cuenta y las suscripciones por conexión, que se describen en los [AWS IoT Core message broker and protocol limits and quotas](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#message-broker-limits). La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `SUBSCRIBE`.  | 
|  Throttle.Exceeded  | Esta métrica se mostrará CloudWatch cuando un cliente MQTT limite el número de paquetes [por segundo según los límites del nivel de conexión](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#message-broker-limits). Esta métrica no se aplica a las conexiones HTTP. | 
|   `Unsubscribe.ClientError`   |  El número de solicitudes de cancelación de suscripción que se rechazaron porque el `UNSUBSCRIBE` mensaje no cumplía los requisitos definidos en. [AWS IoTCuotas de](limits-iot.md) La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `UNSUBSCRIBE`.  | 
|   `Unsubscribe.ServerError`   |  El número de solicitudes de cancelación de suscripción que se rechazaron porque se produjo un error interno. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `UNSUBSCRIBE`.  | 
|   `Unsubscribe.Success`   |  El número de solicitudes de cancelación de suscripción que el agente de mensajes procesó correctamente. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `UNSUBSCRIBE`.  | 
|   `Unsubscribe.Throttle`   |  El número de solicitudes de cancelación de suscripción que se rechazaron porque el cliente superó el límite de solicitudes de cancelación de suscripción permitidas. La dimensión `Protocol` contiene el protocolo usado para enviar el mensaje `UNSUBSCRIBE`.   | 

## Métricas de sombras de dispositivos
<a name="shadow-metrics"></a>

**nota**  
Las métricas ocultas del dispositivo se muestran en la CloudWatch consola, en **Protocol Metrics**. 


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `DeleteThingShadow.Accepted`   |  El número de solicitudes `DeleteThingShadow` procesadas correctamente. La dimensión `Protocol` contiene el protocolo usado para realizar la solicitud.  | 
|   `GetThingShadow.Accepted`   |  El número de solicitudes `GetThingShadow` procesadas correctamente. La dimensión `Protocol` contiene el protocolo usado para realizar la solicitud.  | 
|   `ListThingShadow.Accepted`   |  El número de solicitudes `ListThingShadow` procesadas correctamente. La dimensión `Protocol` contiene el protocolo usado para realizar la solicitud.  | 
|   `UpdateThingShadow.Accepted`   |  El número de solicitudes `UpdateThingShadow` procesadas correctamente. La dimensión `Protocol` contiene el protocolo usado para realizar la solicitud.  | 

## Registrar métricas
<a name="logging-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|  `CloudwatchLogs:LogGroupCreationFailed`  |  El número de errores en las `CreateLogGroup` solicitudes. AWS IoT Logging crea un grupo de CloudWatch registros si no existe. La `LogGroup` dimensión contiene el grupo de registros utilizado para realizar la solicitud.  | 
|  `CloudwatchLogs:LogStreamCreationFailed`  |  El número de errores de `CreateLogStream` solicitud. AWS IoT Logging crea un flujo de CloudWatch registro para enviar eventos de registro. La `LogGroup` dimensión contiene el grupo de registros utilizado para realizar la solicitud.  | 
|  `CloudwatchLogs:PutRetentionPolicyFailed`  |  El número de errores de `PutRetentionPolicy` solicitud. AWS IoT Logging crea un grupo de CloudWatch registros si no existe y la política de retención se establece en 30 días. La `LogGroup` dimensión contiene el grupo de registros utilizado para realizar la solicitud.  | 
|  `CloudwatchLogs:PutLogEventsFailed`  |  El número de errores de `PutLogEvents` solicitud. La `LogGroup` dimensión contiene el grupo de CloudWatch registros utilizado para realizar la solicitud.  | 

## Métricas de trabajos
<a name="jobs-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|  `CanceledJobExecutionCount`  |  El número de ejecuciones de trabajos cuyo estado ha cambiado a `CANCELED` dentro de un período de tiempo determinado por CloudWatch. (Para obtener más información sobre CloudWatch las métricas, consulta [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)). La dimensión `JobId` contiene el ID del trabajo.  | 
|   `CanceledJobExecutionTotalCount`   |  El número total de ejecuciones de trabajo cuyo estado es `CANCELED` para el trabajo especificado. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `ClientErrorCount`   |  El número de errores de cliente generados mientras se ejecuta el trabajo. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `FailedJobExecutionCount`   |  El número de ejecuciones de trabajos cuyo estado ha cambiado a `FAILED` dentro de un período de tiempo determinado por CloudWatch. (Para obtener más información sobre CloudWatch las métricas, consulta [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)). La dimensión `JobId` contiene el ID del trabajo.  | 
|   `FailedJobExecutionTotalCount`   |  El número total de ejecuciones de trabajo cuyo estado es `FAILED` para el trabajo especificado. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `InProgressJobExecutionCount`   |  El número de ejecuciones de trabajos cuyo estado ha cambiado a `IN_PROGRESS` dentro de un período de tiempo determinado por CloudWatch. (Para obtener más información sobre CloudWatch las métricas, consulta [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)). La dimensión `JobId` contiene el ID del trabajo.  | 
|   `InProgressJobExecutionTotalCount`   |  El número total de ejecuciones de trabajo cuyo estado es `IN_PROGRESS` para el trabajo especificado. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `RejectedJobExecutionTotalCount`   |  El número total de ejecuciones de trabajo cuyo estado es `REJECTED` para el trabajo especificado. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `RemovedJobExecutionTotalCount`   |  El número total de ejecuciones de trabajo cuyo estado es `REMOVED` para el trabajo especificado. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `QueuedJobExecutionCount`   |  El número de ejecuciones de trabajos cuyo estado ha cambiado a `QUEUED` dentro de un período de tiempo determinado por CloudWatch. (Para obtener más información sobre CloudWatch las métricas, consulta [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)). La dimensión `JobId` contiene el ID del trabajo.  | 
|   `QueuedJobExecutionTotalCount`   |  El número total de ejecuciones de trabajo cuyo estado es `QUEUED` para el trabajo especificado. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `RejectedJobExecutionCount`   |  El número de ejecuciones de trabajos cuyo estado ha cambiado a `REJECTED` dentro de un período de tiempo determinado por CloudWatch. (Para obtener más información sobre CloudWatch las métricas, consulta [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)). La dimensión `JobId` contiene el ID del trabajo.  | 
|   `RemovedJobExecutionCount`   |  El número de ejecuciones de trabajos cuyo estado ha cambiado a `REMOVED` dentro de un período de tiempo determinado por CloudWatch. (Para obtener más información sobre CloudWatch las métricas, consulta [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)). La dimensión `JobId` contiene el ID del trabajo.  | 
|   `ServerErrorCount`   |  El número de errores de servidor generados mientras se ejecuta el trabajo. La dimensión `JobId` contiene el ID del trabajo.  | 
|   `SuccededJobExecutionCount`   |  El número de ejecuciones de trabajos cuyo estado ha cambiado a `SUCCESS` dentro de un período de tiempo determinado por CloudWatch. (Para obtener más información sobre CloudWatch las métricas, consulta [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)). La dimensión `JobId` contiene el ID del trabajo.  | 
|   `SuccededJobExecutionTotalCount`   |  El número total de ejecuciones de trabajo cuyo estado es `SUCCESS` para el trabajo especificado. La dimensión `JobId` contiene el ID del trabajo.  | 

## Métricas de auditoría de Device Defender
<a name="device-defender-audit-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `NonCompliantResources`   |  Número de recursos que se ha comprobado que no cumplen los requisitos de una comprobación. El sistema notifica el número de recursos no conformes en cada comprobación de cada auditoría realizada.   | 
|   `ResourcesEvaluated`   |  Número de recursos cuya conformidad se evaluó. El sistema notifica el número de recursos que se evaluaron en cada comprobación de cada auditoría realizada.   | 
|   `MisconfiguredDeviceDefenderNotification`   |  Le notifica cuando la configuración de su SNS AWS IoT Device Defender está mal configurada.  [Dimensiones](#aws-iot-metricdimensions)   | 

## Métricas de detección de Device Defender
<a name="device-defender-detect-metrics"></a>


| Métrica | Description (Descripción) | 
| --- | --- | 
|   `NumOfMetricsExported`    |  El número de métricas exportadas para una métrica de la nube, del dispositivo o personalizada. El sistema informa del número de métricas exportadas para la cuenta, respecto de una métrica específica. Esta métrica solo está disponible para los clientes que utilizan la exportación de métricas.  | 
|   `NumOfMetricsSkipped`   |  El número de métricas omitidas para una métrica de la nube, del dispositivo o personalizada. El sistema informa del número de métricas omitidas en la cuenta, respecto de una métrica específica, debido a que Device Defender Detect no tenía suficientes permisos para publicar en el tema mqtt. Esta métrica solo está disponible para los clientes que utilizan la exportación de métricas.  | 
|   `NumOfMetricsExceedingSizeLimit`   |  El número de métricas omitidas para la exportación de una métrica de la nube, del dispositivo o personalizada debido a que el tamaño supera las restricciones de tamaño de los mensajes de MQTT. El sistema informa del número de métricas omitidas para la exportación, respecto de la cuenta y de una métrica específica, debido a que el tamaño supera las restricciones de tamaño de los mensajes de MQTT. Esta métrica solo está disponible para los clientes que utilizan la exportación de métricas.  | 
|   `Violations`   |  El número de nuevas infracciones de los comportamientos del perfil de seguridad que se han encontrado desde la última vez que se realizó una evaluación. El sistema comunica el número de infracciones nuevas de la cuenta, de un perfil de seguridad específico y de un comportamiento concreto de un perfil de seguridad determinado.   | 
|   `ViolationsCleared`   |  El número de infracciones de los comportamientos del perfil de seguridad que se han resuelto desde la última vez que se realizó una evaluación. El sistema comunica el número de infracciones resueltas de la cuenta, para un perfil de seguridad específico y para un comportamiento concreto de un perfil de seguridad determinado.   | 
|   `ViolationsInvalidated`   |  El número de infracciones de los comportamientos del perfil de seguridad de las que ya no está disponible la información desde la última vez que se realizó una evaluación (debido a que el dispositivo de informe dejó de realizar informes o a que ya no se monitoriza por algún motivo). El sistema comunica el número de infracciones invalidadas de toda la cuenta, de un perfil de seguridad específico y de un comportamiento concreto de un perfil de seguridad determinado.   | 
|   `MisconfiguredDeviceDefenderNotification`   |  Le notifica cuando la configuración de SNS está mal configurada. AWS IoT Device Defender   [Dimensiones](#aws-iot-metricdimensions)   | 

## Métricas de aprovisionamiento de dispositivos
<a name="provisioning-metrics"></a>


**AWS IoT Métricas de aprovisionamiento de flota**  

| Métrica | Description (Descripción) | 
| --- | --- | 
|   `ApproximateNumberOfThingsRegistered`   |  El recuento de objetos que el aprovisionamiento de flotas ha registrado. Si bien el recuento es generalmente preciso, la arquitectura distribuida de AWS IoT Core dificulta el mantenimiento de un recuento exacto de los objetos registrados.  La estadística que se debe utilizar para esta métrica es: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/iot/latest/developerguide/metrics_dimensions.html)  Dimensiones: [ClaimCertificateId](#aws-iot-metricdimensions)   | 
|   `CreateKeysAndCertificateFailed`   |  El número de errores que se han producido por llamadas a la API de MQTT `CreateKeysAndCertificate`. La métrica se emite tanto en casos de éxito (valor = 0) como de error (valor = 1). Esta métrica se puede utilizar para realizar un seguimiento del número de certificados creados y registrados durante los CloudWatch períodos de agregación admitidos, como 5 minutos o 1 hora. Las estadísticas disponibles para esta métrica son: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/iot/latest/developerguide/metrics_dimensions.html)  | 
|   `CreateCertificateFromCsrFailed`   |  El número de errores que se han producido por llamadas a la API de MQTT `CreateCertificateFromCsr`. La métrica se emite tanto en casos de éxito (valor = 0) como de error (valor = 1). Esta métrica se puede utilizar para realizar un seguimiento del número de elementos registrados durante los CloudWatch períodos de agregación admitidos, como 5 minutos o 1 hora.  Las estadísticas disponibles para esta métrica son: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/iot/latest/developerguide/metrics_dimensions.html)  | 
|   `RegisterThingFailed`   |  El número de errores que se han producido por llamadas a la API de MQTT `RegisterThing`. La métrica se emite tanto en casos de éxito (valor = 0) como de error (valor = 1). Esta métrica se puede utilizar para realizar un seguimiento del número de elementos registrados durante los CloudWatch períodos de agregación admitidos, como 5 minutos o 1 hora. Para ver el número total de objetos registrados, consulte la métrica `ApproximateNumberOfThingsRegistered`. Las estadísticas disponibles para esta métrica son: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/iot/latest/developerguide/metrics_dimensions.html) Dimensiones: [TemplateName](#aws-iot-metricdimensions)   | 


**Just-in-time métricas de aprovisionamiento**  

| Métrica | Description (Descripción) | 
| --- | --- | 
|   `ProvisionThing.ClientError`   |  El número de veces que un dispositivo no se ha podido aprovisionar debido a un error del cliente. Por ejemplo, la política especificada en la plantilla no existía.  | 
|  ProvisionThing.ServerError  |  El número de veces que un dispositivo no se ha podido aprovisionar debido a un error del servidor. Los clientes pueden reintentar aprovisionar el dispositivo después de esperar y ponerse en contacto con AWS IoT si el problema persiste.  | 
|  ProvisionThing.Success  |  El número de veces que un dispositivo se ha aprovisionado correctamente.  | 

## LoRamétricas de WAN
<a name="lorawan-metrics"></a>

En la siguiente tabla se muestran las métricas de AWS IoT Core para LoRaWAN. Para obtener más información, consulte [Métricas de AWS IoT Core para LoRaWAN](https://docs.aws.amazon.com/iot-wireless/latest/developerguide/iot-lorawan-metrics.html). 


**AWS IoT Core para LoRaWAN métricas**  

| Métrica | Description (Descripción) | 
| --- | --- | 
|  Dispositivos o puertas de enlace activos  |  La cantidad de dispositivos LoRa WAN y puertas de enlace activos en su cuenta.  | 
|  Recuento de mensajes de enlace ascendente  |  Es el número de mensajes de enlace ascendente que se envía dentro de un período de tiempo específico para todas las puertas de enlace y dispositivos activos en su Cuenta de AWS. Los mensajes de enlace ascendente son mensajes que se envían desde el dispositivo a. AWS IoT Core para LoRaWAN  | 
|  Recuento de mensajes de enlace descendente  |  Es el número de mensajes de enlace descendente que se envía dentro de un período de tiempo específico para todas las puertas de enlace y dispositivos activos en su Cuenta de AWS. Los mensajes de enlace descendente son mensajes que se envían desde tu AWS IoT Core para LoRaWAN dispositivo.  | 
|  Tasa de pérdida de mensajes  |  Una vez que hayas añadido el dispositivo y te hayas conectado a AWS IoT Core para LoRaWANél, el dispositivo puede iniciar un mensaje de enlace ascendente para empezar a intercambiar mensajes con la nube. Puede usar esta métrica para, a continuación, realizar un seguimiento de la tasa de mensajes de enlace ascendente que se pierden.  | 
|  Métricas de uniones  |  Una vez que hayas agregado el dispositivo y la puerta de enlace, debes realizar un procedimiento de unión para que el dispositivo pueda enviar datos de enlace ascendente y comunicarse con ellos. AWS IoT Core para LoRaWAN Puede usar esta métrica para obtener más información sobre las métricas de unión de todos los dispositivos activos de su Cuenta de AWS.  | 
|  Indicador de intensidad de señal recibida (RSSI) medio  |  Puede usar esta métrica para supervisar el RSSI (indicador de intensidad de señal recibida) medio dentro del período de tiempo especificado. El RSSI es una medida que indica si la señal es lo suficientemente fuerte para obtener una buena conexión inalámbrica. Este valor es negativo y debe estar más cerca de cero para disponer de una conexión sólida.  | 
|  Relación señal/ruido (SNR) media  |  Puede usar esta métrica para monitorear la SNR (Signal-to-noise relación) promedio dentro del período de tiempo especificado. La SNR es una medida que indica si la señal recibida es suficientemente fuerte en comparación con el nivel de ruido para obtener una buena conexión inalámbrica. El valor de la SNR es positivo y debe ser mayor que cero para indicar que la potencia de la señal es más fuerte que la potencia del ruido.  | 
|  Disponibilidad de la puerta de enlace  |  Puede usar esta métrica para obtener más información sobre la disponibilidad de esta puerta de enlace dentro de un período de tiempo específico. Esta métrica muestra el tiempo de conexión a websocket de esta puerta de enlace durante un período de tiempo específico.  | 


**Just-in-time métricas de aprovisionamiento**  

| Métrica | Description (Descripción) | 
| --- | --- | 
|   `ProvisionThing.ClientError`   |  El número de veces que un dispositivo no se ha podido aprovisionar debido a un error del cliente. Por ejemplo, la política especificada en la plantilla no existía.  | 
|  ProvisionThing.ServerError  |  El número de veces que un dispositivo no se ha podido aprovisionar debido a un error del servidor. Los clientes pueden reintentar aprovisionar el dispositivo después de esperar y ponerse en contacto con AWS IoT si el problema persiste.  | 
|  ProvisionThing.Success  |  El número de veces que un dispositivo se ha aprovisionado correctamente.  | 

## Métricas de indexación de flotas
<a name="fleet-indexing-metrics"></a>


**AWS IoT métricas de indexación de flota**  

| Métrica | Description (Descripción) | 
| --- | --- | 
|   `NamedShadowCountForDynamicGroupQueryLimitExceeded`   |  Se procesan un máximo de 25 sombras con nombre por objeto para los términos de consulta que no son específicos del origen de datos en los grupos de objetos dinámicos. Cuando se supere este límite para un objeto, se emitirá el tipo de evento `NamedShadowCountForDynamicGroupQueryLimitExceeded`.  | 

## Dimensiones de las métricas
<a name="aws-iot-metricdimensions"></a>


**Las métricas utilizan el espacio de nombres y proporcionan métricas para las siguientes dimensiones.**  

| Dimensión | Description (Descripción) | 
| --- | --- | 
|  ActionType  |  El [tipo de acción](iot-rule-actions.md) especificado por la regla que activó la solicitud.  | 
|   `BehaviorName`   |  El nombre del comportamiento del perfil de seguridad de Device Defender Detect que se está monitorizando.  | 
|   `ClaimCertificateId`   |  El `certificateId` de la reclamación utilizado para aprovisionar los dispositivos.  | 
|   `CheckName`   |  El nombre de la comprobación de auditoría Device Defender cuyos resultados se están monitoreando.  | 
|   `JobId`   |  El ID del trabajo cuyo progreso o conexión de mensajes success/failure se está supervisando.  | 
|   `Protocol`   |  El protocolo utilizado para realizar la solicitud. Los valores válidos son: MQTT o HTTP  | 
|   `RuleName`   |  El nombre de la regla activada por la solicitud.  | 
|   `ScheduledAuditName`   |  El nombre de la auditoría programada de Device Defender cuyos resultados de comprobación se están monitoreando. Tiene el valor `OnDemand`si los resultados registrados corresponden a una auditoría que se realizó bajo demanda.  | 
|   `SecurityProfileName`   |  El nombre del perfil de seguridad de detección de Device Defender cuyos comportamientos se están monitoreando.  | 
|   `TemplateName`   |  El nombre de la plantilla de aprovisionamiento.  | 
|  SourceArn  | Hace referencia al perfil de seguridad para la detección o el ARN de registro para la auditoría. | 
|   `RoleArn`   |  Hace referencia al rol que intenta asumir Device Defender.  | 
|   `TopicArn`   |  Hace referencia al tema de SNS en el que ha intentando publicar Device Defender.  | 
|   `Error`   | Proporciona una breve descripción del error recibido al intentar publicar en el tema de SNS. Los valores posibles son los que se indican a continuación.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/iot/latest/developerguide/metrics_dimensions.html)  | 

# Supervise AWS IoT mediante registros CloudWatch
<a name="cloud-watch-logs"></a>

Cuando el [AWS IoT registro está habilitado](configure-logging.md), AWS IoT envía eventos de progreso sobre cada mensaje a medida que pasa de sus dispositivos a través del agente de mensajes y el motor de reglas. En la [CloudWatch consola](https://console.aws.amazon.com/cloudwatch), CloudWatch los registros aparecen en un grupo de **AWSIotregistros denominado Registros**. 

Para obtener más información sobre CloudWatch los registros, consulte [CloudWatch Registros](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatchLogs.html). Para obtener información sobre AWS IoT CloudWatch los registros compatibles, consulte[CloudWatch Registra las entradas de AWS IoT registro](cwl-format.md).

## Visualización AWS IoT de los registros en la CloudWatch consola
<a name="viewing-logs"></a>

**nota**  
El grupo de `AWSIotLogsV2` registros no estará visible en la CloudWatch consola hasta que:  
Has activado el inicio de sesión AWS IoT. Para obtener más información sobre cómo habilitar el inicio de sesión AWS IoT, consulta [Configure el AWS IoT registro](configure-logging.md) 
Algunas entradas de registro se han escrito mediante AWS IoT operaciones.

**Para ver AWS IoT los registros en la CloudWatch consola**

1.  Desplácese hasta [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/). En el panel de navegación, seleccione **Grupos de registro**. 

1. En el cuadro **Filter (Filtro)**, escriba **AWSIotLogsV2** y, a continuación, pulse Intro.

1. Haga doble clic en el grupo de registros `AWSIotLogsV2`.

1. Seleccione **Buscar todo**. Aparece una lista completa de los AWS IoT registros generados para su cuenta.

1. Elija el icono de ampliar para analizar un flujo individual.

También puede escribir una consulta en el cuadro de texto **Filter events (Filtrar eventos)**. Aquí tiene algunas consultas interesantes que probar:
+  `{ $.logLevel = "INFO" }` 

   Busque todos los registros que tengan un nivel de registro de `INFO`. 
+  `{ $.status = "Success" }` 

   Busque todos los registros que tengan un estado de `Success`. 
+  `{ $.status = "Success" && $.eventType = "GetThingShadow" }` 

   Busque todos los registros que tengan un estado de `Success` y un tipo de evento de `GetThingShadow`. 

Para obtener más información sobre la creación de expresiones de filtro, consulte [CloudWatch Registros de consultas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html). 

# CloudWatch Registra las entradas de AWS IoT registro
<a name="cwl-format"></a>

Cada componente de AWS IoT genera sus propias entradas de registro. Cada entrada de registro tiene un `eventType` que especifica la operación que provocó que se genere la entrada de registro. En esta sección se describen las entradas de registro generadas por los siguientes componentes de AWS IoT .

**Topics**
+ [Entradas de registro del agente de mensajes](#message-broker-logs)
+ [Entradas de registro de OCSP de certificados de servidor](#server-ocsp-logs)
+ [Entradas de registro de sombre de dispositivo](#device-shadow-logs)
+ [Entradas del registro del motor de reglas](#rule-engine-logs)
+ [Entradas del registro de Job](#job-logs)
+ [Entradas de registro de aprovisionamiento de dispositivos](#provision-logs)
+ [Entradas de registro de grupo de objetos dinámicos](#dynamic-group-logs)
+ [Entradas de registro de indexación de flotas](#fleet-indexing-logs)
+ [Atributos comunes CloudWatch de los registros](#cwl-common-attributes)

## Entradas de registro del agente de mensajes
<a name="message-broker-logs"></a>

El agente de AWS IoT mensajes genera entradas de registro para los siguientes eventos:

**Topics**
+ [Entrada de registro Connect](#log-mb-connect)
+ [Entrada de registro Disconnect](#log-mb-disconnect)
+ [DeleteConnection entrada de registro](#log-mb-delete-connection)
+ [GetRetainedMessage entrada de registro](#log-mb-get-retain)
+ [ListRetainedMessage entrada de registro](#log-mb-list-retain)
+ [Entrada de registro Publish-In](#log-mb-publish-in)
+ [Entrada de registro Publish-Out](#log-mb-publish-out)
+ [Entrada de registro en cola](#log-mb-queued)
+ [Entrada de registro de suscripción](#log-mb-subscribe)
+ [Entrada de registro Unsubscribe](#log-mb-unsubscribe)

### Entrada de registro Connect
<a name="log-mb-connect"></a>

El agente de AWS IoT mensajes genera una entrada de registro con una `eventType` de `Connect` cuando se conecta un cliente MQTT.

#### Ejemplo de entrada de registro Connect
<a name="log-mb-connect.example"></a>

```
{
    "timestamp": "2017-08-10 15:37:23.476",
    "logLevel": "INFO",
    "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Connect",
    "protocol": "MQTT",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `Connect` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

sourceIp  
La dirección IP en la que se originó la solicitud.

sourcePort  
El puerto en el que se originó la solicitud.

### Entrada de registro Disconnect
<a name="log-mb-disconnect"></a>

El agente de AWS IoT mensajes genera una entrada de registro con una `eventType` de `Disconnect` cuando un cliente MQTT se desconecta.

#### Ejemplo de entrada de registro Disconnect
<a name="log-mb-disconnect.example"></a>

```
{
    "timestamp": "2017-08-10 15:37:23.476",
    "logLevel": "INFO",
    "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Disconnect",
    "protocol": "MQTT",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490,
    "reason": "DUPLICATE_CLIENT_ID",
    "details": "A new connection was established with the same client ID",
    "disconnectReason": "CLIENT_INITIATED_DISCONNECT"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `Disconnect` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

sourceIp  
La dirección IP en la que se originó la solicitud.

sourcePort  
El puerto en el que se originó la solicitud.

razón  
La razón por la que el cliente se está desconectando.

details  
Una breve explicación del error.

disconnectReason  
La razón por la que el cliente se está desconectando.

### DeleteConnection entrada de registro
<a name="log-mb-delete-connection"></a>

El agente de AWS IoT mensajes genera una entrada de registro con un `eventType` de `DeleteConnection` cuando se elimina una conexión de cliente MQTT.

#### DeleteConnection ejemplo de entrada de registro
<a name="log-mb-delete-connection.example"></a>

```
{
    "timestamp": "2025-08-09 15:37:23.476",
    "logLevel": "INFO",
    "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "DeleteConnection",
    "protocol": "HTTP",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `DeleteConnection` registro contienen los siguientes atributos:

clientId  
El identificador del cliente que se desconectará.

principalId  
El ID de la entidad principal que realiza la solicitud. Para obtener más información sobre cómo identificar la entidad principal mediante el ID de la entidad principal, consulte [Comparación de identidades y credenciales de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html) en la *Guía del usuario de IAM*. 

protocol  
El protocolo utilizado para realizar la solicitud. El valor válido es `HTTP`. 

sourceIp  
La dirección IP en la que se originó la solicitud.

sourcePort  
El puerto en el que se originó la solicitud.

### GetRetainedMessage entrada de registro
<a name="log-mb-get-retain"></a>

El agente de AWS IoT mensajes genera una entrada de registro con una `eventType` de `GetRetainedMessage` cuándo [https://docs.aws.amazon.com//iot/latest/developerguide/API_iotdata_GetRetainedMessage.html](https://docs.aws.amazon.com//iot/latest/developerguide/API_iotdata_GetRetainedMessage.html)se llama.

#### GetRetainedMessage ejemplo de entrada de registro
<a name="log-mb-get-retain-example"></a>

```
{
    "timestamp": "2017-08-07 18:47:56.664", 
    "logLevel": "INFO", 
    "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", 
    "accountId": "123456789012", 
    "status": "Success", 
    "eventType": "GetRetainedMessage", 
    "protocol": "HTTP",
    "topicName": "a/b/c",
    "qos": "1",
    "lastModifiedDate": "2017-08-07 18:47:56.664"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `GetRetainedMessage` registro contienen los siguientes atributos:

lastModifiedDate  
La fecha y hora de la época, en milisegundos, en la que se almacenó el mensaje retenido. AWS IoT

protocol  
El protocolo utilizado para realizar la solicitud. Valor válido: `HTTP`. 

qos  
El nivel de calidad de servicio (QoS) utilizado en la solicitud de publicación. Los valores válidos son `0` o `1`. 

topicName  
El nombre del tema suscrito. 

### ListRetainedMessage entrada de registro
<a name="log-mb-list-retain"></a>

El agente de AWS IoT mensajes genera una entrada de registro con una `eventType` de `ListRetainedMessage` cuándo [/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html](/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html)se llama.

#### ListRetainedMessage ejemplo de entrada de registro
<a name="log-mb-list-retain-example"></a>

```
{
    "timestamp": "2017-08-07 18:47:56.664", 
    "logLevel": "INFO", 
    "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", 
    "accountId": "123456789012", 
    "status": "Success", 
    "eventType": "ListRetainedMessage", 
    "protocol": "HTTP"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `ListRetainedMessage` registro contienen el siguiente atributo:

protocol  
El protocolo utilizado para realizar la solicitud. Valor válido: `HTTP`. 

### Entrada de registro Publish-In
<a name="log-mb-publish-in"></a>

Cuando el agente de AWS IoT mensajes recibe un mensaje MQTT, genera una entrada de registro con un número `eventType` de`Publish-In`. 

#### Ejemplo de entrada de registro Publish-In
<a name="log-mb-publish-in.example"></a>

```
{
        "timestamp": "2017-08-10 15:39:30.961",
        "logLevel": "INFO",
        "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
        "accountId": "123456789012",
        "status": "Success",
        "eventType": "Publish-In",
        "protocol": "MQTT",
        "topicName": "$aws/things/MyThing/shadow/get",
        "clientId": "abf27092886e49a8a5c1922749736453",
        "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
        "sourceIp": "205.251.233.181",
        "sourcePort": 13490,
        "retain": "True"
    }
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `Publish-In` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

retain  
El atributo que se usa cuando un mensaje tiene la marca RETAIN establecida con un valor de `True`. Si el mensaje no tiene la marca RETAIN establecida, este atributo no aparece en la entrada de registro. Para obtener más información, consulte [Mensajes retenidos de MQTT](mqtt.md#mqtt-retain) .

sourceIp  
La dirección IP en la que se originó la solicitud.

sourcePort  
El puerto en el que se originó la solicitud.

topicName  
El nombre del tema suscrito. 

### Entrada de registro Publish-Out
<a name="log-mb-publish-out"></a>

Cuando el agente de mensajes publica un mensaje MQTT, genera una entrada de registro con un `eventType` de `Publish-Out`. 

#### Ejemplo de entrada de registro Publish-Out
<a name="log-mb-publish-out.example"></a>

```
{
    "timestamp": "2017-08-10 15:39:30.961",
    "logLevel": "INFO",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Publish-Out",
    "protocol": "MQTT",
    "topicName": "$aws/things/MyThing/shadow/get",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `Publish-Out` registro contienen los siguientes atributos:

clientId  
El ID del cliente suscrito que recibe mensajes sobre ese tema de MQTT.

principalId  
El ID de la entidad principal que realiza la solicitud.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

sourceIp  
La dirección IP en la que se originó la solicitud.

sourcePort  
El puerto en el que se originó la solicitud.

topicName  
El nombre del tema suscrito. 

### Entrada de registro en cola
<a name="log-mb-queued"></a>

Cuando se desconecta un dispositivo con una sesión persistente, el intermediario de mensajes MQTT almacena los mensajes del dispositivo y AWS IoT genera entradas de registro con un `Queued` EventType de. Para obtener más información sobre las sesiones persistentes de MQTT, consulte. [Sesiones persistentes de MQTT](mqtt.md#mqtt-persistent-sessions)

#### Ejemplo de entrada de registro de error del servidor en cola
<a name="log-mb-queued.server-error.example"></a>

```
{
    "timestamp": "2022-08-10 15:39:30.961",
    "logLevel": "ERROR",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "topicName": "$aws/things/MyThing/get",
    "clientId": "123123123",
    "qos": "1",
    "protocol": "MQTT",
    "eventType": "Queued",
    "status": "Failure",
    "details": "Server Error"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas del registro de errores `Queued` del servidor contienen los siguientes atributos:

clientId  
El ID del cliente al que se pone el mensaje en cola.

details  
**`Server Error`**  
Un error del servidor ha impedido que se almacene el mensaje.

protocol  
El protocolo utilizado para realizar la solicitud. El valor será siempre `MQTT`. 

qos  
El nivel de calidad de servicio (QoS) de la solicitud. El valor siempre será 1 porque los mensajes con una QoS de 0 no se almacenan.

topicName  
El nombre del tema suscrito.

#### Ejemplo de entrada de registro de éxito en cola
<a name="log-mb-queued.success.example"></a>

```
{
    "timestamp": "2022-08-10 15:39:30.961",
    "logLevel": "INFO",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "topicName": "$aws/things/MyThing/get",
    "clientId": "123123123",
    "qos": "1",
    "protocol": "MQTT",
    "eventType": "Queued",
    "status": "Success"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas del registro de `Queued` éxitos contienen los siguientes atributos:

clientId  
El ID del cliente al que se pone el mensaje en cola.

protocol  
El protocolo utilizado para realizar la solicitud. El valor será siempre `MQTT`. 

qos  
El nivel de calidad de servicio (QoS) de la solicitud. El valor siempre será 1 porque los mensajes con una QoS de 0 no se almacenan.

topicName  
El nombre del tema suscrito.

#### Ejemplo de entrada de registro limitada en cola
<a name="log-mb-queued.throttled.example"></a>

```
{
    "timestamp": "2022-08-10 15:39:30.961",
    "logLevel": "ERROR",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "topicName": "$aws/things/MyThing/get",
    "clientId": "123123123",
    "qos": "1",
    "protocol": "MQTT",
    "eventType": "Queued",
    "status": "Failure",
    "details": "Throttled while queueing offline message"
}
```

Además de eso[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `Queued` registro limitadas contienen los siguientes atributos:

clientId  
El ID del cliente al que se pone el mensaje en cola.

details  
**`Throttled while queueing offline message`**  
El cliente superó el límite ` [Queued messages per second per account](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#genref_queued_messages_per_second_per_account) `, por lo que el mensaje no se almacenó.

protocol  
El protocolo utilizado para realizar la solicitud. El valor será siempre `MQTT`. 

qos  
El nivel de calidad de servicio (QoS) de la solicitud. El valor siempre será 1 porque los mensajes con una QoS de 0 no se almacenan.

topicName  
El nombre del tema suscrito.

### Entrada de registro de suscripción
<a name="log-mb-subscribe"></a>

El agente de AWS IoT mensajes genera una entrada de registro con una `eventType` de `Subscribe` cuando un cliente MQTT se suscribe a un tema.

#### Ejemplo de entrada de registro de suscripción de MQTT 3
<a name="log-mb-connect.example.subscribe"></a>

```
{
    "timestamp": "2017-08-10 15:39:04.413",
    "logLevel": "INFO",
    "traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Subscribe",
    "protocol": "MQTT",
    "topicName": "$aws/things/MyThing/shadow/#",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `Subscribe` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

protocol  
El protocolo utilizado para realizar la solicitud. El valor será siempre `MQTT`. 

sourceIp  
La dirección IP en la que se originó la solicitud.

sourcePort  
El puerto en el que se originó la solicitud.

topicName  
El nombre del tema suscrito. 

#### Ejemplo de entrada de registro de suscripción de MQTT 5
<a name="log-mb-connect.example.subscribe.mqtt5"></a>

```
{
	"timestamp": "2022-11-30 16:24:15.628",
	"logLevel": "INFO",
	"traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6",
	"accountId": "123456789012",
	"status": "Success",
	"eventType": "Subscribe",
	"protocol": "MQTT",
	"topicName": "test/topic1,$invalid/reserved/topic",
	"subscriptions": [
		{
			"topicName": "test/topic1",
			"reasonCode": 1
		},
		{
			"topicName": "$invalid/reserved/topic",
			"reasonCode": 143
		}
	],
	"clientId": "abf27092886e49a8a5c1922749736453",
	"principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
	"sourceIp": "205.251.233.181",
	"sourcePort": 13490
}
```

En el caso de las operaciones de suscripción de MQTT 5, además del [Atributos comunes CloudWatch de los registros](#cwl-common-attributes) y los [atributos de entrada de registro de suscripción de MQTT 3](#log-mb-connect.example.subscribe), las entradas de registro `Subscribe` de MQTT 5 contienen el siguiente atributo: 

subscriptions  
Una lista de asignaciones entre los temas solicitados en la solicitud de suscripción y el código de motivo individual de MQTT 5. Para obtener más información, consulte [Códigos de motivo de MQTT](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html#mqtt5-reason-codes). 

### Entrada de registro Unsubscribe
<a name="log-mb-unsubscribe"></a>

El agente de AWS IoT mensajes genera una entrada de registro con una `eventType` de `Unsubscribe` cuando un cliente de MQTT cancela la suscripción a un tema de MQTT.

#### Ejemplo de entrada de registro de cancelación de suscripción de MQTT
<a name="log-mb-connect.example.unsubscribe"></a>

```
{
    "timestamp": "2024-08-20 22:53:32.844",
    "logLevel": "INFO",
    "traceId": "db6bd09a-2c3f-1cd2-27cc-fd6b1ce03b58",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Unsubscribe",
    "protocol": "MQTT",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

Además de eso[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `Unsubscribe` registro contienen los siguientes atributos:

protocol  
El protocolo utilizado para realizar la solicitud. El valor será siempre `MQTT`. 

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

sourceIp  
La dirección IP en la que se originó la solicitud.

sourcePort  
El puerto en el que se originó la solicitud.

## Entradas de registro de OCSP de certificados de servidor
<a name="server-ocsp-logs"></a>

AWS IoT Core genera entradas de registro para el siguiente evento:

**Topics**
+ [Recupera la entrada del registro de OCSPStaple datos](#log-retrieve-ocsp-staple)
+ [Recupere la entrada del registro de OCSPStaple datos para puntos finales privados](#log-retrieve-ocsp-staple-private-endpoint)

### Recupera la entrada del registro de OCSPStaple datos
<a name="log-retrieve-ocsp-staple"></a>

AWS IoT Core genera una entrada de registro con un `eventType` de `RetrieveOCSPStapleData` cuando el servidor recupera los datos básicos del OCSP.

#### Recupere ejemplos OCSPStaple de entradas del registro de datos
<a name="log-retrieve-ocsp-staple.example"></a>

Lo que sigue es una entrada de registro de `Success` de ejemplo. 

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "INFO",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Success",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
	"connectionDetails": {
		"httpStatusCode": "200",
		"ocspResponderUri": "http://ocsp.example.com",
		"sourceIp": "205.251.233.181",
		"targetIp": "250.15.5.3"
	},
	"ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	},
	"ocspResponseDetails": {
		"responseCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01",
		"ocspResponseStatus": "successful",
		"certStatus": "good",
		"signature": "4C:6F:63:61:6C:20:52:65:73:70:6F:6E:64:65:72:20:53:69:67:6E:61:74:75:72:65",
		"thisUpdateTime": "Jan 31 01:21:02 2024 UTC",
		"nextUpdateTime": "Feb 02 00:21:02 2024 UTC",
		"producedAtTime": "Jan 31 01:37:03 2024 UTC",
		"stapledDataPayloadSize": "XXX"
	}
}
```

Lo que sigue es una entrada de registro de `Failure` de ejemplo. 

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "ERROR",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Failure",
	"reason": "A non 2xx HTTP response was received from the OCSP responder.",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
	"connectionDetails": {
		"httpStatusCode": "444",
		"ocspResponderUri": "http://ocsp.example.com",
		"sourceIp": "205.251.233.181",
		"targetIp": "250.15.5.3"
	},
	"ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	}
}
```

Para la `RetrieveOCSPStaple` operación, además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de registro contienen los siguientes atributos:

razón  
Es el motivo por el que la operación falla.

domainConfigName  
Es el nombre de la configuración del dominio.

connectionDetails  
Es una explicación breve de los detalles de la conexión.  
+ httpStatusCode

  Códigos de estado de HTTP que devuelve el respondedor de OCSP en respuesta a la solicitud del cliente realizada al servidor.
+ ocspResponderUri

  El URI del respondedor OCSP que se AWS IoT Core obtiene del certificado del servidor.
+ sourceIp

  La dirección IP de origen del AWS IoT Core servidor.
+ targetIp

  Es la dirección IP de destino del respondedor de OCSP.

ocspRequestDetails  
Detalles de la solicitud de OCSP.  
+ requesterName

  El identificador del AWS IoT Core servidor que envía una solicitud al respondedor OCSP.
+ requestCertId

  Es el ID del certificado de la solicitud. Este es el ID del certificado para el que se solicita la respuesta del OCSP.

ocspResponseDetails  
Son los detalles de la respuesta del OCSP.  
+ responseCertId

  Es el ID del certificado de la respuesta del OCSP. 
+ ocspResponseStatus

  Es el estado de la respuesta del OCSP.
+ certStatus

  El estado del certificado.
+ firma

  Es la firma que una entidad de confianza aplica a la respuesta.
+ thisUpdateTime

  Es el momento en el que se sabe que el estado que se indica es correcto.
+ nextUpdateTime

  Es la hora a la que estará disponible la información más reciente sobre el estado del certificado.
+ producedAtTime

  Es la hora en la que el respondedor del OCSP firmó esta respuesta.
+ stapledDataPayloadTamaño

  Es el tamaño de la carga útil de los datos asociados.

### Recupere la entrada del registro de OCSPStaple datos para puntos finales privados
<a name="log-retrieve-ocsp-staple-private-endpoint"></a>

AWS IoT Core genera una entrada de registro con un `eventType` de `RetrieveOCSPStapleData` cuando el servidor recupera los datos básicos del OCSP.

#### Recupere ejemplos de entradas del registro de OCSPStaple datos para puntos finales privados
<a name="log-retrieve-ocsp-staple-private-endpoint.example"></a>

Lo que sigue es una entrada de registro de `Success` de ejemplo. 

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "INFO",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Success",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
        "lambdaDetails": {
        "lambdaArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function",
        "sourceArn": "arn:aws:iot:us-west-2:123456789012:domainconfiguration/testDomainConfigure/6bzfg"
      },
        "authorizedResponderArn": "arn:aws:acm:us-west-2:123456789012:certificate/certificate_ID",
	"ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	},
	"ocspResponseDetails": {
		"responderId": "04:C1:3F:8F:27:D6:49:13:F8:DE:B2:36:9D:85:8E:F8:31:3B:A6:D0"
               "responseCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01",
		"ocspResponseStatus": "successful",
		"certStatus": "good",
		"signature": "4C:6F:63:61:6C:20:52:65:73:70:6F:6E:64:65:72:20:53:69:67:6E:61:74:75:72:65",
		"thisUpdateTime": "Jan 31 01:21:02 2024 UTC",
		"nextUpdateTime": "Feb 02 00:21:02 2024 UTC",
		"producedAtTime": "Jan 31 01:37:03 2024 UTC",
		"stapledDataPayloadSize": "XXX"
	}
}
```

Lo que sigue es una entrada de registro de `Failure` de ejemplo. 

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "ERROR",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Failure",
	"reason": "The payload returned by the Lambda function exceeds the maximum response size of 7 kilobytes.",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
        "lambdaDetails": {
        "lambdaArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function",
        "sourceArn": "arn:aws:iot:us-west-2:123456789012:domainconfiguration/testDomainConfigure/6bzfg"
      },
        "authorizedResponderArn": "arn:aws:acm:us-west-2:123456789012:certificate/certificate_ID",
	 "ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	}
}
```

Para la `RetrieveOCSPStaple` operación, además de los atributos de la [Atributos comunes CloudWatch de los registros](#cwl-common-attributes) [entrada de registro de recuperación de OCSPStaple datos](https://docs.aws.amazon.com//iot/latest/developerguide/cwl-format.html#log-retrieve-ocsp-staple), las entradas de registro de los puntos finales privados contienen los siguientes atributos:

lambdaDetails  
Detalles de la función de Lambda.  
+ lambdaArn

  El ARN de la función de Lambda.
+ sourceArn

  El ARN de la configuración del dominio.

authorizedResponderArn  
El ARN del respondedor del autorizador, si hay uno configurado en la configuración del dominio.

## Entradas de registro de sombre de dispositivo
<a name="device-shadow-logs"></a>

El servicio AWS IoT Device Shadow genera entradas de registro para los siguientes eventos:

**Topics**
+ [DeleteThingShadow entrada de registro](#log-shadow-delete-thing-shadow)
+ [GetThingShadow entrada de registro](#log-shadow-get-thing-shadow)
+ [UpdateThingShadow entrada de registro](#log-shadow-update-thing-shadow)

### DeleteThingShadow entrada de registro
<a name="log-shadow-delete-thing-shadow"></a>

El servicio de sombra de dispositivo genera una entrada de registro con un `eventType` de `DeleteThingShadow` cuando se recibe una solicitud de eliminación de la sombra de un dispositivo.

#### DeleteThingShadow ejemplo de entrada de registro
<a name="log-shadow-delete-thing-shadow.example"></a>

```
{
    "timestamp": "2017-08-07 18:47:56.664",
    "logLevel": "INFO",
    "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "DeleteThingShadow",
    "protocol": "MQTT",
    "deviceShadowName": "Jack",
    "topicName": "$aws/things/Jack/shadow/delete"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `DeleteThingShadow` registro contienen los siguientes atributos:

deviceShadowName  
Nombre de la sombra que se va a actualizar.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

topicName  
El nombre del tema en el que se publicó la solicitud. 

### GetThingShadow entrada de registro
<a name="log-shadow-get-thing-shadow"></a>

El servicio de sombra de dispositivo genera una entrada de registro con un `eventType` de `GetThingShadow` cuando se recibe una solicitud de obtención para una sombra.

#### GetThingShadow ejemplo de entrada de registro
<a name="log-shadow-get-thing-shadow.example"></a>

```
{
    "timestamp": "2017-08-09 17:56:30.941",
    "logLevel": "INFO",
    "traceId": "b575f19a-97a2-cf72-0ed0-c64a783a2504",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "GetThingShadow",
    "protocol": "MQTT",
    "deviceShadowName": "MyThing",
    "topicName": "$aws/things/MyThing/shadow/get"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `GetThingShadow` registro contienen los siguientes atributos:

deviceShadowName  
El nombre de la sombra solicitada.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

topicName  
El nombre del tema en el que se publicó la solicitud. 

### UpdateThingShadow entrada de registro
<a name="log-shadow-update-thing-shadow"></a>

El servicio de sombra de dispositivo genera una entrada de registro con un `eventType` de `UpdateThingShadow` cuando se recibe una solicitud de actualización de la sombra de un dispositivo.

#### UpdateThingShadow ejemplo de entrada de registro
<a name="log-shadow-update-thing-shadow.example"></a>

```
{
    "timestamp": "2017-08-07 18:43:59.436",
    "logLevel": "INFO",
    "traceId": "d0074ba8-0c4b-a400-69df-76326d414c28",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "UpdateThingShadow",
    "protocol": "MQTT",
    "deviceShadowName": "Jack",
    "topicName": "$aws/things/Jack/shadow/update"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `UpdateThingShadow` registro contienen los siguientes atributos:

deviceShadowName  
Nombre de la sombra que se va a actualizar.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

topicName  
El nombre del tema en el que se publicó la solicitud. 

## Entradas del registro del motor de reglas
<a name="rule-engine-logs"></a>

El motor de AWS IoT reglas genera registros para los siguientes eventos:

**Topics**
+ [FunctionExecution entrada de registro](#log-rules-fn-exec)
+ [RuleExecution entrada de registro](#log-rules-rule-ex)
+ [RuleMatch entrada de registro](#log-rules-rule-match)
+ [RuleExecutionThrottled entrada de registro](#log-rules-rule-msg-throttled)
+ [RuleNotFound entrada de registro](#log-rules-rule-not-found)
+ [StartingRuleExecution entrada de registro](#log-rules-start-rule-ex)

### FunctionExecution entrada de registro
<a name="log-rules-fn-exec"></a>

El motor de reglas genera una entrada de registro con un `eventType` de `FunctionExecution` cuando la consulta SQL de una regla llama a una función externa. Se llama a una función externa cuando la acción de una regla realiza una solicitud HTTP a AWS IoT otro servicio web (por ejemplo, llamando a `get_thing_shadow` o`machinelearning_predict`). 

#### FunctionExecution ejemplo de entrada de registro
<a name="log-rules-fn-exec.example"></a>

```
{
    "timestamp": "2017-07-13 18:33:51.903",
    "logLevel": "DEBUG",
    "traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
    "status": "Success",
    "eventType": "FunctionExecution",
    "clientId": "N/A",
    "topicName":"rules/test",
    "ruleName": "ruleTestPredict",
    "ruleAction": "MachinelearningPredict",
    "resources": {
        "ModelId": "predict-model"
    },
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `FunctionExecution` registro contienen los siguientes atributos:

clientId  
 `N/A` para registros `FunctionExecution`.

principalId  
El ID de la entidad principal que realiza la solicitud.

recursos  
Un conjunto de recursos utilizados por las acciones de la regla.

ruleName  
El nombre de la regla que coincide.

topicName  
El nombre del tema suscrito. 

### RuleExecution entrada de registro
<a name="log-rules-rule-ex"></a>

Cuando el motor de AWS IoT reglas activa la acción de una regla, genera una entrada de `RuleExecution` registro.

#### RuleExecution ejemplo de entrada de registro
<a name="log-rules-rule-ex.example"></a>

```
{
    "timestamp": "2017-08-10 16:32:46.070",
    "logLevel": "INFO",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "RuleExecution",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "rules/test",
    "ruleName": "JSONLogsRule",
    "ruleAction": "RepublishAction",
    "resources": {
        "RepublishTopic": "rules/republish"
    },
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

#### RuleExecution con un ejemplo de entrada de registro por lotes
<a name="log-rules-rule-ex-batching.example"></a>

```
{
    "logLevel": "INFO",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "RuleExecution",
    "ruleName": "rule_test",
    "ruleAction": "HttpAction",
    "resources": {
        "Url": "https://example.com",
        "ConfirmationUrl": "https://example.com"
    },
    "details": "HttpAction made a request to the specified endpoint",
    "batchDetails": {
        "timestamps": [
            "1234567890123",
            "1234567890123",
            "1234567890123"
        ],
        "traceIds": [
            "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
            "30aa7ccc-1d23-0b97-aa7b-76196d83537c",
            "30aa7ccc-1d23-0b97-aa7b-76196d83537d"
        ],
        "clientIds": [
            "N/A",
            "N/A",
            "N/A"
        ],
        "topicNames": [
            "topic/ruletest",
            "topic/ruletest",
            "topic/ruletest"
        ],
        "principalIds": [
            "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
            "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
            "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
        ],
        "batchSize": 3,
        "batchSizeInBytes": 114
    }
}
```

Además de [Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de registro `RuleExecution` incluyen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

recursos  
Un conjunto de recursos utilizados por las acciones de la regla.

ruleAction  
El nombre de la acción activada.

ruleName  
El nombre de la regla que coincide.

topicName  
El nombre del tema suscrito. 

### RuleMatch entrada de registro
<a name="log-rules-rule-match"></a>

El motor de AWS IoT reglas genera una entrada de registro con un `eventType` de `RuleMatch` cuando el agente de mensajes recibe un mensaje que coincide con una regla.

#### RuleMatch ejemplo de entrada de registro
<a name="log-rules-rule-match.example"></a>

```
{
    "timestamp": "2017-08-10 16:32:46.002",
    "logLevel": "INFO",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "RuleMatch",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "rules/test",
    "ruleName": "JSONLogsRule",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `RuleMatch` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

ruleName  
El nombre de la regla que coincide.

topicName  
El nombre del tema suscrito. 

### RuleExecutionThrottled entrada de registro
<a name="log-rules-rule-msg-throttled"></a>

Cuando se limita una ejecución, el motor de AWS IoT reglas genera una entrada de registro con un `eventType` de. `RuleExecutionThrottled` 

#### RuleExecutionThrottled ejemplo de entrada de registro
<a name="log-rules-rule-msg-throttled.example"></a>

```
{
    "timestamp": "2017-10-04 19:25:46.070",
    "logLevel": "ERROR",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Failure",
    "eventType": "RuleExecutionThrottled",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "$aws/rules/example_rule",
    "ruleName": "example_rule",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "reason": "RuleExecutionThrottled",
    "details": "Exection of Rule example_rule throttled"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `RuleExecutionThrottled` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

details  
Una breve explicación del error.

principalId  
El ID de la entidad principal que realiza la solicitud.

razón  
La cadena "RuleExecutionThrottled».

ruleName  
El nombre de la regla que se debe activar.

topicName  
El nombre del tema publicado.

### RuleNotFound entrada de registro
<a name="log-rules-rule-not-found"></a>

Cuando el motor de AWS IoT reglas no puede encontrar una regla con un nombre determinado, genera una entrada de registro con un número `eventType` de`RuleNotFound`. 

#### RuleNotFound ejemplo de entrada de registro
<a name="log-rules-rule-not-found.example"></a>

```
{
    "timestamp": "2017-10-04 19:25:46.070",
    "logLevel": "ERROR",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Failure",
    "eventType": "RuleNotFound",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "$aws/rules/example_rule",
    "ruleName": "example_rule",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "reason": "RuleNotFound",
    "details": "Rule example_rule not found"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `RuleNotFound` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

details  
Una breve explicación del error.

principalId  
El ID de la entidad principal que realiza la solicitud.

razón  
La cadena "RuleNotFound».

ruleName  
El nombre de la regla que no se pudo encontrar.

topicName  
El nombre del tema publicado.

### StartingRuleExecution entrada de registro
<a name="log-rules-start-rule-ex"></a>

Cuando el motor de AWS IoT reglas comienza a activar la acción de una regla, genera una entrada de registro con un número `eventType` de`StartingRuleExecution`. 

#### StartingRuleExecution ejemplo de entrada de registro
<a name="log-rules-start-rule-ex.example"></a>

```
{
    "timestamp": "2017-08-10 16:32:46.002",
    "logLevel": "DEBUG",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "StartingRuleExecution",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "rules/test",
    "ruleName": "JSONLogsRule",
    "ruleAction": "RepublishAction",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `rule-` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

principalId  
El ID de la entidad principal que realiza la solicitud.

ruleAction  
El nombre de la acción activada.

ruleName  
El nombre de la regla que coincide.

topicName  
El nombre del tema suscrito. 

## Entradas del registro de Job
<a name="job-logs"></a>

El servicio AWS IoT Job genera entradas de registro para los siguientes eventos. Las entradas de registro se generan cuando se recibe una solicitud de MQTT o HTTP procedente del dispositivo.

**Topics**
+ [DescribeJobExecution entrada de registro](#log-job-describe-job-ex)
+ [GetPendingJobExecution entrada de registro](#log-job-get-pending-job-ex)
+ [ReportFinalJobExecutionCount entrada de registro](#log-job-report-final-job-ex-count)
+ [StartNextPendingJobExecution entrada de registro](#log-job-start-next-pending-job-ex)
+ [UpdateJobExecution entrada de registro](#log-job-update-job-ex)

### DescribeJobExecution entrada de registro
<a name="log-job-describe-job-ex"></a>

El servicio AWS IoT Jobs genera una entrada de registro con un `eventType` de `DescribeJobExecution` cuando el servicio recibe una solicitud para describir la ejecución de un trabajo.

#### DescribeJobExecution ejemplo de entrada de registro
<a name="log-job-describe-job-ex.example"></a>

```
{
    "timestamp": "2017-08-10 19:13:22.841",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "DescribeJobExecution",
    "protocol": "MQTT",
    "clientId": "thingOne",
    "jobId": "002",
    "topicName": "$aws/things/thingOne/jobs/002/get",
    "clientToken": "myToken",
    "details": "The request status is SUCCESS."
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `GetJobExecution` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

clientToken  
Identificador único con distinción entre mayúsculas y minúsculas que permite garantizar la idempotencia de la solicitud. Para obtener más información, consulte [How to Ensure Idempotency](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

details  
Información adicional del servicio Jobs.

jobId  
El ID de trabajo para la ejecución de trabajos.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

topicName  
El tema utilizado para realizar la solicitud. 

### GetPendingJobExecution entrada de registro
<a name="log-job-get-pending-job-ex"></a>

El servicio AWS IoT Jobs genera una entrada de registro con un `eventType` de `GetPendingJobExecution` cuando el servicio recibe una solicitud de ejecución de un trabajo.

#### GetPendingJobExecution ejemplo de entrada de registro
<a name="log-job-get-pending-job-ex.example"></a>

```
{
    "timestamp": "2018-06-13 17:45:17.197",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "GetPendingJobExecution",
    "protocol": "MQTT",
    "clientId": "299966ad-54de-40b4-99d3-4fc8b52da0c5",
    "topicName": "$aws/things/299966ad-54de-40b4-99d3-4fc8b52da0c5/jobs/get",
    "clientToken": "24b9a741-15a7-44fc-bd3c-1ff2e34e5e82",
    "details": "The request status is SUCCESS."
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `GetPendingJobExecution` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

clientToken  
Identificador único con distinción entre mayúsculas y minúsculas que permite garantizar la idempotencia de la solicitud. Para obtener más información, consulte [How to Ensure Idempotency](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

details  
Información adicional del servicio Jobs.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

topicName  
El nombre del tema suscrito. 

### ReportFinalJobExecutionCount entrada de registro
<a name="log-job-report-final-job-ex-count"></a>

El servicio AWS IoT Jobs genera una entrada de registro con una `entryType` de `ReportFinalJobExecutionCount` cuando se completa un trabajo.

#### ReportFinalJobExecutionCount ejemplo de entrada de registro
<a name="log-job-report-final-job-ex-count.example"></a>

```
{
    "timestamp": "2017-08-10 19:44:16.776",
    "logLevel": "INFO",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "ReportFinalJobExecutionCount",
    "jobId": "002",
    "details": "Job 002 completed. QUEUED job execution count: 0 IN_PROGRESS job execution count: 0 FAILED job execution count: 0 SUCCEEDED job execution count: 1 CANCELED job execution count: 0 REJECTED job execution count: 0 REMOVED job execution count: 0"
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `ReportFinalJobExecutionCount` registro contienen los siguientes atributos:

details  
Información adicional del servicio Jobs.

jobId  
El ID de trabajo para la ejecución de trabajos.

### StartNextPendingJobExecution entrada de registro
<a name="log-job-start-next-pending-job-ex"></a>

Cuando recibe una solicitud para iniciar la siguiente ejecución de un trabajo pendiente, el servicio AWS IoT Jobs genera una entrada de registro con un número `eventType` de`StartNextPendingJobExecution`. 

#### StartNextPendingJobExecution ejemplo de entrada de registro
<a name="log-job-start-next-pending-job-ex.example"></a>

```
{
    "timestamp": "2018-06-13 17:49:51.036",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "StartNextPendingJobExecution",
    "protocol": "MQTT",
    "clientId": "95c47808-b1ca-4794-bc68-a588d6d9216c",
    "topicName": "$aws/things/95c47808-b1ca-4794-bc68-a588d6d9216c/jobs/start-next",
    "clientToken": "bd7447c4-3a05-49f4-8517-dd89b2c68d94",
    "details": "The request status is SUCCESS."
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `StartNextPendingJobExecution` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

clientToken  
Identificador único con distinción entre mayúsculas y minúsculas que permite garantizar la idempotencia de la solicitud. Para obtener más información, consulte [How to Ensure Idempotency](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

details  
Información adicional del servicio Jobs.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

topicName  
El tema utilizado para realizar la solicitud. 

### UpdateJobExecution entrada de registro
<a name="log-job-update-job-ex"></a>

El servicio AWS IoT Jobs genera una entrada de registro con un `eventType` de `UpdateJobExecution` cuando el servicio recibe una solicitud para actualizar la ejecución de un trabajo.

#### UpdateJobExecution ejemplo de entrada de registro
<a name="log-job-update-job-ex.example"></a>

```
{
    "timestamp": "2017-08-10 19:25:14.758",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "UpdateJobExecution",
    "protocol": "MQTT",
    "clientId": "thingOne",
    "jobId": "002",
    "topicName": "$aws/things/thingOne/jobs/002/update",
    "clientToken": "myClientToken",
    "versionNumber": "1",
    "details": "The destination status is IN_PROGRESS. The request status is SUCCESS."
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `UpdateJobExecution` registro contienen los siguientes atributos:

clientId  
El ID del cliente que realiza la solicitud.

clientToken  
Identificador único con distinción entre mayúsculas y minúsculas que permite garantizar la idempotencia de la solicitud. Para obtener más información, consulte [How to Ensure Idempotency](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

details  
Información adicional del servicio Jobs.

jobId  
El ID de trabajo para la ejecución de trabajos.

protocol  
El protocolo utilizado para realizar la solicitud. Los valores válidos son `MQTT` o `HTTP`. 

topicName  
El tema utilizado para realizar la solicitud. 

versionNumber  
La versión de la ejecución de trabajos.

## Entradas de registro de aprovisionamiento de dispositivos
<a name="provision-logs"></a>

El servicio de aprovisionamiento de AWS IoT dispositivos genera registros para los siguientes eventos. 

**Topics**
+ [GetDeviceCredentials entrada de registro](#log-provision-get-device-credentials)
+ [ProvisionDevice entrada de registro](#log-provision-provision-device)

### GetDeviceCredentials entrada de registro
<a name="log-provision-get-device-credentials"></a>

El servicio de aprovisionamiento de AWS IoT dispositivos genera una entrada de registro con una `eventType` de las `GetDeviceCredential` llamadas `GetDeviceCredential` de un cliente. 



#### GetDeviceCredentials ejemplo de entrada de registro
<a name="log-provision-get-device-credentials.example"></a>

```
{
  "timestamp" : "2019-02-20 20:31:22.932",
  "logLevel" : "INFO",
  "traceId" : "8d9c016f-6cc7-441e-8909-7ee3d5563405",
  "accountId" : "123456789101",
  "status" : "Success",
  "eventType" : "GetDeviceCredentials",
  "deviceCertificateId" : "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "details" : "Additional details about this log."
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `GetDeviceCredentials` registro contienen los siguientes atributos:

details  
Una breve explicación del error.

deviceCertificateId  
El ID del certificado del dispositivo.

### ProvisionDevice entrada de registro
<a name="log-provision-provision-device"></a>

El servicio de aprovisionamiento de AWS IoT dispositivos genera una entrada de registro con una `eventType` de las `ProvisionDevice` llamadas `ProvisionDevice` de un cliente. 

#### ProvisionDevice ejemplo de entrada de registro
<a name="log-provision-provision-device.example"></a>

```
{
  "timestamp" : "2019-02-20 20:31:22.932",
  "logLevel" : "INFO",
  "traceId" : "8d9c016f-6cc7-441e-8909-7ee3d5563405",
  "accountId" : "123456789101",
  "status" : "Success",
  "eventType" : "ProvisionDevice",
  "provisioningTemplateName" : "myTemplate",
  "deviceCertificateId" : "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "details" : "Additional details about this log."
 }
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `ProvisionDevice` registro contienen los siguientes atributos:

details  
Una breve explicación del error.

deviceCertificateId  
El ID del certificado del dispositivo.

provisioningTemplateName  
El nombre de la plantilla de aprovisionamiento.

## Entradas de registro de grupo de objetos dinámicos
<a name="dynamic-group-logs"></a>

AWS IoT Los grupos de cosas dinámicos generan registros para el siguiente evento.

**Topics**
+ [AddThingToDynamicThingGroupsFailed entrada de registro](#log-dynthing-add-thing-to-dynamic-thing-groups-failed)

### AddThingToDynamicThingGroupsFailed entrada de registro
<a name="log-dynthing-add-thing-to-dynamic-thing-groups-failed"></a>

Cuando no AWS IoT se ha podido añadir algo a los grupos dinámicos especificados, se genera una entrada de registro con un `eventType` de`AddThingToDynamicThingGroupsFailed`. Esto ocurre cuando un objeto cumplía los criterios para estar en el grupo de objetos dinámico, pero no se pudo agregar a este grupo o se eliminó de él. Esto puede suceder por los motivos siguientes:
+ El objeto ya es miembro del número máximo de grupos.
+ Se utilizó la opción **--override-dynamic-groups** para agregar el objeto a un grupo de objetos estático. Se eliminó de un grupo de objetos dinámico para hacerlo posible.

Para obtener más información, consulte este artículo sobre las [limitaciones y conflictos de los grupos de objetos dinámicos](dynamic-thing-groups.md#dynamic-thing-group-limitations). 

#### AddThingToDynamicThingGroupsFailed ejemplo de entrada de registro
<a name="log-dynthing-add-thing-to-dynamic-thing-groups-failed.example"></a>

En este ejemplo, se muestra la entrada de registro de un error `AddThingToDynamicThingGroupsFailed`. En este ejemplo, *TestThing*cumplía los criterios para estar en los grupos de elementos dinámicos enumerados en`dynamicThingGroupNames`, pero no se podía añadir a esos grupos dinámicos, tal y como se describe en`reason`. 

```
{
 "timestamp": "2020-03-16 22:24:43.804",
 "logLevel": "ERROR",
 "traceId": "70b1f2f5-d95e-f897-9dcc-31e68c3e1a30",
 "accountId": "57EXAMPLE833",
 "status": "Failure",
 "eventType": "AddThingToDynamicThingGroupsFailed",
 "thingName": "TestThing",
 "dynamicThingGroupNames": [
  "DynamicThingGroup11",
  "DynamicThingGroup12",
  "DynamicThingGroup13",
  "DynamicThingGroup14"
 ],
 "reason": "The thing failed to be added to the given dynamic thing group(s) because the thing already belongs to the maximum allowed number of groups."
}
```

Además de[Atributos comunes CloudWatch de los registros](#cwl-common-attributes), las entradas de `AddThingToDynamicThingGroupsFailed` registro contienen los siguientes atributos:

dynamicThingGroupNombres  
Matriz de los grupos de objetos dinámicos a los que no pudo agregarse el objeto.

razón  
Razón por la cual el objeto no pudo agregarse a los grupos dinámicos.

thingName  
Nombre del objeto que no pudo agregarse a un grupo de objetos dinámico.

## Entradas de registro de indexación de flotas
<a name="fleet-indexing-logs"></a>

AWS IoT La indexación de flotas genera entradas de registro para los siguientes eventos.

**Topics**
+ [NamedShadowCountForDynamicGroupQueryLimitExceeded entrada de registro](#log-named-shadow-dynamic-group)

### NamedShadowCountForDynamicGroupQueryLimitExceeded entrada de registro
<a name="log-named-shadow-dynamic-group"></a>

Se procesan un máximo de 25 sombras con nombre por objeto para los términos de consulta que no son específicos del origen de datos en los grupos dinámicos. Cuando se supere este límite para un objeto, se emitirá el tipo de evento `NamedShadowCountForDynamicGroupQueryLimitExceeded`.

#### NamedShadowCountForDynamicGroupQueryLimitExceeded ejemplo de entrada de registro
<a name="log-named-shadow-dynamic-group.example"></a>

En este ejemplo, se muestra la entrada de registro de un error `NamedShadowCountForDynamicGroupQueryLimitExceeded`. En este ejemplo, los resultados `DynamicGroup` basados en todos los valores pueden ser imprecisos, como se describe en el campo `reason`.

```
{
"timestamp": "2020-03-16 22:24:43.804",
"logLevel": "ERROR",
"traceId": "70b1f2f5-d95e-f897-9dcc-31e68c3e1a30",
"accountId": "571032923833",
"status": "Failure",
"eventType": "NamedShadowCountForDynamicGroupQueryLimitExceeded",
"thingName": "TestThing",
"reason": "A maximum of 25 named shadows per thing are processed for non-data source specific query terms in dynamic groups."
}
```

## Atributos comunes CloudWatch de los registros
<a name="cwl-common-attributes"></a>

Todas las entradas del registro de CloudWatch registros incluyen los siguientes atributos:

accountId  
Tu Cuenta de AWS ID.

eventType  
El tipo de evento para el que se generó el registro. El valor del tipo de evento depende del evento que generó la entrada de registro. Cada descripción de entrada de registro incluye el valor de `eventType` para esa entrada de registro.

logLevel  
El nivel de registro que se está utilizando. Para obtener más información, consulte [Niveles de registro](configure-logging.md#log-level) .

status  
El estado de la solicitud.

timestamp  
La marca de tiempo UTC legible para el ser humano de cuando el cliente se conectó al agente de mensajes de AWS IoT .

traceId  
Un identificador generado aleatoriamente que puede utilizarse para correlacionar todos los registros para una solicitud específica.

# Sube registros del lado del dispositivo a Amazon CloudWatch
<a name="upload-device-logs-to-cloudwatch"></a>

Puedes cargar registros históricos del lado del dispositivo en Amazon CloudWatch para monitorear y analizar la actividad de un dispositivo sobre el terreno. Los registros del dispositivo pueden incluir archivos de registros del sistema, de la aplicación y del dispositivo. [Este proceso utiliza un parámetro de acción de las reglas de registro para publicar los CloudWatch registros del dispositivo en un grupo de registros definido por el cliente.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) 

## Funcionamiento
<a name="upload-process-overview"></a>

El proceso comienza cuando un AWS IoT dispositivo envía mensajes MQTT que contienen archivos de registro formateados a un tema. AWS IoT Una AWS IoT regla supervisa el tema del mensaje y envía los archivos de registro al grupo de CloudWatch registros que usted defina. A continuación, puede revisar y analizar la información.

**Topics**
+ [Temas de MQTT](#upload-mqtt-topics-overview)
+ [Acción de regla](#upload-rule-action-overview)

### Temas de MQTT
<a name="upload-mqtt-topics-overview"></a>

Elija un espacio de nombres de temas de MQTT que utilizará para publicar los registros. Se recomienda utilizar este formato para el espacio de temas común, `$aws/rules/things/thing_name/logs`, y este formato para los temas de error, `$aws/rules/things/thing_name/logs/errors`. Se recomienda utilizar la estructura de nomenclatura para los registros y los temas de error, pero no es obligatoria. Para obtener más información, consulte [Diseño de temas de MQTT para AWS IoT Core](https://docs.aws.amazon.com/whitepapers/latest/designing-mqtt-topics-aws-iot-core/designing-mqtt-topics-aws-iot-core.html). 

Al utilizar el espacio de temas común recomendado, se utilizan los temas reservados de AWS IoT Basic Ingest. AWS IoT Basic Ingest envía de forma segura los datos del dispositivo a los AWS servicios compatibles con las acciones de las AWS IoT reglas. Elimina el agente de publish/subscribe mensajes de la ruta de ingestión, lo que lo hace más rentable. Para obtener más información, consulte [Reducción de los costos de mensajería con Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html). 

Si usa batchMode para cargar archivos de registro, sus mensajes deben seguir un formato específico que incluya una marca temporal y un mensaje de UNIX. [Para obtener más información, consulte el tema sobre los [requisitos de formato de los mensajes MQTT para BatchMode](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html#cloudwatch-logs-rule-action-message-format) en CloudWatch la acción de la regla Logs.](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html) 

### Acción de regla
<a name="upload-rule-action-overview"></a>

Cuando AWS IoT recibe los mensajes MQTT de los dispositivos cliente, una AWS IoT regla supervisa el tema definido por el cliente y publica el contenido en un CloudWatch grupo de registros que usted defina. Este proceso utiliza una acción de regla de CloudWatch registros para supervisar el MQTT en busca de lotes de archivos de registro. Para obtener más información, consulte la acción de la AWS IoT regla [CloudWatch Registros](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html).

#### Modo lote
<a name="upload-batch-mode-overview"></a>

 `batchMode`es un parámetro booleano de la acción de la regla de AWS IoT CloudWatch registros. Este parámetro es opcional y está desactivado (`false`) de forma predeterminada. Para cargar archivos de registro del dispositivo en lotes, debes activar este parámetro (`true`) al crear la regla. AWS IoT Para obtener más información, consulta [CloudWatch los registros en la sección de](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html) acciones de la [AWS IoT regla](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rule-actions.html).

# Carga de registros del lado del dispositivo mediante reglas AWS IoT
<a name="uploading-logs-rules-action-procedure"></a>

Puedes usar el motor de AWS IoT reglas para cargar registros de archivos de registro existentes del lado del dispositivo (registros del sistema, de la aplicación y del dispositivo-cliente) a Amazon. CloudWatch Cuando los registros del dispositivo se publican en un tema de MQTT, la acción Registrar las reglas transfiere los mensajes a CloudWatch Logs. CloudWatch Este proceso describe cómo cargar los registros de los dispositivos en lotes utilizando el parámetro `batchMode` de acción de reglas activado (establecido en `true`). 

Para empezar a cargar los registros del lado del dispositivo, complete los siguientes requisitos previos. CloudWatch

## Requisitos previos
<a name="uploading-logs-rules-prerequisites"></a>

Antes de comenzar, haga lo siguiente:
+ Crea al menos un dispositivo IoT objetivo que esté registrado AWS IoT Core como una AWS IoT cosa. Para obtener más información, consulte [Crear un objeto](https://docs.aws.amazon.com/iot/latest/developerguide/create-iot-resources.html#create-aws-thing). 
+ Determine el espacio de tema de MQTT para la ingesta y los errores. Para obtener más información sobre los temas de MQTT y las convenciones de nomenclatura recomendadas, consulte la sección de [temas de [Temas de MQTT](upload-device-logs-to-cloudwatch.md#upload-mqtt-topics-overview) MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch.html#upload-mqtt-topics-overview) en [Subir registros del lado del dispositivo a Amazon](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch.html). CloudWatch 

[Para obtener más información sobre estos requisitos previos, consulte Cargar registros del lado del dispositivo a. CloudWatch](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch) 

## Crear un grupo de registros CloudWatch
<a name="uploading-logs-rules-setup-log-group"></a>

Para crear un grupo de CloudWatch registros, complete los siguientes pasos. Elija la pestaña adecuada en función de si prefiere realizar los pasos con Consola de administración de AWS o con AWS Command Line Interface (AWS CLI).

------
#### [ Consola de administración de AWS ]

**Para crear un grupo de CloudWatch registros mediante el Consola de administración de AWS**

1. Abra Consola de administración de AWS y navegue hasta [CloudWatch](https://console.aws.amazon.com//cloudwatch). 

1. En la barra de navegación, elija **Registros** y, luego, **Grupos de registros**. 

1. Elija **Crear grupo de registros**. 

1. Actualice el **Nombre del grupo de registro** y, si lo desea, actualice los campos de **Configuración de retención**.

1. Seleccione **Crear**. 

------
#### [ AWS CLI ]

**Para crear un grupo de CloudWatch registros mediante el AWS CLI**

1. Para crear el grupo de registro, ejecute el siguiente comando. Para obtener más información, consulte la Referencia ` [create-log-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/create-log-group.html) ` de comandos AWS CLI de la versión 2.

   Sustituya el nombre del grupo de registro del ejemplo (`uploadLogsGroup`) por el que prefiera.

   ```
   aws logs create-log-group --log-group-name uploadLogsGroup
   ```

1. Para confirmar que el grupo de registro se ha creado correctamente, ejecute el siguiente comando.

   ```
   aws logs describe-log-groups --log-group-name-prefix uploadLogsGroup
   ```

   Código de salida de ejemplo:

   ```
   {
       "logGroups": [
           {
               "logGroupName": "uploadLogsGroup",
               "creationTime": 1674521804657,
               "metricFilterCount": 0,
               "arn": "arn:aws:logs:us-east-1:111122223333:log-group:uploadLogsGroup:*",
               "storedBytes": 0
           }
       ]
   }
   ```

------

## Creación de una regla del tema
<a name="uploading-logs-rules-setup-topic-rule"></a>

Para crear una AWS IoT regla, complete los siguientes pasos. Elija la pestaña adecuada en función de si prefiere realizar los pasos con Consola de administración de AWS o con AWS Command Line Interface (AWS CLI).

------
#### [ Consola de administración de AWS ]

**Para crear una regla temática mediante el Consola de administración de AWS**

1. Abra el Centro de reglas.

   1. Abra la Consola de administración de AWS y vaya a [AWS IoT](https://console.aws.amazon.com/iot). 

   1. En la barra de navegación, seleccione **Enrutamiento de mensajes** y, a continuación, **Reglas**. 

   1. Seleccione **Creación de regla**. 

1. Introduzca las propiedades de la regla.

   1. Introduzca un **Nombre de la regla** alfanumérico. 

   1. (Opcional) Introduzca una **Descripción de regla** y **Etiquetas**. 

   1. Elija **Siguiente**. 

1. Introduzca una instrucción SQL.

   1. Introduzca una instrucción SQL utilizando el tema de MQTT que definió para la ingesta.

      Por ejemplo, `SELECT * FROM '$aws/rules/things/thing_name/logs' ` 

   1. Elija **Siguiente**. 

1. Introduzca las acciones de regla.

   1. En el menú **Acción 1**, selecciona **CloudWatchregistros**. 

   1. Elija el **Nombre del grupo de registro** y, a continuación, el grupo de registro que ha creado.

   1. Seleccione **Usar el modo de lotes**. 

   1. Especifique el rol de IAM para la regla.

      Si dispone de un rol de IAM para la regla, haga lo siguiente.

      1. En el menú **Rol de IAM**, elija el rol de IAM.

      Si no dispone de un rol de IAM para la regla, haga lo siguiente.

      1. Elija **Crear nuevo rol**. 

      1. En **Nombre del rol**, introduzca un nombre único y elija **Crear**. 

      1. Confirme que el nombre del rol de IAM es correcto en el campo **Rol de IAM**.

   1. Elija **Siguiente**. 

1. Revise la configuración de la plantilla.

   1. Revise la configuración de la plantilla de trabajo para comprobar que es correcta.

   1. Cuando haya terminado, elija **Crear**. 

------
#### [ AWS CLI ]

**Para crear un rol de IAM y una regla temática mediante el AWS CLI**

1. Cree un rol de IAM que otorgue derechos a la AWS IoT regla.

   1. Cree una política de IAM.

      Para crear una política de IAM, ejecute el siguiente comando. Asegúrese de actualizar el valor del parámetro `policy-name`. Para obtener más información, consulte la Referencia [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-policy.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-policy.html)de comandos de AWS CLI la versión 2.
**nota**  
Si utiliza un sistema operativo Microsoft Windows, puede que tenga que sustituir el marcador de final de línea (\$1) por una marca (`) u otro carácter.

      ```
      aws iam create-policy \
          --policy-name uploadLogsPolicy \
          --policy-document \
      '{
          "Version": "2012-10-17",		 	 	 
          "Statement": {
              "Effect": "Allow",
              "Action": [
                  "iot:CreateTopicRule",
                  "iot:Publish",
                  "logs:CreateLogGroup",
                  "logs:CreateLogStream",
                  "logs:PutLogEvents",
                  "logs:GetLogEvents"
              ],
              "Resource": "*"
          }
      }'
      ```

   1. Copie el ARN de la política de su salida en un editor de texto.

      Código de salida de ejemplo:

      ```
      {
          "Policy": {
              "PolicyName": "uploadLogsPolicy",
              "PermissionsBoundaryUsageCount": 0,
              "CreateDate": "2023-01-23T18:30:10Z",
              "AttachmentCount": 0,
              "IsAttachable": true,
              "PolicyId": "AAABBBCCCDDDEEEFFFGGG",
              "DefaultVersionId": "v1",
              "Path": "/",
              "Arn": "arn:aws:iam::111122223333:policy/uploadLogsPolicy",
              "UpdateDate": "2023-01-23T18:30:10Z"
          }
      }
      ```

   1. Cree un rol de IAM y una política de confianza.

      Para crear una política de IAM, ejecute el siguiente comando. Asegúrese de actualizar el valor del parámetro `role-name`. Para obtener más información, consulte la Referencia [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-role.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-role.html)de comandos AWS CLI de la versión 2.

      ```
      aws iam create-role \
      --role-name uploadLogsRole \
      --assume-role-policy-document \
      '{
          "Version": "2012-10-17",		 	 	 
          "Statement": [
              {
                  "Sid": "",
                  "Effect": "Allow",
                  "Principal": {
                      "Service": "iot.amazonaws.com"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
      }'
      ```

   1. Adjunte la política de IAM al rol.

      Para crear una política de IAM, ejecute el siguiente comando. Asegúrese de actualizar los valores de los parámetros `role-name` y `policy-arn`. Para obtener más información, consulte la Referencia [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/attach-role-policy.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/attach-role-policy.html)de comandos AWS CLI de la versión 2.

      ```
      aws iam attach-role-policy \
      --role-name uploadLogsRole \
      --policy-arn arn:aws:iam::111122223333:policy/uploadLogsPolicy
      ```

   1. Revise el rol.

      Para confirmar que el rol de IAM se ha creado correctamente, ejecute el siguiente comando. Asegúrese de actualizar el valor del parámetro `role-name`. Para obtener más información, consulte la Referencia [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/get-role.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/get-role.html)de comandos AWS CLI de la versión 2.

      ```
      aws iam get-role --role-name uploadLogsRole
      ```

      Código de salida de ejemplo:

      ```
      {
          "Role": {
              "Path": "/",
              "RoleName": "uploadLogsRole",
              "RoleId": "AAABBBCCCDDDEEEFFFGGG",
              "Arn": "arn:aws:iam::111122223333:role/uploadLogsRole",
              "CreateDate": "2023-01-23T19:17:15+00:00",
              "AssumeRolePolicyDocument": {
                  "Version": "2012-10-17",		 	 	 
                  "Statement": [
                      {
                          "Sid": "Statement1",
                          "Effect": "Allow",
                          "Principal": {
                              "Service": "iot.amazonaws.com"
                          },
                          "Action": "sts:AssumeRole"
                      }
                  ]
              },
              "Description": "",
              "MaxSessionDuration": 3600,
              "RoleLastUsed": {}
          }
      }
      ```

1. Cree una regla AWS IoT temática en AWS CLI.

   1. Para crear una regla AWS IoT temática, ejecute el siguiente comando. Asegúrese de actualizar los valores de la `sql` sentencia `--rule-name` `description``roleARN `, y de los `logGroupName` parámetros. Para obtener más información, consulte la Referencia [create-topic-rule](https://awscli.amazonaws.com/v2/documentation/api/2.0.34/reference/iot/create-topic-rule.html)de comandos AWS CLI de la versión 2.

      ```
      aws iot create-topic-rule \
      --rule-name uploadLogsRule \
      --topic-rule-payload \
      	'{
      		"sql":"SELECT * FROM 'rules/things/thing_name/logs'",
      		"description":"Upload logs test rule",
      		"ruleDisabled":false,
      		"awsIotSqlVersion":"2016-03-23",
      		"actions":[
      			{"cloudwatchLogs":
      				{"roleArn":"arn:aws:iam::111122223333:role/uploadLogsRole",
      				"logGroupName":"uploadLogsGroup",
      				"batchMode":true}
      				}
      			]
      }'
      ```

   1. Para confirmar que la regla se ha creado correctamente, ejecute el siguiente comando. Asegúrese de actualizar el valor del parámetro `role-name`. Para obtener más información, consulte la Referencia [get-topic-rule](https://awscli.amazonaws.com/v2/documentation/api/2.0.34/reference/iot/get-topic-rule.html)de comandos AWS CLI de la versión 2.

      ```
      aws iot get-topic-rule --rule-name uploadLogsRule
      ```

      Código de salida de ejemplo:

      ```
      {
          "ruleArn": "arn:aws:iot:us-east-1:111122223333:rule/uploadLogsRule",
          "rule": {
              "ruleName": "uploadLogsRule",
              "sql": "SELECT * FROM rules/things/thing_name/logs",
              "description": "Upload logs test rule",
              "createdAt": "2023-01-24T16:28:15+00:00",
              "actions": [
                  {
                      "cloudwatchLogs": {
                          "roleArn": "arn:aws:iam::111122223333:role/uploadLogsRole",
                          "logGroupName": "uploadLogsGroup",
                          "batchMode": true
                      }
                  }
              ],
              "ruleDisabled": false,
              "awsIotSqlVersion": "2016-03-23"
          }
      }
      ```

------

## Enviar registros del lado del dispositivo a AWS IoT
<a name="uploading-logs-rules-start-messages"></a>

**Para enviar registros del lado del dispositivo a AWS IoT**

1. Para enviar los registros históricos AWS IoT, comunícate con tus dispositivos para garantizar lo siguiente.
   + La información del registro se envía al espacio de nombres del tema correcto, tal como se especifica en la sección *Requisitos previos* de este procedimiento.

     Por ejemplo, `$aws/rules/things/thing_name/logs` 
   + La carga del mensaje MQTT está formateada correctamente. Para obtener más información sobre el tema de MQTT y la convención de nomenclatura recomendada, consulta la [Temas de MQTT](upload-device-logs-to-cloudwatch.md#upload-mqtt-topics-overview) sección correspondiente. [Sube registros del lado del dispositivo a Amazon CloudWatch](upload-device-logs-to-cloudwatch.md)

1. Confirme que los mensajes MQTT se reciben en el cliente AWS IoT MQTT.

   1. Abre Consola de administración de AWS y navega hasta. [AWS IoT](https://console.aws.amazon.com/iot/home) 

   1. Para ver el **cliente de pruebas de MQTT**, en la barra de navegación, elija **Test, cliente de pruebas** de **MQTT**. 

   1. En **Suscribirse a un tema****, en Filtro** de temas, introduzca el espacio de nombres del *tema*. 

   1. Elija **Suscribirse**. 

      Los mensajes MQTT aparecen en la tabla **Suscripciones** y **Tema**, como se muestra a continuación. Estos mensajes pueden tardar hasta cinco minutos en aparecer.   
![\[Los mensajes MQTT aparecen en la tabla Suscripciones y Tema, tal como se muestra a continuación.\]](http://docs.aws.amazon.com/es_es/iot/latest/developerguide/images/uploading-logs-rules-start-messages-sample-mqtt.png)

## Visualización de los datos de registro
<a name="uploading-logs-rules-review-cloudwatch"></a>

**Para revisar tus registros en Logs CloudWatch**

1. Abre Consola de administración de AWS y navega hasta [CloudWatch](https://console.aws.amazon.com/cloudwatch). 

1. En la barra de navegación, selecciona **Logs**, **Logs Insights**. 

1. En el menú **Seleccionar grupos de registros**, elija el grupo de registros que especificó en la AWS IoT regla.

1. En la página **Logs Insights**, seleccione **Ejecutar la consulta**. 

# Registrar las llamadas a la AWS IoT API mediante AWS CloudTrail
<a name="iot-using-cloudtrail"></a>

AWS IoT está integrado con AWS CloudTrail un servicio que proporciona un registro de las acciones realizadas por un usuario, un rol o un AWS servicio en AWS IoT. CloudTrail captura todas las llamadas a la API AWS IoT como eventos, incluidas las llamadas desde la AWS IoT consola y desde las llamadas de código a AWS IoT APIs. Si crea una ruta, puede habilitar la entrega continua de CloudTrail eventos a un bucket de Amazon S3, incluidos los eventos para AWS IoT. Si no configura una ruta, podrá ver los eventos más recientes en la CloudTrail consola, en el **historial de eventos**. Con la información recopilada por usted CloudTrail, puede determinar el destinatario de la solicitud AWS IoT, la dirección IP desde la que se realizó la solicitud, quién la realizó, cuándo se realizó y otros detalles.

Para obtener más información CloudTrail, consulta la [Guía AWS CloudTrail del usuario](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/). 

## AWS IoT información en CloudTrail
<a name="aws-iot-info-in-cloudtrail"></a>

CloudTrail está habilitada en tu cuenta Cuenta de AWS al crear la cuenta. Cuando se produce una actividad en AWS IoT, esa actividad se registra en un CloudTrail evento junto con otros eventos de AWS servicio en el **historial de eventos**. Puede ver, buscar y descargar eventos recientes en su Cuenta de AWS. Para obtener más información, consulte [Visualización de eventos con el historial de CloudTrail eventos](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html). 

Para mantener un registro continuo de eventos en la Cuenta de AWS, incluidos los eventos de AWS IoT, cree un registro de seguimiento. Un rastro permite CloudTrail entregar archivos de registro a un bucket de Amazon S3. De forma predeterminada, cuando crea una ruta en la consola, la ruta se aplica a todos los Región de AWS s. La ruta registra los eventos de todas las Región de AWS s de la AWS partición y entrega los archivos de registro al bucket de Amazon S3 que especifique. Puede configurar otros AWS servicios para analizar más a fondo los datos de eventos recopilados en los CloudTrail registros y actuar en función de ellos. Para obtener más información, consulte lo siguiente: 
+  [Introducción a la creación de registros de seguimiento](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html) 
+  [CloudTrail Servicios e integraciones compatibles](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations) 
+  [Configuración de las notificaciones de Amazon SNS para CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html) 
+  [Recibir archivos de CloudTrail registro de varias regiones](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html) y [recibir archivos de CloudTrail registro de varias cuentas](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html) 

**nota**  
AWS IoT las acciones del plano de datos (del lado del dispositivo) no se registran CloudTrail. Se utiliza CloudWatch para supervisar estas acciones.

En términos generales, las acciones del plano de AWS IoT control que realizan cambios se registran mediante CloudTrail. Las llamadas como **CreateThing**«y» **UpdateCertificate**dejan CloudTrail entradas, mientras que las llamadas «como» **ListThings**y «**ListTopicRules**no». **CreateKeysAndCertificate**

Cada entrada de registro o evento contiene información sobre quién generó la solicitud. La información de identidad del usuario lo ayuda a determinar lo siguiente: 
+ Si la solicitud se realizó con las credenciales raíz o del usuario de IAM.
+ Si la solicitud se realizó con credenciales de seguridad temporales de un rol o fue un usuario federado.
+ Si la solicitud la realizó otro AWS servicio.

Para obtener más información, consulte el [Elemento userIdentity de CloudTrail ](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html). 

AWS IoT las acciones se documentan en la [referencia AWS IoT de la API](https://docs.aws.amazon.com/iot/latest/apireference/). AWS IoT Wireless las acciones se documentan en la [Referencia AWS IoT Wireless de la API](https://docs.aws.amazon.com/iot-wireless/latest/apireference/welcome.html). 

## Descripción de las entradas de los archivos de AWS IoT registro
<a name="understanding-aws-iot-entries"></a>

Un rastro es una configuración que permite la entrega de eventos como archivos de registro a un bucket de Amazon S3 que especifique. CloudTrail Los archivos de registro contienen una o más entradas de registro. Un evento representa una solicitud única de cualquier fuente e incluye información sobre la acción solicitada, la fecha y la hora de la acción, los parámetros de la solicitud, etc. CloudTrail Los archivos de registro no son un registro ordenado de las llamadas a la API pública, por lo que no aparecen en ningún orden específico. 

En el siguiente ejemplo, se muestra una entrada de CloudTrail registro que demuestra la `AttachPolicy` acción.

```
{
    "timestamp":"1460159496",
    "AdditionalEventData":"",
    "Annotation":"",
    "ApiVersion":"",
    "ErrorCode":"",
    "ErrorMessage":"",
    "EventID":"8bff4fed-c229-4d2d-8264-4ab28a487505",
    "EventName":"AttachPolicy",
    "EventTime":"2016-04-08T23:51:36Z",
    "EventType":"AwsApiCall",
    "ReadOnly":"",
    "RecipientAccountList":"",
    "RequestID":"d4875df2-fde4-11e5-b829-23bf9b56cbcd",
    "RequestParamters":{
        "principal":"arn:aws:iot:us-east-1:123456789012:cert/528ce36e8047f6a75ee51ab7beddb4eb268ad41d2ea881a10b67e8e76924d894",
        "policyName":"ExamplePolicyForIoT"
    },
    "Resources":"",
    "ResponseElements":"",
    "SourceIpAddress":"52.90.213.26",
    "UserAgent":"aws-internal/3",
    "UserIdentity":{
        "type":"AssumedRole",
        "principalId":"AKIAI44QH8DHBEXAMPLE",
        "arn":"arn:aws:sts::12345678912:assumed-role/iotmonitor-us-east-1-beta-InstanceRole-1C5T1YCYMHPYT/i-35d0a4b6",
        "accountId":"222222222222",
        "accessKeyId":"access-key-id",
        "sessionContext":{
            "attributes":{
                "mfaAuthenticated":"false",
                "creationDate":"Fri Apr 08 23:51:10 UTC 2016"
            },
            "sessionIssuer":{
                "type":"Role",
                "principalId":"AKIAI44QH8DHBEXAMPLE",
                "arn":"arn:aws:iam::123456789012:role/executionServiceEC2Role/iotmonitor-us-east-1-beta-InstanceRole-1C5T1YCYMHPYT",
                "accountId":"222222222222",
                "userName":"iotmonitor-us-east-1-InstanceRole-1C5T1YCYMHPYT"
            }
        },
        "invokedBy":{
            "serviceAccountId":"111111111111"
        }
    },
    "VpcEndpointId":""
}
```