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.
Rubriques
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
-
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.
-
Accédez à la CloudWatch console
. -
Dans le panneau de navigation, choisissez Groupes de journaux.
-
Choisissez le AWSIotLogsgroupe.
-
Choisissez un flux de journaux récent. Par défaut, CloudWatch affiche le flux de journal le plus récent en premier.
-
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.
-
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
-
Accédez à la console AWS IoT
. -
Dans le panneau de navigation de gauche, choisissez Act (Agir) puis Rules (Règles).
-
Choisissez une règle.
-
Sous Error action (Action d'erreur), choisissez Add action (Ajouter une action).
-
Choisissez Republier un message dans un AWS IoT sujet.
-
En bas de la page, choisissez Configure action (Configurer l'action).
-
Dans Sujet, entrez un sujet unique (par exemple,
sitewise/windfarm/rule/error
). AWS IoT Core republiera les messages d'erreur dans cette rubrique. -
Choisissez Sélectionner pour autoriser AWS IoT Core l'accès afin d'exécuter l'action d'erreur.
-
Choisissez Select (Sélectionner) en regard du rôle que vous avez créé pour la règle.
-
Choisissez Update Role (Mettre à jour le rôle) pour ajouter les autorisations supplémentaires au rôle.
-
Choisissez Add action.
L'action d'erreur de la règle devrait ressembler à la capture d'écran suivante.
-
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
-
Accédez à la console AWS IoT
. -
Dans la page de navigation de gauche, choisissez Test pour ouvrir le client de MQTT test.
-
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). -
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.
Problèmes
- Erreur : le membre doit être dans les 604800 secondes avant et 300 secondes après l'horodatage actuel
- Erreur : la valeur de la propriété ne correspond pas au type de données <type>
- Erreur : L'utilisateur <role-arn>n'est pas autorisé à exécuter : iotsitewise : aucune ressource BatchPutAssetPropertyValue
- Erreur : iot.amazonaws.com ne parvient pas à exécuter : sts : on resource : AssumeRole <role-arn>
- Info : aucune demande n'a été envoyée. PutAssetPropertyValueEntries était vide après avoir effectué des modèles de substitution.
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 uneDOUBLE
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
-
Accédez à la console AWS IoT
. -
Dans le volet de navigation de gauche, choisissez Routage des messages, puis sélectionnez Règles.
-
Choisissez la règle que vous avez créée précédemment, puis cliquez sur Modifier.
-
Sous Action d'erreur - facultatif, choisissez Ajouter une action d'erreur.
-
Choisissez Republier un message dans un AWS IoT sujet.
-
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. -
Choisissez le rôle que vous avez créé précédemment (par exemple, SiteWiseTutorialDeviceRuleRole).
-
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
-
Accédez à la console AWS IoT
. -
Dans la page de navigation de gauche, choisissez le client de MQTT test pour ouvrir le client de MQTT test.
-
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
-
Accédez à la console AWS IoT
. -
Dans le panneau de navigation de gauche, choisissez Act (Agir) puis Rules (Règles).
-
Choisissez la règle que vous avez créée précédemment.
-
Sous Error action (Action d'erreur), choisissez Add action (Ajouter une action).
-
Choisissez Republier un message dans un AWS IoT sujet.
-
En bas de la page, choisissez Configure action (Configurer l'action).
-
Dans Sujet, entrez
windspeed/error
. AWS IoT Core republiera les messages d'erreur dans cette rubrique. -
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.
-
Choisissez Select (Sélectionner) en regard de votre rôle.
-
Choisissez Update Role (Mettre à jour le rôle) pour ajouter les autorisations supplémentaires au rôle.
-
Choisissez Add action (Ajouter une action) pour terminer l'ajout de l'action d'erreur.
-
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
-
Dans la page de navigation de gauche de la console AWS IoT Core, choisissez Test.
-
Dans le champ Subscription topic (Rubrique Abonnement) saisissez
windspeed/error
et choisissez Subscribe to topic (S'abonner à la rubrique). -
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.
-