Résoudre les problèmes liés à une action de AWS IoT SiteWise règle - AWS IoT SiteWise

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ésoudre les problèmes liés à une action de AWS IoT SiteWise règle

Pour résoudre les problèmes liés à l'action de votre AWS IoT SiteWise règle dans AWS IoT Core, vous pouvez suivre l'une des procédures suivantes :

  • Configuration d'Amazon CloudWatch Logs

  • Configurer une action d'erreur de republication pour votre règle

Ensuite, comparez les messages d'erreur avec les erreurs de cette rubrique pour résoudre le problème.

Configuration AWS IoT Core des journaux

Vous pouvez configurer AWS IoT pour consigner différents niveaux d'informations dans CloudWatch Logs.

Pour configurer les CloudWatch journaux et y accéder
  1. Pour configurer la journalisation pour AWS IoT Core, consultez la section Surveillance à l'aide CloudWatch des journaux dans le guide du AWS IoT développeur.

  2. Accédez à la CloudWatch console.

  3. Dans le panneau de navigation, choisissez Groupes de journaux.

  4. Choisissez le AWSIotLogsgroupe.

  5. Choisissez un flux de journaux récent. Par défaut, CloudWatch affiche le flux de journal le plus récent en premier.

  6. Choisissez une entrée de journal pour développer le message de journal. Votre entrée de journal peut ressembler à la capture d'écran suivante.

    CloudWatch Capture d'écran « AWS IoT  Logs ».
  7. Comparez les messages d'erreur avec les erreurs de cette rubrique pour résoudre le problème.

Configurer une action d'erreur de republication

Vous pouvez configurer une action d'erreur au niveau d'une règle pour gérer les messages d'erreur. Dans cette procédure, vous configurez l'action de republication de la règle en tant qu'action d'erreur pour afficher les messages d'erreur dans le client de MQTT test.

Note

L'action d'erreur de republication ne génère que l'équivalent des journaux de niveau ERROR. Si vous souhaitez des journaux plus détaillés, vous devez configurer CloudWatch les journaux.

