Guía de resolución de problemas para la indexación de flotas - 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.

Guía de resolución de problemas para la indexación de flotas

Solución de problemas de consultas de agregación en el servicio de indexación de flotas

Si tiene errores de falta de coincidencia de tipos, puede utilizar CloudWatch los registros para solucionar el problema. CloudWatch Los registros deben estar habilitados antes de que el servicio de indexación de flotas los escriba. Para obtener más información, consulte AWS IoT Supervise mediante CloudWatch registros.

Para hacer consultas de agregación en campos no administrados, debe especificar un campo que usted haya definido en el argumento customFields transferido a UpdateIndexingConfiguration o update-indexing-configuration. Si el valor del campo no coincide con el tipo de datos del campo configurado, este valor se omite al realizar una consulta de agregación.

Si un campo no se puede indexar porque el tipo no coincide, el servicio de indexación de flotas envía un registro de errores a Logs. CloudWatch El registro de errores contiene el nombre del campo, el valor que no se pudo convertir y el nombre de objeto del dispositivo. A continuación, se muestra un ejemplo de registro de error.

{ "timestamp": "2017-02-20 20:31:22.932", "logLevel": "ERROR", "traceId": "79738924-1025-3a00-a669-7bec69f7f07a", "accountId": "000000000000", "status": "SucceededWithIssues", "eventType": "IndexingCustomFieldFailed", "thingName": "thing0", "failedCustomFields": [ { "Name": "attributeName1", "Value": "apple", "ExpectedType": "String" }, { "Name": "attributeName2", "Value": "2", "ExpectedType": "Boolean" } ] }

Si un dispositivo se ha desconectado durante aproximadamente una hora, el valor timestamp del estado de conectividad podría no aparecer. En el caso de las sesiones persistentes, es posible que falte el valor después de que un cliente haya estado desconectado durante más tiempo del tiempo configurado time-to-live (TTL) para la sesión persistente. Los datos de estado de conectividad solo se indexan para las conexiones donde el ID de cliente tiene un nombre de objeto coincidente. (El ID de cliente es el valor que se utiliza para conectar un dispositivo a) AWS IoT Core.

Resolución de problemas en la configuración de la indexación de flotas

No se puede cambiar a versiones inferiores en la configuración de la indexación de flotas

No se puede cambiar la configuración de la indexación de flotas a una versión inferior cuando quiere eliminar los orígenes de datos asociados a una métrica de flotas o a un grupo dinámico.

Por ejemplo, si la configuración de indexación tiene datos de registro, datos de sombra y datos de conectividad y existe una métrica de flotas con la consulta thingName:TempSensor* AND shadow.desired.temperature>80, actualizar la configuración de indexación para incluir solo los datos de registro generará un error.

No se admite la modificación de los campos personalizados utilizados por las métricas de flota existentes.

No se puede actualizar la configuración de la indexación debido a que las métricas de flota o los grupos dinámicos son incompatibles

Si no puede actualizar la configuración de indexación porque las métricas de flota o los grupos dinámicos son incompatibles, elimine las métricas de flota o los grupos dinámicos incompatibles antes de actualizar la configuración de indexación.

Solución de problemas de indexación de ubicación y geoconsultas

Para solucionar errores tipográficos no coincidentes en la indexación de ubicaciones y las geoconsultas, puede habilitar los registros. CloudWatch Para obtener más información sobre cómo supervisar el AWS IoT uso CloudWatch, sigue la guía. step-by-step

Al indexar los datos de ubicación mediante geoconsultas, los campos de ubicación que especifique geoLocations deben coincidir con los campos de ubicación a UpdateIndexingConfiguration los que pase. Si hay una discrepancia, la indexación de la flota envía un error de tipo no coincidente a. CloudWatch El registro de errores contiene el nombre del campo, el valor que no se pudo convertir y el nombre de objeto del dispositivo.

A continuación, se muestra un ejemplo de registro de error.

{ "timestamp": "2023-11-09 01:39:43.466", "logLevel": "ERROR", "traceId": "79738924-1025-3a00-a669-7bec69f7f07a", "accountId": "123456789012", "status": "Failure", "eventType": "IndexingGeoLocationFieldFailed", "thingName": "thing0", "failedGeolocationFields": [ { "Name": "attributeName1", "Value": "apple", "ExpectedType": "Geopoint" } ], "reason": "failed to index the field because it could not be converted to one of the expected geoLocation formats." }

Para obtener más información, consulte Indexación de datos de ubicación.

Resolución de problemas en las métricas de flotas

No se pueden ver los puntos de datos en CloudWatch

Si puedes crear una métrica de flota pero no puedes ver los puntos de datos CloudWatch, es probable que no tengas nada que cumpla con los criterios de la cadena de consulta.

Consulte este comando de ejemplo para ver cómo crear una métrica de flotas:

aws iot create-fleet-metric --metric-name "example_FM" --query-string "thingName:TempSensor* AND attributes.temperature>80" --period 60 --aggregation-field "attributes.temperature" --aggregation-type name=Statistics,values=count

Si no tiene un objeto que cumpla con los criterios de la cadena de consulta --query-string "thingName:TempSensor* AND attributes.temperature>80":

  • Con values=count ella, podrás crear una métrica de flota y habrá puntos de datos para mostrarlos CloudWatch. Los puntos de datos del valor count son siempre 0.

  • Con values otras count opciones, podrás crear una métrica de flota, pero no verás la métrica de la flota ni habrá puntos de datos que mostrar CloudWatch. CloudWatch