Compartilhar via


Visão geral do diagnóstico da Atualização de Dispositivo para Hub IoT

A Atualização de Dispositivo para Hub IoT tem várias funcionalidades que ajudam você a diagnosticar e a solucionar problemas do lado do dispositivo. Existem três recursos de diagnóstico disponíveis na versão do agente v0.9.0:

  • Os códigos de erro de implantação agora podem ser exibidos diretamente na interface do usuário da Atualização de Dispositivo

  • A coleção de logs remotos permite a criação de operações de log, que instruem os dispositivos de destino a carregar logs de diagnóstico no dispositivo para uma conta de armazenamento de Blob do Azure vinculada

  • A Verificação do Agente executa verificações de validação em dispositivos registrados na instância de Atualização de Dispositivo com o objetivo de diagnosticar dispositivos registrados no Hub IoT conectado, mas que não aparecem na Atualização de Dispositivo

Códigos de erro de implantação na interface do usuário

Quando um dispositivo relata uma falha de implantação para o serviço de Atualização de Dispositivo, a interface do usuário da Atualização de Dispositivo exibe resultCode e extendedResultCode relatados do dispositivo na interface do usuário. Use as seguinte etapas para ver esses códigos:

  1. No portal do Azure, navegue para o hub IoT.

  2. Selecione Atualizações e navegue até a guia Grupos e Implantações.

  3. Selecione o nome de um grupo com uma implantação ativa para acessar a página Detalhes do grupo.

  4. Selecione o nome de algum dispositivo na Lista de dispositivos para abrir o painel de detalhes do dispositivo. Aqui você pode ver o código de resultado que o dispositivo relatou.

  5. O agente de referência da Atualização de Dispositivo segue a convenção de código de status HTTP padrão para o campo de código de resultado (por exemplo, "200" indica êxito). Para obter mais informações sobre como analisar códigos de resultado, confira Códigos de erro do cliente da Atualização de Dispositivo.

    Observação

    Se você tiver modificado o seu agente de Atualização de Dispositivo para relatar códigos de resultado personalizados, os códigos numéricos ainda serão passados para a interface do usuário da Atualização de Dispositivo. Em seguida, você pode consultar qualquer documentação criada para analisar esses códigos numéricos.

Coleção de log remoto

Quando mais informações do dispositivo são necessárias para diagnosticar e solucionar um erro, você pode usar o recurso de coleção de logs para instruir os dispositivos de destino a carregar logs de diagnóstico no dispositivo para uma conta vinculada do Armazenamento de Blob do Azure. Você pode começar a usar essa funcionalidade seguindo as instruções em Coletar remotamente logs de diagnóstico de dispositivos.

A coleção de log remoto da Atualização de Dispositivo é um recurso baseado em operação orientado por serviço. Para aproveitar a coleção de log, um dispositivo só precisa ser capaz de implementar a Interface de diagnóstico e o arquivo de configuração, assim como, ser capaz de carregar arquivos no Armazenamento de Blob do Azure por meio do SDK.

De um alto nível, o recurso de coleção de log funciona da seguinte forma:

  1. O usuário cria uma nova operação de log usando a interface do usuário ou as APIs da Atualização de Dispositivo, tendo como destino até 100 dispositivos que tenham implementado a interface de Diagnóstico.

  2. O serviço da Atualização de Dispositivo envia uma mensagem de início da coleta de log para os dispositivos de destino que usam a Interface de Diagnóstico. Essa mensagem inicial inclui a ID da operação de log e um token SAS para carregar para a conta de Armazenamento do Azure associada.

  3. Ao receber a mensagem de início, o agente da Atualização de Dispositivo do dispositivo de destino tentará coletar e carregar os arquivos nos caminhos de arquivos predefinidos especificados no arquivo de configuração do agente no dispositivo. O agente de referência da Atualização de Dispositivo está configurado para carregar o log de diagnóstico do Agente da Atualização de Dispositivo (aduc.log) e o log de diagnóstico do Agente DO ("do-agent.log") por padrão.

  4. Em seguida, o agente da Atualização de Dispositivo relata o estado da operação (Bem-sucedida ou Com Falha) para o serviço, incluindo a ID da operação de log, um ResultCode e um ExtendedResultCode. Se o Agente da Atualização de Dispositivo falhar em uma operação de log, ele tentará novamente por três vezes de maneira automática, relatando apenas o estado final para o serviço.

  5. Depois que todos os dispositivos de destino relatarem o estado do terminal de volta ao serviço da Atualização de Dispositivo, o serviço da Atualização de Dispositivo marcará a operação de log como Bem-sucedida ou Com falha. Uma operação de log bem-sucedida indica que todos os dispositivos de destino concluíram com êxito a operação de log. Uma operação com log com falha indica que pelo menos um dispositivo de destino falhou na operação de log.

    Observação

    Como a operação de log é executada em paralelo pelos dispositivos de destino, é possível que alguns dispositivos de destino carreguem logs com êxito, mas a operação de log em geral seja marcada como "com falha". Você pode ver quais dispositivos tiveram êxito e quais falharam exibindo os detalhes da operação de log por meio da interface do usuário ou das APIs.

Verificação do Agente

Quando o dispositivo está registrado no Hub IoT mas não está aparecendo na Instância da atualização de dispositivo, você pode usar o recurso Verificação do Agente para executar verificações de validação predefinidas para ajudá-lo a diagnosticar o problema subjacente. Você pode começar a usar esse recurso seguindo estas instruções de Verificação do Agente.

De um alto nível, o recurso de verificação do agente funciona da seguinte forma:

  • O usuário registra um dispositivo com o Hub IoT. Se o dispositivo relatar uma ID de Modelo que corresponda às compatíveis com a Atualização de Dispositivo para Hub IoT, a instância da Atualização de Dispositivo conectada do usuário registrará automaticamente o dispositivo com a Atualização de Dispositivo.

  • Para que um dispositivo seja gerenciado corretamente pela Atualização de Dispositivo, ele deve atender a determinados critérios que podem ser verificados usando as verificações de validação predefinidas da Validação do Agente. Mais informações sobre esses critérios podem ser encontradas aqui.

  • Se um dispositivo não atender a todos esses critérios, ele não poderá ser gerenciado corretamente pela Atualização de Dispositivo e não aparecerá na interface da Atualização de Dispositivo ou respostas à API. Os usuários podem usar a Verificação do Agente para localizar este dispositivo e tentar identificar quais critérios não estão sendo atendidos usando a Verificação do Agente.

  • Depois que o usuário tiver identificado quais critérios não estão sendo atendidos, ele poderá corrigir o problema e o dispositivo deverá aparecer corretamente na interface de Atualização de Dispositivo.

Próximas etapas

Saiba como usar os recursos de coleção de log remoto da Atualização de Dispositivo e Verificação do Agente: