Udostępnij za pośrednictwem


Omówienie usługi Device Update dla diagnostyki IoT Hub

Usługa Device Update dla IoT Hub zawiera kilka funkcji, które ułatwiają diagnozowanie i rozwiązywanie problemów z błędami po stronie urządzenia. W wersji agenta w wersji 0.9.0 dostępne są trzy funkcje diagnostyczne:

  • Kody błędów wdrażania można wyświetlić bezpośrednio w interfejsie użytkownika usługi Device Update

  • Zdalne zbieranie dzienników umożliwia tworzenie operacji dziennika, które instruują docelowe urządzenia do przekazywania dzienników diagnostycznych na urządzeniu do połączonego konta usługi Azure Blob Storage

  • Sprawdzanie agenta uruchamia sprawdzanie poprawności na urządzeniach zarejestrowanych w wystąpieniu usługi Device Update z celem diagnozowania urządzeń zarejestrowanych w połączonym IoT Hub, ale nie są wyświetlane w aktualizacji urządzenia

Kody błędów wdrażania w interfejsie użytkownika

Gdy urządzenie zgłasza błąd wdrożenia w usłudze Device Update, interfejs użytkownika Device Update wyświetla zgłoszone resultCode urządzenie i extendedResultCode w interfejsie użytkownika. Aby wyświetlić następujące kody, wykonaj następujące czynności:

  1. W Azure Portal przejdź do centrum IoT Hub.

  2. Wybierz pozycję Aktualizacje, a następnie przejdź do karty Grupy i wdrożenia.

  3. Wybierz nazwę grupy z aktywnym wdrożeniem, aby przejść do strony Szczegóły grupy .

  4. Wybierz dowolną nazwę urządzenia na liście Urządzenie , aby otworzyć panel szczegółów urządzenia. W tym miejscu zobaczysz kod wyniku zgłoszony przez urządzenie.

  5. Agent referencyjny usługi Device Update jest zgodny ze standardową konwencją kodu stanu HTTP dla pola kodu wynikowego (na przykład "200" wskazuje powodzenie). Aby uzyskać więcej informacji na temat analizowania kodów wyników, zobacz Kody błędów klienta aktualizacji urządzenia.

    Uwaga

    Jeśli agent aktualizacji urządzeń został zmodyfikowany w celu raportowania dostosowanych kodów wyników, kody liczbowe będą nadal przekazywane do interfejsu użytkownika usługi Device Update. Następnie możesz zapoznać się z dowolną dokumentacją utworzoną w celu przeanalizowania tych kodów liczbowych.

Zdalne zbieranie dzienników

Jeśli więcej informacji z urządzenia jest konieczne do zdiagnozowania i rozwiązania problemu z błędem, możesz użyć funkcji zbierania dzienników, aby poinstruować docelowe urządzenia do przekazania dzienników diagnostycznych na urządzeniu do połączonego konta usługi Azure Blob Storage. Możesz rozpocząć korzystanie z tej funkcji, postępując zgodnie z instrukcjami w temacie Zdalne zbieranie dzienników diagnostycznych z urządzeń.

Zdalne zbieranie dzienników usługi Device Update jest funkcją opartą na usłudze. Aby móc korzystać z zbierania dzienników, urządzenie musi mieć możliwość zaimplementowania interfejsu diagnostyki i pliku konfiguracji oraz możliwości przekazywania plików do usługi Azure Blob Storage za pomocą zestawu SDK.