Pour ajouter une action d'erreur de republication à une règle
  1. Accédez à la console AWS IoT.

  2. Dans le panneau de navigation de gauche, choisissez Act (Agir) puis Rules (Règles).

  3. Choisissez une règle.

  4. Sous Error action (Action d'erreur), choisissez Add action (Ajouter une action).

  5. Choisissez Republier un message dans un AWS IoT sujet.

    AWS IoT Core Capture d'écran de la page « Sélectionnez une action » avec l'action Republier surlignée.
  6. En bas de la page, choisissez Configure action (Configurer l'action).

  7. Dans Sujet, entrez un sujet unique (par exemple,sitewise/windfarm/rule/error). AWS IoT Core republiera les messages d'erreur dans cette rubrique.

  8. Choisissez Sélectionner pour autoriser AWS IoT Core l'accès afin d'exécuter l'action d'erreur.

  9. Choisissez Select (Sélectionner) en regard du rôle que vous avez créé pour la règle.

  10. Choisissez Update Role (Mettre à jour le rôle) pour ajouter les autorisations supplémentaires au rôle.

  11. Choisissez Add action.

    L'action d'erreur de la règle devrait ressembler à la capture d'écran suivante.

    AWS IoT Core Page « Règle » Republier la capture d'écran de l'action d'erreur.
  12. Cliquez sur la flèche de retour en haut à gauche de la console pour revenir à la page d'accueil de la AWS IoT console.

Après avoir configuré l'action d'erreur de republication, vous pouvez afficher les messages d'erreur dans le client de MQTT test dans AWS IoT Core.

Dans la procédure suivante, vous vous abonnez à la rubrique d'erreur dans le client de MQTT test. Dans le client de MQTT test, vous pouvez recevoir les messages d'erreur de votre règle pour résoudre le problème.

Pour vous abonner à la rubrique d'action d'erreur
  1. Accédez à la console AWS IoT.

  2. Dans la page de navigation de gauche, choisissez Test pour ouvrir le client de MQTT test.

  3. Dans le champ Subscription topic (Rubrique d'abonnement), entrez la rubrique d'erreur que vous avez configurée précédemment (par exemple, sitewise/windfarm/rule/error) et choisissez Subscribe to topic (S'abonner à la rubrique).

    AWS IoT Core capture d'écran de la page « MQTT client » avec le bouton « S'abonner au sujet » surligné.
  4. Surveillez les messages d'erreur qui s'affichent, puis développez le tableau failures dans chaque message d'erreur.

    Ensuite, comparez les messages d'erreur avec les erreurs de cette rubrique pour résoudre le problème.

Résoudre les problèmes liés aux règles

Utilisez les informations suivantes pour résoudre les problèmes de règle.

Erreur : le membre doit être dans les 604800 secondes avant et 300 secondes après l'horodatage actuel

Votre horodatage date de plus de 7 jours ou de moins de 5 minutes, par rapport à l'époque Unix actuelle. Essayez les éléments suivants :

  • Vérifiez que votre horodatage correspond à l'heure Unix epoch (). UTC Si vous fournissez un horodatage avec un fuseau horaire différent, vous rencontrerez cette erreur.

  • Vérifiez que votre horodatage est en secondes. AWS IoT SiteWise attend des horodatages divisés en secondes (à l'époque Unix) et décalés en nanosecondes.

  • Vérifiez que vous téléchargez des données horodatées d'au plus 7 jours auparavant.

Erreur : la valeur de la propriété ne correspond pas au type de données <type>

Une entrée de votre action de règle comporte un type de données différent de celui de la propriété de ressource cible. Par exemple, la propriété de ressource cible est de type DOUBLE, tandis que le type de données que vous avez sélectionné est Integer ou que vous avez transmis la valeur dans integerValue. Essayez les éléments suivants :

  • Si vous configurez la règle depuis la AWS IoT console, vérifiez que vous avez choisi le bon type de données pour chaque entrée.

  • Si vous configurez la règle à partir du API ou AWS Command Line Interface (AWS CLI), vérifiez que votre value objet utilise le champ de type correct (par exemple, doubleValue pour une DOUBLE propriété).

Erreur : L'utilisateur <role-arn>n'est pas autorisé à exécuter : iotsitewise : aucune ressource BatchPutAssetPropertyValue

Soit la règle n'est pas autorisée à accéder à la propriété de ressource cible, soit la propriété de ressource cible n'existe pas. Essayez les éléments suivants :

  • Vérifiez que l'alias de la propriété est correct et que la propriété de ressource dispose de l'alias de propriété donné. Pour de plus amples informations, veuillez consulter Mappez les flux de données industriels aux propriétés des actifs.

  • Vérifiez que la règle est associée à un rôle et que le rôle iotsitewise:BatchPutAssetPropertyValue donne l'autorisation à la propriété de ressource cible, par exemple via la hiérarchie de la ressource cible. Pour de plus amples informations, veuillez consulter Accordez AWS IoT l'accès requis.

Erreur : iot.amazonaws.com ne parvient pas à exécuter : sts : on resource : AssumeRole <role-arn>

Votre utilisateur n'est pas autorisé à assumer le rôle dans votre règle dans AWS Identity and Access Management (IAM).

Vérifiez que votre utilisateur est iam:PassRole autorisé à accéder au rôle indiqué dans votre règle. Pour plus d'informations, consultez la section Transmettre les autorisations de rôle dans le guide du AWS IoT développeur.

Info : aucune demande n'a été envoyée. PutAssetPropertyValueEntries était vide après avoir effectué des modèles de substitution.

Note

Ce message est un journal de niveau INFO.

Votre demande doit comporter au moins une entrée avec tous les paramètres requis.

Vérifiez que les paramètres de la règle, y compris les modèles de substitution, génèrent des valeurs non vides. Les modèles de substitution ne peuvent pas accéder aux valeurs définies dans les clauses AS de l'instruction de requête de la règle. Pour plus d'informations, consultez la section Modèles de substitution dans le Guide du AWS IoT développeur.

Résoudre les problèmes liés à une règle ()AWS IoT SiteWise

Suivez les étapes de cette procédure pour résoudre les problèmes liés à votre règle si les données CPU et d'utilisation de la mémoire ne s'affichent pas AWS IoT SiteWise comme prévu. Dans cette procédure, vous configurez l'action de republication de la règle en tant qu'action d'erreur pour afficher les messages d'erreur dans le client de MQTT test. Vous pouvez également configurer la journalisation dans CloudWatch Logs pour résoudre les problèmes. Pour de plus amples informations, veuillez consulter Résoudre les problèmes liés à une action de AWS IoT SiteWise règle.

Pour ajouter une action d'erreur de republication à une règle
  1. Accédez à la console AWS IoT.

  2. Dans le volet de navigation de gauche, choisissez Routage des messages, puis sélectionnez Règles.

  3. Choisissez la règle que vous avez créée précédemment, puis cliquez sur Modifier.

  4. Sous Action d'erreur - facultatif, choisissez Ajouter une action d'erreur.

  5. Choisissez Republier un message dans un AWS IoT sujet.

  6. Dans Sujet, entrez le chemin de votre erreur (par exemple,sitewise/rule/tutorial/error). AWS IoT Core republiera les messages d'erreur dans cette rubrique.

  7. Choisissez le rôle que vous avez créé précédemment (par exemple, SiteWiseTutorialDeviceRuleRole).

  8. Choisissez Mettre à jour.

Après avoir configuré l'action d'erreur de republication, vous pouvez afficher les messages d'erreur dans le client de MQTT test dans AWS IoT Core.

Dans la procédure suivante, vous vous abonnez à la rubrique d'erreur dans le client de MQTT test.

Pour vous abonner à la rubrique d'action d'erreur
  1. Accédez à la console AWS IoT.

  2. Dans la page de navigation de gauche, choisissez le client de MQTT test pour ouvrir le client de MQTT test.

  3. Dans le champ Filtre par sujet, entrez sitewise/rule/tutorial/error et choisissez S'abonner.

Lorsque des messages d'erreur apparaissent, affichez le tableau failures dans n'importe quel message d'erreur pour diagnostiquer les problèmes. Pour plus d'informations sur les problèmes et les solutions possibles, consultez Résoudre les problèmes liés à une action de AWS IoT SiteWise règle.

Si aucune erreur ne s'affiche, vérifiez que votre règle est activée et que vous vous êtes abonné à la même rubrique que celle que vous avez configurée dans l'action d'erreur de republication. Si des erreurs ne s'affichent toujours pas, vérifiez que le script du périphérique est en cours d'exécution et qu'il met à jour l'ombre du périphérique avec succès.

Note

Vous pouvez également vous abonner à la rubrique de mise à jour parallèle de votre appareil pour voir la charge utile analysée par votre AWS IoT SiteWise action. Pour ce faire, abonnez-vous à la rubrique suivante.

$aws/things/+/shadow/update/accepted

Résolution des problèmes liés à une règle (DynamoDB)

Suivez les étapes de cette procédure pour résoudre les problèmes liés à votre règle si les données des actifs de démonstration n'apparaissent pas dans le tableau DynamoDB comme prévu. Dans cette procédure, vous configurez l'action de republication de la règle en tant qu'action d'erreur pour afficher les messages d'erreur dans le client de MQTT test. Vous pouvez également configurer la journalisation dans CloudWatch Logs pour résoudre les problèmes. Pour plus d'informations, consultez la section Surveillance à l'aide CloudWatch des journaux dans le guide du AWS IoT développeur.

Pour ajouter une action d'erreur de republication à une règle
  1. Accédez à la console AWS IoT.

  2. Dans le panneau de navigation de gauche, choisissez Act (Agir) puis Rules (Règles).

  3. Choisissez la règle que vous avez créée précédemment.

    AWS IoT Capture d'écran de la page « Règles » de base.
  4. Sous Error action (Action d'erreur), choisissez Add action (Ajouter une action).

  5. Choisissez Republier un message dans un AWS IoT sujet.

    AWS IoT Capture d'écran de la page principale « Sélectionner une action » avec l'action Republier surlignée.
  6. En bas de la page, choisissez Configure action (Configurer l'action).

  7. Dans Sujet, entrez windspeed/error. AWS IoT Core republiera les messages d'erreur dans cette rubrique.

    AWS IoT Capture d'écran de la page principale « Configurer l'action de republication » avec le « Sujet » surligné.
  8. Choisissez Sélectionner pour autoriser AWS IoT Core à exécuter l'action d'erreur en utilisant le rôle que vous avez créé précédemment.

  9. Choisissez Select (Sélectionner) en regard de votre rôle.

    AWS IoT Capture d'écran de la page principale « Configurer l'action de republication » avec le bouton de sélection de rôle surligné.
  10. Choisissez Update Role (Mettre à jour le rôle) pour ajouter les autorisations supplémentaires au rôle.

    AWS IoT Capture d'écran de la page principale « Configurer l'action de republication » avec le bouton de mise à jour du rôle surligné
  11. Choisissez Add action (Ajouter une action) pour terminer l'ajout de l'action d'erreur.

  12. Cliquez sur la flèche de retour en haut à gauche de la console pour revenir à la page d'accueil de la console AWS IoT Core.

Après avoir configuré l'action d'erreur de republication, vous pouvez afficher les messages d'erreur dans le client de MQTT test dans AWS IoT Core.

Dans la procédure suivante, vous vous abonnez à la rubrique d'erreur dans le client de MQTT test.

Pour vous abonner à la rubrique d'action d'erreur
  1. Dans la page de navigation de gauche de la console AWS IoT Core, choisissez Test.

  2. Dans le champ Subscription topic (Rubrique Abonnement) saisissez windspeed/error et choisissez Subscribe to topic (S'abonner à la rubrique).

    AWS IoT Capture d'écran de la page « MQTT client » principale avec le bouton « S'abonner au sujet » surligné.
  3. Vérifiez les messages d'erreur qui s'affichent et explorez la zone failures d'un message d'erreur pour diagnostiquer les problèmes courants suivants :

    • Fautes de frappe dans l'instruction de requête de règle

    • Autorisations de rôle insuffisantes

    Si aucune erreur ne s'affiche, vérifiez que votre règle est activée et que vous vous êtes abonné à la même rubrique que celle que vous avez configurée dans l'action d'erreur de republication. Si, malgré cela, aucune erreur ne s'affiche, vérifiez que les ressources de votre parc éolien de démonstration existent toujours et que vous avez activé les notifications sur les propriétés de vitesse du vent. Si vos ressources de démonstration ont expiré et ont disparu AWS IoT SiteWise, vous pouvez créer une nouvelle démo et mettre à jour l'énoncé de la requête de règle afin de refléter le modèle et les propriétés des actifs mis à jourIDs.