AWS IoT Guía de solución de problemas de Device Advisor - AWS IoT Core

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.

AWS IoT Guía de solución de problemas de Device Advisor

Ayúdenos a mejorar este tema
General
P: ¿Puedo ejecutar varios conjuntos de pruebas en paralelo?

R: Sí. Ahora, Device Advisor admite la ejecución de varios conjuntos de pruebas en diferentes dispositivos mediante un punto de conexión en el nivel del dispositivo. Si utiliza el punto de conexión en el nivel de la cuenta, puede ejecutar un conjunto a la vez, ya que hay un punto de conexión de Device Advisor disponible por cuenta. Para obtener más información, consulte Configure your device.

P: He visto en mi dispositivo que Device Advisor ha denegado la TLS conexión. ¿Eso es algo normal?

R: Sí. Device Advisor deniega la TLS conexión antes y después de cada prueba. Recomendamos que los usuarios implementen un mecanismo de reintento del dispositivo para disfrutar de una experiencia de prueba totalmente automatizada con Device Advisor. Si ejecuta un conjunto de pruebas con más de un caso de prueba, por ejemplo, TLS MQTT conectar, conectar y MQTT publicar, le recomendamos que tenga un mecanismo diseñado para su dispositivo. El mecanismo puede intentar conectarse a nuestro punto de conexión de prueba cada cinco segundos durante uno o dos minutos. De este modo, puede ejecutar varios casos de prueba en secuencia de forma automatizada.

P: ¿Puedo obtener un historial de las API llamadas de Device Advisor realizadas en mi cuenta para realizar análisis de seguridad y solucionar problemas operativos?

R: Sí. Para recibir un historial de las API llamadas de Device Advisor realizadas en su cuenta, solo tiene que activar CloudTrail la AWS IoT Consola de administración y filtro el origen del eventoiotdeviceadvisor.amazonaws.com.

P: ¿Cómo puedo ver los inicios de sesión de Device Advisor CloudWatch?

R: Los registros generados durante la ejecución de un conjunto de pruebas se cargan CloudWatch si agrega la política requerida (por ejemplo CloudWatchFullAccess) a su función de servicio (consulteConfiguración). Si hay al menos un caso de prueba en el conjunto de pruebas, se crea un grupo de registros «aws/iot/deviceadvisor/$testSuiteId» con dos flujos de registros. Una secuencia es el «$testRunId» e incluye registros de las acciones realizadas antes y después de ejecutar los casos de prueba en el conjunto de pruebas, como los pasos de configuración y limpieza. El otro flujo de registro es «$ suiteRunId _$»testRunId, que es específico de la ejecución de un conjunto de pruebas. Eventos enviados desde dispositivos y AWS IoT Core se registrará en este flujo de registro.

P: ¿Para qué sirve el rol de permisos del dispositivo?

R: Device Advisor se interpone entre su dispositivo de prueba y AWS IoT Core para simular escenarios de prueba. Acepta conexiones y mensajes de sus dispositivos de prueba y los reenvía a AWS IoT Core asumiendo la función de permiso de tu dispositivo e iniciando una conexión en tu nombre. Es importante que te asegures de que los permisos de la función de dispositivo son los mismos que los del certificado que utilizas para ejecutar las pruebas. AWS IoT las políticas de certificados no se aplican cuando Device Advisor inicia una conexión a AWS IoT Core en su nombre mediante la función de permisos del dispositivo. Sin embargo, se aplican los permisos del rol de permisos del dispositivo que usted establezca.

P: ¿En qué regiones es compatible Device Advisor?

R: Device Advisor es compatible en las regiones us-east-1, us-west-2, ap-northeast-1 y eu-west-1.

P: ¿Por qué veo resultados incoherentes?

R: Una de las principales causas de los resultados incoherentes es haber establecido el EXECUTION_TIMEOUT de una prueba en un valor demasiado bajo. Para obtener más información sobre los valores de EXECUTION_TIMEOUT recomendados y predeterminados, consulte Device Advisor test cases.

P: ¿Qué MQTT protocolo admite Device Advisor?

R: Device Advisor es compatible con MQTT la versión 3.1.1 con certificados de cliente X509.

P: ¿Qué sucede si mi caso de prueba falla y aparece un mensaje de que se ha agotado el tiempo de espera de la ejecución aunque haya intentado conectar mi dispositivo al punto de conexión de prueba?

R: Valide todos los pasos de la sección Crear una IAM función para utilizarla como función de dispositivo. Si la prueba sigue fallando, es posible que el dispositivo no esté enviando la extensión de indicación de nombre de servidor (SNI) correcta, necesaria para que Device Advisor funcione. El SNI valor correcto es la dirección del punto final que se devuelve al seguir la sección Configure su dispositivo. AWS IoT también requiere que los dispositivos envíen la extensión de indicación del nombre del servidor (SNI) al protocolo Transport Layer Security (TLS). Para obtener más información, consulte Seguridad del transporte en AWS IoT.

P: Mi MQTT conexión falla debido a un error de «libaws-c-mqtt: AWS_ERROR MQTT _ UNEXPECTED _ _HANGUP» (o) la MQTT conexión de mi dispositivo se desconecta automáticamente del punto final de Device Advisor. ¿Cómo se puede resolver este error?

R: Este código de error y las desconexiones inesperadas pueden deberse a muchos factores, pero lo más probable es que estén relacionados con el rol de dispositivo asociado a este. Los siguientes puntos de verificación (en orden de prioridad) resolverán este problema.

  • La función de dispositivo asociada al dispositivo debe tener los IAM permisos mínimos necesarios para ejecutar las pruebas. Device Advisor utilizará la función de dispositivo adjunta para desempeñarla AWS IoT MQTTacciones en nombre del dispositivo de prueba. Si no se dispone de los permisos necesarios, aparecerá el error AWS_ERROR_MQTT_UNEXPECTED_HANGUP o habrá desconexiones inesperadas mientras el dispositivo intenta conectarse al punto de conexión de Device Advisor. Por ejemplo, si ha seleccionado ejecutar el caso de prueba MQTTPublicar, las acciones Conectar y Publicar deben incluirse en el rol con el tema ClientId y el correspondiente (puede proporcionar varios valores mediante comas para separar los valores y puede proporcionar valores de prefijo con un carácter comodín (*). Por ejemplo, para dar permiso para publicar sobre cualquier tema que empiece por TestTopic, puede ofrecer “TestTopic*“ como el valor del recurso. Aquí tiene algunos ejemplos de políticas.

  • Los valores definidos en el rol de dispositivo para los tipos de recursos no coinciden con los valores reales utilizados en el código. Por ejemplo: en el código del dispositivo ClientId se define una discrepancia entre el rol y el código que ClientId se utiliza realmente. Los valores ClientId, como el tema, y TopicFilter deben ser idénticos en la función y el código del dispositivo.

  • El certificado de dispositivo adjunto al dispositivo debe estar activo y tener una política asociada, con los permisos de acción necesarios para los recursos. Tenga en cuenta que la política de certificados de dispositivos concede o deniega el acceso a AWS IoT recursos y AWS IoT Core operaciones del plano de datos. Device Advisor requiere que tenga un certificado de dispositivo activo adjunto a su dispositivo que otorgue los permisos de acción utilizados durante un caso de prueba.