Na wysokim poziomie funkcja zbierania dzienników działa w następujący sposób:

  1. Użytkownik tworzy nową operację dziennika przy użyciu interfejsu użytkownika lub interfejsów API aktualizacji urządzenia, przeznaczonych dla maksymalnie 100 urządzeń, które zaimplementowały interfejs diagnostyki.

  2. Usługa Device Update wysyła komunikat startowy zbierania dzienników do urządzeń docelowych przy użyciu interfejsu diagnostyki. Ten komunikat początkowy zawiera identyfikator operacji dziennika i token SAS do przekazywania do skojarzonego konta usługi Azure Storage.

  3. Po otrzymaniu komunikatu początkowego agent aktualizacji urządzenia docelowego próbuje zebrać i przekazać pliki we wstępnie zdefiniowanych ścieżkach plików określonych w pliku konfiguracji agenta urządzenia. Agent referencyjny aktualizacji urządzenia jest skonfigurowany do przekazywania dziennika diagnostycznego agenta aktualizacji urządzeń (aduc.log) i dziennika diagnostycznego agenta DO ("do-agent.log") domyślnie.

  4. Agent usługi Device Update zgłasza następnie stan operacji ( powodzenie lub niepowodzenie) z powrotem do usługi, w tym identyfikator operacji dziennika, kod wyników i extendedResultCode. Jeśli agent aktualizacji urządzenia zakończy się niepowodzeniem operacji dziennika, automatycznie spróbuje ponowić próbę trzy razy, zgłaszając tylko końcowy stan z powrotem do usługi.

  5. Gdy wszystkie docelowe urządzenia zgłosiły stan terminalu z powrotem do usługi Device Update, usługa Device Update oznacza operację dziennika jako Powodzenie lub Niepowodzenie. Pomyślna operacja dziennika wskazuje, że wszystkie docelowe urządzenia pomyślnie zakończyły operację dziennika. Operacja dziennika, która zakończyła się niepowodzeniem, wskazuje, że co najmniej jedno urządzenie docelowe nie powiodło się.

    Uwaga

    Ponieważ operacja dziennika jest wykonywana równolegle przez urządzenia docelowe, możliwe jest, że niektóre urządzenia docelowe pomyślnie przekazały dzienniki, ale ogólna operacja dziennika jest oznaczona jako nieudana. Możesz zobaczyć, które urządzenia zakończyły się pomyślnie i które zakończyły się niepowodzeniem, wyświetlając szczegóły operacji dziennika za pośrednictwem interfejsu użytkownika lub interfejsów API.

Sprawdzanie agenta

Gdy urządzenie jest zarejestrowane w IoT Hub, ale nie jest wyświetlane w wystąpieniu aktualizacji urządzenia, możesz użyć funkcji Sprawdzania agenta, aby uruchomić wstępnie wykonane testy weryfikacyjne, aby ułatwić diagnozowanie podstawowego problemu. Możesz rozpocząć korzystanie z tej funkcji, postępując zgodnie z tymi instrukcjami sprawdzania agenta.

Na wysokim poziomie funkcja sprawdzania agenta działa w następujący sposób:

  • Użytkownik rejestruje urządzenie przy użyciu IoT Hub. Jeśli urządzenie zgłasza identyfikator modelu zgodny z usługą Device Update dla IoT Hub, połączone wystąpienie aktualizacji urządzenia użytkownika automatycznie zarejestruje urządzenie w usłudze Device Update.

  • Aby urządzenie było prawidłowo zarządzane przez usługę Device Update, musi spełniać określone kryteria, które można zweryfikować przy użyciu wstępnie wykonanych testów weryfikacji agenta. Więcej informacji na temat tych kryteriów można znaleźć tutaj.

  • Jeśli urządzenie nie spełnia wszystkich tych kryteriów, nie może być prawidłowo zarządzane przez usługę Device Update i nie będzie wyświetlane w interfejsie aktualizacji urządzenia ani odpowiedziach interfejsu API. Użytkownicy mogą użyć sprawdzania agenta, aby znaleźć to urządzenie i spróbować określić, które kryteria nie są spełnione przy użyciu sprawdzania agenta.

  • Gdy użytkownik zidentyfikował, które kryteria nie są spełnione, użytkownik może rozwiązać ten problem, a urządzenie powinno zostać prawidłowo wyświetlone w interfejsie aktualizacji urządzenia.

Następne kroki

Dowiedz się, jak używać zdalnego zbierania dzienników usługi Device Update i funkcji sprawdzania agenta: