Guide de dépannage de Device Update pour IoT Hub

Ce document liste quelques questions et problèmes courants que les utilisateurs Device Update ont signalés. Si vous rencontrez un problème qui n’apparaît pas dans ce guide de dépannage, reportez-vous à la section Contacter le support technique de Microsoft pour documenter votre situation.

Importation des mises à jour

Q : Je ne parviens pas à connecter mon instance Device Update à mon instance IoT Hub

Vérifiez que vos routes de messages IoT Hub sont configurées correctement, conformément à la documentation Ressources Device Update.

Il est possible que les autorisations d’accès ne soient pas configurées correctement. Vérifiez que vous avez correctement configuré les autorisations d’accès conformément à la documentation sur le contrôle d’accès à Device Update.

Q : Je rencontre une erreur de type 500 lors de l’importation de contenu dans le service Device Update

Un code d’erreur dans la plage 500 peut indiquer un problème avec le service Device Update. Attendez 5 minutes, puis réessayez. Si la même erreur persiste, suivez les instructions de la section Contacter le support technique de Microsoft pour créer une demande de support auprès de Microsoft.

Q : Je souhaite conserver les mêmes propriétés de compatibilité (cibler ma mise à jour vers le même type d’appareil), mais modifier le fournisseur ou le nom dans le manifeste d’importation. Mais j’obtiens une erreur « Échec : Erreur d’importation de mise à jour due à une limite dépassée » lorsque je le fais

Le même ensemble de propriétés de compatibilité ne peut pas être utilisé avec plus d’une combinaison de fournisseur de mise à jour et de nom. Cela permet au service de mise à jour d’appareil de déterminer avec certitude quelles mises à jour doivent être disponibles pour le déploiement sur un appareil donné. Si vous devez mettre à jour plusieurs composants ou partitions sur un seul appareil, la fonctionnalité de mise à jour du proxy offre cette possibilité.

Q : J’obtiens un message d’erreur quand j’importe du contenu et j’aimerais en savoir plus à ce sujet

Pour plus d’informations sur les messages d’erreur liés à l’importation, consultez la documentation sur les codes d’erreur de Device Update.

Échecs de l’appareil

Q : Comment puis-je vérifier que mon appareil est connecté à Device Update pour IoT Hub ?

Vous pouvez vérifier que votre appareil est connecté à Device Update en regardant s’il apparaît sous la section des appareils « Non groupés » dans la vue Conformité du portail Azure.

Q : La mise à jour d’un ou plusieurs de mes appareils échoue

Il y a de nombreuses causes racines possibles de l’échec de la mise à jour des appareils. Vérifiez que l’appareil est 1) connecté à votre instance d’IoT Hub et 2) connecté à votre instance Device Update, et que 3) le service Optimisation de la distribution est en cours d’exécution. Si ces trois conditions sont satisfaites pour votre appareil, suivez les instructions de la section Contacter le support technique de Microsoft pour créer une demande de support auprès de Microsoft.

Q : Mon agent Device Update ne parvient pas à démarrer

Le plus souvent, l’échec du démarrage de l’agent Device Update est lié à un fichier de configuration malformé (du-config.json). Reportez-vous à la documentation du fichier de configuration pour vérifier que votre agent est configuré correctement. Notez que toutes les valeurs du fichier de configuration doivent se trouver entre guillemets doubles.

Déploiement d’une mise à jour

Q : J’ai déployé une mise à jour sur mes appareils, mais l’état de conformité n’indique pas cette dernière mise à jour. Que dois-je faire ?

L’actualisation de l’état de conformité de l’appareil peut prendre jusqu’à 5 minutes. Attendez, puis revérifiez.

Q : L’état du déploiement de mon appareil indique une incompatibilité. Que dois-je faire ?

Les propriétés du fabricant et du modèle d’un appareil ciblé peuvent avoir été modifiées après la connexion de l’appareil à IoT Hub, ce qui fait que l’appareil est maintenant considéré comme incompatible avec le contenu de la mise à jour du déploiement actuel.

Vérifiez l’interface ADU Core pour voir le fabricant et le modèle indiqués par votre appareil au service Device Update, et vérifiez s’ils correspondent au fabricant et au modèle que vous avez spécifiés dans le manifeste d’importation du contenu de la mise à jour à déployer. Vous pouvez modifier ces propriétés pour un appareil donné en utilisant le fichier de configuration de Device Update.

Q : Je vois que mon déploiement est dans la phase « Active », mais la mise à jour n’est « En cours » sur aucun de mes appareils. Que dois-je faire ?

Vérifiez que la date de début de votre déploiement n’est pas définie sur un moment dans le futur. Quand vous créez un déploiement, à titre de protection, la date de début du déploiement est par défaut le jour qui suit, sauf si vous la changez explicitement. Vous pouvez attendre que la date de début de votre déploiement arrive, ou bien annuler le déploiement en cours et créer un nouveau déploiement avec la date de début souhaitée.

Q : J’essaie de regrouper mes appareils, mais je ne vois pas l’étiquette dans la liste déroulante lors de la création d’un groupe

Vérifiez que vous avez configuré correctement les routes de messages dans votre hub IoT conformément à la documentation sur les ressources Device Update. Vous devez réétiqueter votre appareil après avoir configuré la route.

Une autre cause racine peut être que vous avez appliqué l’étiquette avant de connecter votre appareil à Device Update pour IoT Hub. Vérifiez que votre appareil est déjà connecté à Device Update. Vous pouvez vérifier que votre appareil est connecté à Device Update pour IoT Hub en regardant s’il apparaît sous la section des appareils « Non groupés » dans la vue Conformité du portail Azure. Ajoutez temporairement une étiquette d’une valeur différente, puis ajoutez à nouveau votre étiquette souhaitée une fois que l’appareil est connecté.

Si vous utilisez DPS (Device Provisioning Service), veillez à étiqueter vos appareils une fois qu’ils sont provisionnés et non pas pendant le processus de création des appareils. Si vous avez déjà étiqueté votre appareil lors de l’étape de création des appareils, vous devez étiqueter temporairement votre appareil avec une valeur différente une fois qu’il est provisionné, puis ajouter à nouveau l’étiquette que vous aviez prévue.

Q : Mon déploiement s’est terminé avec succès, mais certains appareils n’ont pas pu être mis à jour

Ceci peut avoir été provoqué par une erreur côté client sur les appareils dont la mise à jour a échoué. Consultez la section Défaillances des appareils de ce guide de dépannage.

Q : J’ai rencontré une erreur dans l’expérience utilisateur en tentant de lancer un déploiement

Ceci peut avoir été provoqué par un bogue du service ou de l’expérience utilisateur, ou par un problème des autorisations de l’API. Suivez les instructions de la section Contacter le support technique de Microsoft pour créer une demande de support auprès de Microsoft.

Q : J’ai démarré un déploiement, mais il n’atteint pas l’état de finalisation

Ceci peut avoir été provoqué par un problème de performance du service, un bogue du service ou un bogue du client. Réessayez votre déploiement après 10 minutes. Si vous rencontrez le même problème, extrayez les journaux de vos appareils et reportez-vous à la section Défaillances des appareils de ce guide de dépannage. Si le même problème persiste, suivez les instructions de la section Contacter le support technique de Microsoft pour créer une demande de support auprès de Microsoft.

Q : J’ai migré de l’agent au niveau de l’appareil vers l’agent ajouté comme identité de module sur l’appareil. Ma mise à jour apparaît comme « en cours » alors qu’elle a été appliquée à l’appareil

La raison peut être que vous n’avez pas supprimé l’ancien agent qui était en communication sur le jumeau d’appareil. Lorsque vous provisionnez l’agent Device Update en tant que module (cf. procédure), toutes les communications qui ont lieu entre l’appareil et le service Device Update se produisent sur le jumeau de module. N’oubliez pas d’étiqueter le jumeau de module de l’appareil lorsque vous créez des groupes et que toutes les communications doivent avoir lieu sur le jumeau de module.

Téléchargement des mises à jour sur les appareils

Q : Comment faire reprendre un téléchargement quand un appareil se reconnecte après une période de déconnexion ?

Le téléchargement va reprendre de lui-même une fois la connectivité restaurée dans un délai de 24 heures. Au-delà de 24 heures, le téléchargement devra être relancé par l’utilisateur.

Cache connecté Microsoft (MCC)

Q : Je rencontre un problème lors de la tentative de déploiement du module MCC sur mon appareil IoT Edge.

Reportez-vous à la documentation IoT Edge pour déployer des modules Edge sur des appareils IoT Edge. Vous pouvez vérifier que le module MCC fonctionne correctement sur votre appareil IoT Edge en accédant à http://localhost:5100/Summary..

Q : Un de mes appareils IoT tente de télécharger une mise à jour via MCC, mais échoue

