Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Résolution des problèmes liés à l'indexation du parc
Dépannage des requêtes d'agrégation pour le service d'indexation de parc
Si vous rencontrez des erreurs de type non concordant, vous pouvez utiliser CloudWatch les journaux pour résoudre le problème. CloudWatch Les journaux doivent être activés avant que les journaux ne soient écrits par le service d'indexation de flotte. Pour de plus amples informations, veuillez consulter Surveillance AWS IoT en utilisant CloudWatch les journaux.
Lorsque vous effectuez des requêtes d'agrégation sur des champs non gérés, vous pouvez uniquement spécifier un champ que vous avez défini dans customFields l'argument passé à UpdateIndexingConfiguration ou update-indexing-configuration. Si la valeur du champ n'est pas cohérente avec le type de données du champ configuré, cette valeur est ignorée lorsque vous effectuez une requête d'agrégation.
Si un champ ne peut pas être indexé en raison d'un type non apparié, le service Fleet Indexing envoie un journal des erreurs à Logs. CloudWatch Le journal des erreurs contient le nom du champ, la valeur qui n'a pas pu être convertie et le nom d'objet de l'appareil. Voici un exemple de journal des erreurs.
{ "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 appareil a été déconnecté pendant environ une heure, la valeur timestamp du statut de connectivité peut être manquante. En ce qui concerne les sessions permanentes, la valeur peut être manquante quand un client a été déconnecté pendant une durée supérieure à la durée de vie (TTL) configurée pour la session permanente. Les données de statut de connectivité sont indexées uniquement pour les connexions où l’ID client contient un nom d'objet correspondant. (L'ID client est la valeur utilisée pour connecter un appareil à AWS IoT Core.)
Résolution de problèmes de configuration d'indexation de la flotte
Impossible de rétrograder la configuration d'indexation du parc
La rétrogradation de la configuration d'indexation de flotte n'est pas prise en charge lorsque vous souhaitez supprimer les sources de données associées à une métrique de flotte ou à un groupe dynamique.
Par exemple, si votre configuration d'indexation contient des données de registre, des données fictives et des données de connectivité, et qu'une métrique de flotte existe avec la requêtethingName:TempSensor*
AND shadow.desired.temperature>80, la mise à jour de la configuration d'indexation pour inclure uniquement les données du registre entraînera une erreur.
La modification des champs personnalisés utilisés par les indicateurs de flotte existants n'est pas prise en charge.
Impossible de mettre à jour votre configuration d'indexation en raison de mesures de flotte incompatibles ou de groupes dynamiques
Si vous ne pouvez pas mettre à jour votre configuration d'indexation en raison de mesures de flotte ou de groupes dynamiques incompatibles, supprimez les mesures de flotte ou les groupes dynamiques incompatibles avant de mettre à jour la configuration d'indexation.
Résolution des problèmes liés à l'indexation des emplacements et aux géorequêtes
Pour résoudre les erreurs de type incompatibles dans l'indexation des positions et les géorequêtes, vous pouvez activer les journaux. CloudWatch Pour plus d'informations sur la surveillance de AWS IoT l'utilisation CloudWatch, suivez le guide étape par étape.
Lorsque vous indexez des données de localisation à l'aide de géorequêtes, les champs de localisation que vous spécifiez geoLocations doivent correspondre aux champs de position auxquels vous passezUpdateIndexingConfiguration. En cas de non-concordance, l'indexation de flotte envoie une erreur de type non concordant à. CloudWatch Le journal des erreurs contient le nom du champ, la valeur qui n'a pas pu être convertie et le nom d'objet de l'appareil.
Voici un exemple de journal des erreurs.
{ "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." }
Pour de plus amples informations, veuillez consulter Indexation des données de localisation.
Dépannage des métriques de la flotte
Impossible de voir les points de données dans CloudWatch
Si vous parvenez à créer une métrique de flotte mais que vous ne pouvez pas y voir de points de données CloudWatch, il est probable que rien ne réponde aux critères de la chaîne de requête.
Consultez cet exemple de commande pour créer une métrique de parc :
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 aucun élément ne répond aux critères de chaîne de requête --query-string
"thingName:TempSensor* AND attributes.temperature>80" :
-
Avec
values=count, vous pourrez créer une métrique de flotte et y avoir des points de données à afficher CloudWatch. Les points de données de la valeurcountsont toujours 0. -
Avec
valuesautre chose quecount, vous pourrez créer une métrique de flotte, mais celle-ci ne s'affichera pas CloudWatch et il n'y aura aucun point de données à afficher CloudWatch.