Freigeben über


Übersicht über die Diagnose bei Device Update for IoT Hub

Device Update for IoT Hub enthält mehrere Features, die Ihnen bei der Diagnose und Problembehandlung von Fehlern auf Geräten helfen. Mit dem Release 0.8.0 des Agents stehen zwei Diagnosefunktionen zur Verfügung:

  • Bereitstellungsfehlercodes können direkt in der neuesten Vorschauversion der Benutzeroberfläche von Device Update angezeigt werden.

  • Die Remoteprotokollsammlung ermöglicht die Erstellung von Protokollvorgängen, die Zielgeräte anweisen, Diagnoseprotokolle auf dem Gerät in ein verknüpftes Azure Blob Storage-Konto hochzuladen.

Fehlercodes zu Bereitstellungsfehlern auf der Benutzeroberfläche

Wenn ein Gerät einen Bereitstellungsfehler an den Device Update-Dienst meldet, werden auf der Benutzeroberfläche von Device Update der vom Gerät gemeldete resultCode und extendedResultCode angezeigt. Führen Sie die folgenden Schritte aus, um diese Codes anzuzeigen:

  1. Navigieren Sie im Azure-Portal zu Ihrem IoT Hub.

  2. Wählen Sie Updates aus, und navigieren Sie zur Registerkarte Gruppen und Bereitstellungen.

  3. Wählen Sie den Namen einer Gruppe mit einer aktiven Bereitstellung aus, damit die Seite Gruppendetails angezeigt wird.

  4. Wählen Sie in der Geräteliste einen beliebigen Gerätenamen aus, um den Bereich mit den Gerätedetails zu öffnen. Hier wird der vom Gerät gemeldete Ergebniscode angezeigt.

  5. Der Verweis-Agent von Device Update folgt im Feld „Ergebniscode“ den Standardkonventionen für HTTP-Statuscodes (beispielsweise steht „200“ für eine erfolgreiche Aktion). Weitere Informationen zum Analysieren von Ergebniscodes finden Sie unter Clientfehlercodes in Device Update.

    Hinweis

    Wenn Sie Ihren Device Update-Agent so geändert haben, dass er angepasste Ergebniscodes meldet, werden die numerischen Codes weiterhin an die Benutzeroberfläche von Device Update übergeben. Nutzen Sie dann Ihre Dokumentation, um diese numerischen Codes zu analysieren.

Remoteprotokollsammlung

Wenn weitere Informationen vom Gerät erforderlich sind, um einen Fehler zu diagnostizieren und zu beheben, können Sie das Protokollsammlungsfeature verwenden, um die Zielgeräte anzuweisen, Diagnoseprotokolle vom Gerät in ein verknüpftes Azure Blob Storage-Konto hochzuladen. Sie können mit der Verwendung dieses Features beginnen, indem Sie den Anleitungen in Remotesammlung von Diagnoseprotokollen von Geräten folgen.

Die Remoteprotokollsammlung von Device Update ist ein dienstgesteuertes, vorgangsbasiertes Feature. Um die Protokollsammlung nutzen zu können, muss ein Gerät nur in der Lage sein, die Diagnoseschnittstelle und die Konfigurationsdatei zu implementieren und Dateien über das SDK in Azure Blob Storage hochzuladen.

Grundsätzlich funktioniert das Protokollsammlungsfeature wie folgt:

  1. Ein Benutzer erstellt über die Benutzeroberfläche von Device Update oder APIs einen neuen Protokollvorgang für bis zu 100 Geräte, auf denen die Diagnoseschnittstelle implementiert ist.

  2. Der Device Update-Dienst sendet über die Diagnoseschnittstelle eine Startmeldung für die Protokollsammlung an die Zielgeräte. Diese Startmeldung enthält die Protokollvorgangs-ID und ein SAS-Token für das Hochladen in das Azure Storage-Konto.

  3. Nach dem Empfang der Startmeldung versucht der Device Update-Agent des Zielgeräts, die Dateien zu sammeln und in die vordefinierten Dateipfade hochzuladen, die in der Agent-Konfigurationsdatei auf dem Gerät angegeben wurden. Der Verweis-Agent von Device Update ist so konfiguriert, dass er standardmäßig das Device Update-Agent-Diagnoseprotokoll (aduc.log) und das DO-Agent-Diagnoseprotokoll („do-agent.log“) hochlädt.

  4. Der Device Update-Agent meldet dann den Status des Vorgangs (Erfolgreich oder Fehlerhaft) mit der Protokollvorgangs-ID, einem „ResultCode“ und einem „ExtendedResultCode“ an den Dienst zurück. Wenn der Protokollvorgang im Device Update-Agent zu einem Fehler führt, versucht der Agent automatisch, den Vorgang dreimal zu wiederholen, meldet aber nur den abschließenden Status an den Dienst zurück.

  5. Nachdem alle Zielgeräte ihren Terminalstatus an den Device Update-Dienst zurückgemeldet haben, kennzeichnet dieser Dienst den Protokollvorgang als Erfolgreich oder Fehlerhaft. Ein erfolgreicher Protokollvorgang gibt an, dass ihn alle Zielgeräte erfolgreich abgeschlossen haben. Ein fehlerhafter Protokollvorgang gibt an, dass er bei mindestens einem Zielgerät zu einem Fehler geführt hat.

    Hinweis

    Da der Protokollvorgang parallel zu den Zielgeräten ausgeführt wird, ist es möglich, dass einige Zielgeräte Protokolle erfolgreich hochgeladen haben, der gesamte Vorgang aber als fehlerhaft gekennzeichnet wird. Sie können sehen, welche Geräte erfolgreich waren und bei welchen ein Fehler aufgetreten ist, indem Sie die Details zum Protokollvorgang über die Benutzeroberfläche oder APIs anzeigen.

Nächste Schritte

Informieren Sie sich, wie Sie das Remoteprotokollsammlungs-Feature von Device Update verwenden können: Remotesammlung von Diagnoseprotokollen von Geräten mithilfe von Device Update for IoT Hub