Partager via


Codes d’erreur de Device Update pour IoT Hub

Ce document fournit un tableau des codes d’erreur pour divers composants Device Update.

Il existe deux principaux composants côté client qui peuvent générer des codes d’erreur : l’agent Device Update et l’agent d’optimisation de la distribution. Les codes d’erreur proviennent également du service de contenu Device Update.

Agent Device Update

ResultCode et ExtendedResultCode

L’interface PnP principale de Device Update pour IoT Hub signale ResultCode et ExtendedResultCode, qui peuvent être utilisés pour diagnostiquer les défaillances. Pour plus d’informations sur l’interface PnP principale de Device Update, consultez Device Update et Plug-and-Play. Pour plus d’informations sur les significations par défaut de ResultCode et de ExtendedResultCodes de l’agent Device Update, consultez le dépôt GitHub Device Update.

ResultCode est un code d’état général et ExtendedResultCode est un entier accompagné d’informations d’erreur encodées.

Le ExtendedResultCode apparaît comme un nombre entier signé dans l’interface PnP. Pour décoder le code ExtendedResultCode, convertissez l’entier signé en valeur hexadécimale non signée. Seuls les 4 premiers octets du code ExtendedResultCode sont utilisés et sont de la forme F FFFFFFF où le premier quartet est le code d’installation et le reste des bits correspondent au code d’erreur.

Codes d’installation

Code d’installation Description
D Erreur générée à partir du kit SDK DO
E Le code d’erreur est un numéro errno

Par exemple :

ExtendedResultCode a la valeur -536870781.

La représentation hexadécimale non signée de -536870781 est FFFFFFFF E0000083.

Ignorer Code d’installation Code d'erreur
FFFFFFFF E 0000083

0x83 en base hexadécimale est 131 en base décimale et représente la valeur errno pour ENOLCK.

Agent d’optimisation de la distribution

Le tableau suivant répertorie les codes d’erreur relatifs au composant d’optimisation de la distribution (DO) du client Device Update. Le composant DO est chargé de télécharger le contenu de mise à jour sur l’appareil IoT.

Le code d’erreur DO peut être obtenu en examinant les exceptions levées en réponse à un appel d’API. Tous les codes d'erreur DO peuvent être identifiés par le préfixe 0x80D0.

Code d'erreur Erreur de chaîne Type Description
0x80D01001L DO_E_NO_SERVICE n/a L’optimisation de la distribution n’a pas pu fournir le service
0x80D02002L DO_E_DOWNLOAD_NO_PROGRESS Télécharger le travail Le téléchargement d’un fichier n’a pas progressé dans la période définie
0x80D02011L DO_E_UNKNOWN_PROPERTY_ID Télécharger le travail Méthode SetProperty() ou GetProperty() appelée avec un ID de propriété inconnu
0x80D02012L DO_E_READ_ONLY_PROPERTY Télécharger le travail Impossible d’appeler la méthode SetProperty() sur une propriété en lecture seule
0x80D02013L DO_E_INVALID_STATE Télécharger le travail L’opération demandée n’est pas autorisée dans l’état actuel du travail. Le travail a peut-être été annulé ou a terminé son transfert. Il est maintenant en lecture seule.
0x80D02018L DO_E_FILE_DOWNLOADSINK_UNSPECIFIED Télécharger le travail Impossible de démarrer un téléchargement, car aucun récepteur de téléchargement (fichier local ou interface de flux) n’a été spécifié
0x80D02200L DO_E_DOWNLOAD_NO_URI Interface IDODownload Le téléchargement a été démarré sans fournir d’URI
0x80D03805L DO_E_BLOCKED_BY_NO_NETWORK Conditions transitoires Téléchargement suspendu en raison d’une perte de connectivité réseau
   0 00 00000     Total 4 bytes (32 bits)
   - -- -----
   | |  |
   | |  |
   | |  +---------  Error code (20 bits)
   | |
   | +------------- Component/Area code (8 bits)
   |
   +--------------- Facility code (4 bits) 

Pour plus d’informations sur les codes d’analyse, consultez Codes de résultat de l’agent Device Update et codes de résultats étendus ou Implémenter un gestionnaire de contenu personnalisé.

Service de contenu Device Update

Le tableau suivant liste les codes d’erreur relatifs au composant de service de contenu du service Device Update. Le composant de service de contenu est responsable de l’importation du contenu de mise à jour. Des informations supplémentaires sur la résolution des problèmes sont également disponibles pour l’importation de mises à jour de proxy.

Code d'erreur Erreur de chaîne Étapes suivantes
UpdateAlreadyExists Une mise à jour avec la même identité existe déjà. Veillez à importer une mise à jour qui n’a pas encore été importée dans cette instance Device Update pour IoT Hub.
DuplicateContentImport Contenu identique importé simultanément plusieurs fois. Veillez à importer une mise à jour qui n’a pas encore été importée dans cette instance Device Update pour IoT Hub.
CannotProcessImportManifest Erreur de traitement du manifeste d’importation. Consultez la documentation sur l’importation des concepts et l’importation des mises à jour pour connaître le formatage correct du manifeste d’importation.
CannotDownload Impossible de télécharger le manifeste d’importation. Vérifiez que l’URL du fichier manifeste d’importation est toujours valide.
CannotParse Impossible d’analyser le manifeste d’importation. Vérifiez la précision de votre manifeste d’importation par rapport au schéma défini dans la documentation sur l’importation des mises à jour.
UnsupportedVersion La version du schéma du manifeste d’importation n’est pas prise en charge. Veillez à ce que votre manifeste d’importation utilise le dernier schéma défini dans la documentation sur l’importation des mises à jour.
Erreur d’importation de mise à jour en raison d’une limite dépassée. Impossible d’importer un fournisseur de mise à jour supplémentaire. Vous avez atteint une limite quant au nombre de fournisseurs différents autorisés dans votre instance Device Update pour IoT Hub. Supprimez certaines mises à jour de votre instance et réessayez.
Erreur d’importation de mise à jour en raison d’une limite dépassée. Impossible d’importer une mise à jour supplémentaire pour le fournisseur spécifié. Vous avez atteint une limite quant au nombre de noms différents autorisés sous un fournisseur dans votre instance Device Update pour IoT Hub. Supprimez certaines mises à jour de votre instance et réessayez.
Erreur d’importation de mise à jour en raison d’une limite dépassée. Impossible d’importer une version de mise à jour supplémentaire pour le fournisseur et le nom spécifiés. Vous avez atteint une limite quant au nombre de versions différentes autorisées sous un fournisseur et un nom dans votre instance Device Update pour IoT Hub. Supprimez de votre instance certaines mises à jour avec ce nom, puis réessayez.
Erreur d’importation de mise à jour en raison d’une limite dépassée. Impossible d’importer un fournisseur de mise à jour supplémentaire avec la compatibilité spécifiée.

or

Impossible d’importer un nom de mise à jour supplémentaire avec la compatibilité spécifiée.

or

Impossible d’importer une version de mise à jour supplémentaire avec la compatibilité spécifiée.
Lors de la définition des propriétés de compatibilité dans un manifeste d’importation, gardez à l’esprit que Device Update pour IoT Hub prend en charge une combinaison unique de fournisseur et de nom pour un jeu de propriétés de compatibilité donné. Si vous essayez d’utiliser les mêmes propriétés de compatibilité avec plusieurs combinaisons de fournisseur/nom, vous verrez ces erreurs. Pour résoudre cela, veillez à ce que toutes les mises à jour pour un appareil donné (telles que définies par les propriétés de compatibilité) utilisent le même fournisseur et le même nom.
CannotProcessUpdateFile Erreur lors du traitement du fichier source.
ContentFileCannotDownload Impossible de télécharger le fichier source. Vérifiez que l’URL du ou des fichiers de mise à jour est toujours valide.
SourceFileMalwareDetected Une signature de programme malveillant connue a été détectée dans un fichier en cours d’importation. Device Update pour IoT Hub analyse le contenu importé à la recherche de logiciels malveillants, en utilisant plusieurs mécanismes différents. Si une signature de programme malveillant connue est identifiée, l’importation échoue et un message d’erreur unique est retourné. Le message d’erreur contient la description de la signature du programme malveillant et un hachage de fichier pour chaque fichier dans lequel la signature a été détectée. Vous pouvez utiliser le hachage de fichier pour trouver le fichier exact qui est marqué d’un indicateur, et utiliser la description de la signature du programme malveillant pour rechercher le programme malveillant dans ce fichier.

Une fois que vous avez supprimé le logiciel malveillant de tous les fichiers importés, vous pouvez relancer le processus d’importation.
SourceFilePendingMalwareAnalysis Une signature a été détectée dans un fichier en cours d’importation, ce qui peut indiquer qu’un programme malveillant est présent. Device Update pour IoT Hub analyse le contenu importé à la recherche de logiciels malveillants, en utilisant plusieurs mécanismes différents. L’importation échoue si une signature d’analyse présente des caractéristiques d’un programme malveillant, même s’il n’existe pas de correspondance exacte avec les programmes malveillants connus. Lorsque cela se produit, un message d’erreur unique est retourné. Le message d’erreur contient la description de la signature du programme malveillant suspecté et un hachage de fichier pour chaque fichier dans lequel la signature a été détectée. Vous pouvez utiliser le hachage de fichier pour trouver le fichier exact qui est marqué d’un indicateur, et utiliser la description de la signature du programme malveillant pour rechercher le programme malveillant dans ce fichier.

Une fois que vous avez supprimé le logiciel malveillant de tous les fichiers importés, vous pouvez relancer le processus d’importation. Si vous êtes certain que vos fichiers sont exempts de programmes malveillants et que vous continuez à voir cette erreur, utilisez le processus Contacter le support Microsoft.

Étapes suivantes

Résoudre les problèmes liés à Device Update