Sdílet prostřednictvím


Přehled diagnostiky služby Device Update pro IoT Hub

Aktualizace zařízení pro IoT Hub obsahuje několik funkcí, které vám pomůžou diagnostikovat a řešit chyby na straně zařízení. Ve verzi agenta v0.9.0 jsou k dispozici tři diagnostické funkce:

  • Kódy chyb nasazení je možné zobrazit přímo v uživatelském rozhraní služby Device Update.

  • Vzdálené shromažďování protokolů umožňuje vytvářet operace protokolů, které cílovým zařízením přikazují nahrávat diagnostické protokoly na zařízení do propojeného účtu úložiště objektů blob v Azure.

  • Kontrola agenta spouští ověřovací kontroly na zařízeních zaregistrovaných v instanci služby Device Update s cílem diagnostikovat zařízení, která jsou zaregistrovaná v připojeném IoT Hub, ale nezobrazují se ve službě Device Update.

Kódy chyb nasazení v uživatelském rozhraní

Když zařízení nahlásí selhání nasazení služby Device Update, uživatelské rozhraní aktualizace zařízení zobrazí nahlášené resultCode zařízení a extendedResultCode v uživatelském rozhraní. Pomocí následujícího postupu zobrazte tyto kódy:

  1. V Azure Portal přejděte do centra IoT.

  2. Vyberte Aktualizace a pak přejděte na kartu Skupiny a nasazení.

  3. Výběrem názvu skupiny s aktivním nasazením se dostanete na stránku Podrobnosti o skupině .

  4. Výběrem libovolného názvu zařízení v seznamu Zařízení otevřete panel podrobností o zařízení. Tady uvidíte kód výsledku, který zařízení nahlásilo.

  5. Referenční agent služby Device Update se řídí standardní konvencí stavového kódu HTTP pro pole s kódem výsledku (například 200 značí úspěch). Další informace o tom, jak analyzovat kódy výsledků, najdete v tématu Kódy chyb klienta aktualizace zařízení.

    Poznámka

    Pokud jste upravili agenta aktualizace zařízení tak, aby hlásil přizpůsobené kódy výsledků, budou číselné kódy stále předány do uživatelského rozhraní služby Device Update. K analýze těchto číselných kódů pak můžete odkázat na jakoukoli dokumentaci, kterou jste vytvořili.

Vzdálené shromažďování protokolů

Pokud jsou k diagnostice a řešení chyby potřeba další informace ze zařízení, můžete použít funkci shromažďování protokolů a dát cílovým zařízením pokyn, aby nahrála diagnostické protokoly zařízení do propojeného účtu úložiště objektů blob v Azure. Tuto funkci můžete začít používat podle pokynů v tématu Vzdálené shromažďování diagnostických protokolů ze zařízení.

Shromažďování vzdálených protokolů ve službě Device Update je funkce založená na operacích. Aby zařízení mohlo využívat shromažďování protokolů, musí být schopné implementovat pouze diagnostické rozhraní a konfigurační soubor a odesílat soubory do úložiště objektů blob v Azure prostřednictvím sady SDK.

Z vysoké úrovně funguje funkce shromažďování protokolů takto:

  1. Uživatel vytvoří novou operaci protokolu pomocí uživatelského rozhraní nebo rozhraní API služby Device Update, která cílí až na 100 zařízení, která mají implementované rozhraní diagnostiky.

  2. Služba Device Update odešle do cílových zařízení zprávu o zahájení shromažďování protokolů pomocí rozhraní diagnostiky. Tato počáteční zpráva obsahuje ID operace protokolu a token SAS pro nahrání do přidruženého účtu Azure Storage.

  3. Po přijetí úvodní zprávy se agent aktualizace zařízení cílového zařízení pokusí shromáždit a nahrát soubory v předdefinovaných cestách k souborům zadaných v konfiguračním souboru agenta zařízení. Referenční agent služby Device Update je nakonfigurovaný tak, aby ve výchozím nastavení nahrál diagnostický protokol agenta aktualizace zařízení (aduc.log) a diagnostický protokol agenta DO (do-agent.log).

  4. Agent aktualizace zařízení pak hlásí zpět do služby stav operace ( úspěšné nebo neúspěšné) včetně ID operace protokolu, ResultCode a ExtendedResultCode. Pokud agent aktualizace zařízení selže při operaci protokolu, automaticky se pokusí třikrát opakovat a službě nahlásí pouze konečný stav.

  5. Jakmile všechna cílová zařízení nahlásí stav terminálu zpět službě Device Update, služba Device Update označí operaci protokolu jako úspěšnou nebo neúspěšnou. Úspěšná operace protokolování označuje, že operace protokolu úspěšně dokončila všechna cílová zařízení. Operace protokolu, která selhala, znamená, že nejméně jedno cílové zařízení selhalo operaci protokolu.

    Poznámka

    Vzhledem k tomu, že operace protokolu provádí cílová zařízení paralelně, je možné, že některá cílová zařízení úspěšně nahrála protokoly, ale celková operace protokolu se označí jako neúspěšná. Pokud chcete zjistit, která zařízení byla úspěšná a která selhala, můžete zobrazit podrobnosti o operaci protokolu prostřednictvím uživatelského rozhraní nebo rozhraní API.

Kontrola agenta

Pokud je vaše zařízení zaregistrované v IoT Hub, ale nezobrazuje se v instanci služby Device Update, můžete pomocí funkce Kontrola agenta spustit předem připravené ověřovací kontroly, které vám pomůžou diagnostikovat související problém. Tuto funkci můžete začít používat podle těchto pokynů pro kontrolu agenta.

Z vysoké úrovně funguje funkce kontroly agenta takto:

  • Uživatel zaregistruje zařízení pomocí IoT Hub. Pokud zařízení hlásí ID modelu, které odpovídá id modelu, které je kompatibilní s aktualizací zařízení pro IoT Hub, připojená instance služby Device Update uživatele automaticky zaregistruje zařízení ve službě Device Update.

  • Aby bylo zařízení správně spravováno službou Device Update, musí splňovat určitá kritéria, která je možné ověřit pomocí předem provedených ověřovacích kontrol kontroly agenta. Další informace o těchto kritériích najdete tady.

  • Pokud zařízení nesplňuje všechna tato kritéria, nelze ho správně spravovat službou Device Update a nezobrazí se v rozhraní Aktualizace zařízení ani v odpovědích rozhraní API. Uživatelé můžou toto zařízení najít pomocí kontroly agenta a pokusit se zjistit, která kritéria nejsou splněna pomocí kontroly agenta.

  • Jakmile uživatel určí, která kritéria nejsou splněna, může problém opravit a zařízení by se pak mělo správně zobrazit v rozhraní aktualizace zařízení.

Další kroky

Naučte se používat funkce vzdáleného shromažďování protokolů a kontroly agenta ve službě Device Update: