¿Cómo configuro los ajustes de registro predeterminados para AWS IoT Core?

5 minutos de lectura
0

Quiero configurar los ajustes de registro predeterminados para los registros de AWS IoT en AWS IoT Core para reducir costes y tráfico de datos.

Descripción breve

Nota: Este artículo se refiere únicamente a la V2 de los registros de AWS IoT Core.

Se recomienda establecer el registro predeterminado en un nivel de detalle bajo para AWS IoT Core y configurar el registro específico de recursos en un nivel de detalle más alto. Los niveles de detalle del registro son DISABLED (el más bajo), ERROR, WARN, INFO y DEBUG (el más alto).

**Importante:**Según el tamaño de su flota de AWS IoT Core, activar niveles de registro más detallados puede generar costes elevados y dificultar la resolución de problemas. Activar niveles de registro más detallados también genera un mayor tráfico de datos. Se recomienda utilizar INFO o DEBUG solo como medida temporal para solucionar problemas. Una vez finalizada la resolución de problemas, restablezca los niveles de registro a una configuración menos detallada.

Solución

Requisito previo

Asegúrese de tener la interfaz de la línea de comandos de AWS (AWS CLI) instalada localmente con las credenciales de permisos de administrador de IoT. La región de AWS por defecto para AWS CLI debe apuntar a la región de AWS deseada. Debe tener clientes conectados e interactuando con sus puntos de conexión de AWS IoT Core, ya sea como objetos IoT registrados o no registrados.

Nota: Si recibe errores al ejecutar los comandos de AWS CLI, asegúrese de utilizar la versión más reciente de AWS CLI.

Establecer los niveles de registro por defecto

Al establecer el nivel de registro predeterminado para sus registros de AWS IoT en ERROR o WARN, puede revisar los errores o advertencias del registro cuando se produzcan.

Nota: Si solicita ayuda a AWS Support, debe proporcionar los registros de AWS IoT Core para que puedan solucionar el problema. Esta información se considera información del cliente y AWS Support no puede acceder a ella.

1.    Ejecute el comando de AWS CLI list-v2-logging-levels para encontrar las configuraciones de nivel de registro actuales:

aws iot list-v2-logging-levels

Recibe un error NotConfiguredException si los registros de AWS IoT no están configurados porque no se han establecido niveles de registro.

Si los registros de AWS IoT Core están configurados, pero desactivados, recibirá un mensaje similar al siguiente:

{
 "logTargetConfigurations": [
 {
 "logTarget": {
 "targetType": "DEFAULT"
 },
 "logLevel": "DISABLED"
 }
 ]
}

2.    Ejecute el siguiente comando para confirmar la función de AWS Identity and Access Management (IAM) configurada actualmente para los registros de AWS IoT Core:

aws iot get-v2-logging-options

Si se ha configurado un rol de IAM, aparecerá un mensaje similar al siguiente:

{
"roleArn": "arn:aws:iam::123456789012:role/service-role/iot-log-role",
"defaultLogLevel": "DISABLED",
"disableAllLogs": false
}

Nota: Si no hay un rol de IAM configurado, AWS IoT Core no puede enviar registros a Amazon CloudWatch y no podrá utilizar esta característica.

3.    Establezca el registro predeterminado de AWS IoT Core en uno de los niveles de registro menos detallados, como ERROR o WARN. Esto se puede hacer utilizando la consola de AWS IoT o AWS CLI:

Nota: Si está solucionando un problema y no tiene atributos de cliente específicos, puede establecer temporalmente el nivel de registro predeterminado en DEBUG. Establecer el nivel en DEBUG genera significativos costes y tráfico de datos, dependiendo del tamaño de la flota y de cuánto tiempo pase en este nivel.

Consola de AWS IoT

1.    Inicie sesión en la consola de AWS IoT. Nota: Asegúrese de elegir la región de AWS que desea configurar.

2.    En el panel de navegación, seleccione Configuración.

3.    En Registros, seleccione Administrar registros.

4.    En Rol del registro, seleccione Crear rol. Introduzca un nombre para el rol y seleccione Crear.

5.    En Nivel del registro, seleccione uno de los niveles de registro menos detallados (ERROR o WARN).

6.    Seleccione Actualizar.

7.    Abra la consola de IAM.

8.    En el panel de navegación, seleccione Roles.

9.    Introduzca el nombre del rol de registro que ha creado en el cuadro de búsqueda y, a continuación, seleccione el rol.

10.    En Resumen, compruebe el ARN del rol de registro. Tendrá un aspecto similar a arn:aws:iam::123456789012:role/service-role/iot-log-role.

AWS CLI

1.    Cree un rol de IAM con una política de IAM específica que se utilizará para su servicio de registros de AWS IoT Core.

2.    Ejecute el siguiente comando para establecer el nivel de registro predeterminado en WARN:

aws iot set-v2-logging-options \
 --role-arn arn:aws:iam::123456789012:role/service-role/iot-log-role \
 --default-log-level WARN

Nota: En este ejemplo, sustituya --role-arn por el ARN del rol de IAM que ha creado. Sustituya WARN por el nivel de registro que desee establecer como nivel por defecto.

3.    Ejecute el siguiente comando para confirmar que los cambios se reflejan en sus niveles de registro:

aws iot list-v2-logging levels

El resultado es similar al siguiente mensaje:

{
 "logTargetConfigurations": [
 {
 "logTarget": {
 "targetType": "DEFAULT"
 },
 "logLevel": "WARN"
 }
 ]
}

4.    Ejecute el siguiente comando para confirmar que los cambios se reflejan en sus opciones de registro:

aws iot list-v2-logging-options

El resultado es similar al siguiente mensaje:

{
 "roleArn": "arn:aws:iam::123456789012:role/service-role/iot-log-role",
 "defaultLogLevel": "WARN",
 "disableAllLogs": false
}

Supervisión de los registros generados

Se recomienda supervisar los registros de IoT para detectar dificultades o problemas. Puede utilizar la Consola de registros de Amazon CloudWatch o AWS CLI para supervisar sus registros de AWS IoT Core. Para más información, consulte la sección "Supervisión de las entradas de registro" de ¿Cómo puedo administrar mejor los niveles de registro de mis registros de AWS IoT en AWS IoT Core?

Información relacionada

Supervisión de AWS IoT

¿Cómo configuro los niveles de registro de forma dinámica para recursos específicos en AWS IoT Core?

¿Cómo configuro manualmente los niveles de registro para recursos específicos en AWS IoT Core?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año