Plusieurs problèmes peuvent provoquer l’échec de la connexion d’un appareil IoT à MCC. Pour diagnostiquer le problème, récupérez les journaux du client DO et de Nginx auprès de l’appareil en échec (consultez la section Contacter le support technique de Microsoft pour des instructions sur la récupération des journaux des clients).

Votre appareil peut échouer à extraire du contenu depuis Internet pour le passer à son module MCC car l’URL qu’il utilise n’est pas autorisée. Pour déterminer si c’est le cas, vous devez vérifier vos variables d’environnement IoT Edge dans le portail Azure.

Correction d’une instance manquante dans le portail Azure

Q : Je ne vois pas d’instance Device Update pour IoT Hub lorsque je sélectionne l’icône en forme de roue dentée

Il existe quelques causes possibles pour ce problème. Consultez les étapes de résolution ci-dessous.

Une instance Device Update doit être associée à un hub Azure IoT situé dans le même groupe de ressources et le même abonnement. Si vous avez déplacé votre instance Device Update ou votre hub vers un autre groupe de ressources ou abonnement, il se peut que vous ne voyiez pas votre instance dans le portail Azure. Vous devez effectuer l’une des étapes suivantes pour continuer à utiliser Device Update pour IoT Hub :

  • Rétablissez la configuration d’origine du ou des éléments déplacés.
  • Si vous avez uniquement déplacé votre hub IoT d’un groupe de ressources à un autre, modifiez votre instance Device Update en y ajoutant le nouvel ID de ressource du hub IoT.
  • Si vous avez déplacé le ou les éléments d’un abonnement vers un autre, vérifiez que le compte Device Update et le hub IoT se trouvent dans le même abonnement, puis modifiez votre instance Device Update en y ajoutant le nouvel ID de ressource du hub IoT.

Pour accéder à la fonctionnalité Device Update via le hub IoT dans le portail Azure, vous avez besoin au minimum d’autorisations de lecture pour votre hub IoT et votre compte Device Update pour IoT Hub.

  • Pour gérer les autorisations de votre hub IoT :
    • Sélectionnez votre hub dans le portail Azure
    • Dans la barre de navigation de gauche, sélectionnez « Contrôle d’accès (IAM) ».
    • Sélectionnez « + Ajouter une attribution de rôle ».
    • Sélectionnez un rôle avec au moins un accès en lecture, puis sélectionnez Suivant.
    • En regard de « Membres », sélectionnez « +Sélectionner des membres ».
    • Ajoutez votre compte dans le menu volant de droite, puis sélectionnez le bouton « Sélectionner ».
    • Sélectionnez « Vérifier + attribuer ».
  • Pour gérer les autorisations de votre compte Device Update pour IoT Hub, demandez au propriétaire du compte d’effectuer les étapes suivantes :
    • Sélectionnez votre compte Device Update dans le portail Azure.
    • Dans la barre de navigation de gauche, sélectionnez « Contrôle d’accès (IAM) ».
    • Sélectionnez « + Ajouter une attribution de rôle ».
    • Sélectionnez le rôle Lecteur (ou un rôle avec des autorisations équivalentes).
    • En regard de « Membres », sélectionnez « +Sélectionner des membres ».
    • Ajoutez votre compte dans le menu volant de droite, puis sélectionnez le bouton « Sélectionner ».
    • Sélectionnez « Vérifier + attribuer ».

En savoir plus sur le contrôle d’accès en fonction du rôle pour le service Device Update.

Contacter le support Microsoft

Si vous rencontrez des problèmes qui ne peuvent pas être résolus à l’aide des questions fréquentes ci-dessus, vous pouvez faire une demande de support auprès du support technique de Microsoft via l’interface du portail Azure. Selon la catégorie que vous indiquez pour votre problème, vous pouvez être invité à rassembler et à partager des données supplémentaires pour aider le support technique de Microsoft à examiner votre problème.

Voici des instructions sur la façon de collecter chaque type de données.

Vous pouvez utiliser getDevice pour rechercher des informations supplémentaires dans la réponse de la charge utile de l’API.

En outre, les informations suivantes peuvent être utiles pour délimiter la cause racine de votre problème :

  • Le type d’appareil que vous tentez de mettre à jour (passerelle IoT Edge, etc.)
  • Le type de client Device Update que vous utilisez (basé sur une image, basé sur un package, simulateur)
  • Le système d’exploitation exécuté par votre appareil
  • Des détails concernant l’architecture de votre appareil
  • Si vous avez réussi à utiliser Device Update pour mettre à jour un appareil

Si vous disposez d’une ou plusieurs des informations ci-dessus, incluez-la dans votre description du problème.

Collecte des journaux du client

  • Sur l’appareil Raspberry Pi, deux ensembles de journaux se trouvent ici :

    /adu/logs
    
    /var/cache/do-client-lite/log
    
  • Pour le client empaqueté, les journaux se trouvent ici :

    /var/log/adu
    
    /var/cache/do-client-lite/log
    
  • Pour le simulateur, les journaux se trouvent ici :

    /tmp/aduc-logs
    

Codes d’erreur

Vous pouvez être invité à fournir les codes d’erreur quand vous signalez d’un problème lié à l’importation d’une mise à jour, à une défaillance d’appareil ou au déploiement d’une mise à jour.

Les codes d’erreur peuvent être obtenus en examinant l’interface ADUCoreInterface. Pour plus d’informations sur l’analyse des codes d’erreur pour l’autodiagnostic et le dépannage, reportez-vous à la documentation sur les codes d’erreur de Device Update.

ID de trace

Vous pouvez être invité à fournir un ID de trace quand vous signalez un problème lié à l’importation ou au déploiement d’une mise à jour.

Vous pouvez trouver l’ID de trace pour une action utilisateur donnée dans la réponse de l’API ou dans la section Historique de l’importation de l’interface utilisateur du portail Azure.

Actuellement, les ID de trace pour les actions de déploiement sont accessibles seulement via la réponse de l’API.

ID de déploiement

Vous pouvez être invité à fournir un ID de déploiement quand vous signalez un problème lié au déploiement d’une mise à jour.

L’ID de déploiement est créé par l’utilisateur lors de l’appel de l’API pour lancer un déploiement.

Actuellement, les ID de déploiement pour les déploiements lancés à partir de l’interface utilisateur du portail Azure sont générés automatiquement et ne sont pas exposés à l’utilisateur.

Nom de l’instance IoT Hub

Vous pouvez être invité à fournir le nom de votre instance IoT Hub quand vous signalez un problème lié aux défaillances des appareils ou au déploiement d’une mise à jour.

Le nom du hub IoT est choisi par l’utilisateur lors du provisionnement initial.

Nom du compte Device Update

Vous pouvez être invité à fournir le nom de votre compte Device Update quand vous signalez un problème lié à l’importation d’une mise à jour, à des défaillances d’appareils ou au déploiement d’une mise à jour.

Le nom du compte Device Update est choisi par l’utilisateur lors de la première inscription au service. Vous trouverez plus d’informations dans la documentation Ressources Device Update.

Nom de l’instance Device Update

Vous pouvez être invité à fournir le nom de votre instance Device Update quand vous signalez un problème lié à l’importation d’une mise à jour, aux défaillances des appareils ou au déploiement d’une mise à jour.

Le nom de l’instance Device Update est choisi par l’utilisateur lors du provisionnement initial. Vous trouverez plus d’informations dans la documentation Ressources Device Update.

ID de périphérique

Vous pouvez être invité à fournir un ID d’appareil quand vous signalez un problème lié aux défaillances des appareils ou au déploiement d’une mise à jour.

L’ID d’appareil est défini par le client lors du provisionnement initial de l’appareil. Il peut également être récupéré auprès du jumeau d’appareil de l’appareil.

ID de mise à jour

Vous pouvez être invité à fournir un ID de mise à jour quand vous signalez un problème lié au déploiement d’une mise à jour.

L’ID de mise à jour est défini par le client lors du lancement d’un déploiement.

Journaux Nginx

Vous pouvez être invité à fournir des journaux Nginx quand vous signalez un problème lié au cache connecté Microsoft.

ADU-conf.txt

Vous pouvez être invité à fournir le fichier de configuration de Device Update (« adu-conf.txt ») quand vous signalez un problème lié au déploiement d’une mise à jour.

Le fichier de configuration est facultatif et il est créé par l’utilisateur en suivant les instructions de la documentation de Configuration de Device Update.

Manifeste d’importation

Vous pouvez être invité à fournir votre manifeste d’importation quand vous signalez un problème lié à l’importation ou au déploiement d’une mise à jour.

Le manifeste d’importation est un fichier créé par le client lors de l’importation de contenu de mise à jour vers le service Device Update.

Étapes suivantes

En savoir plus sur les codes d’erreur de Device Update