Guia de solução de problemas para Atualização de Dispositivo para Hub IoT
Este documento lista algumas dúvidas e problemas comuns que os usuários da Atualização de Dispositivo relataram. Caso você encontre um problema que não aparece neste guia de solução de problemas, consulte a seção Entrando em contato com o Suporte da Microsoft para registrar sua situação.
Importando atualizações
P: Estou com problemas para conectar minha instância da Atualização de Dispositivo à minha instância do Hub IoT
Verifique se as rotas de mensagens do Hub IoT estão configuradas corretamente, de acordo com a documentação de recursos de Atualização de Dispositivo.
P: Estou encontrando um erro relacionado à função (mensagem de erro no portal do Azure ou um erro da API 403)
Talvez você não tenha permissões de acesso configuradas corretamente. Verifique se a configuração está correta de acordo com a documentação de controle de acesso da Atualização de Dispositivo.
P: Estou encontrando um erro 500 ao importar conteúdo para o serviço da Atualização de Dispositivo
Um código de erro no intervalo 500 pode indicar um problema com o serviço de Atualização de Dispositivo. Aguarde 5 minutos e tente novamente. Se o mesmo erro persistir, siga as instruções na seção Contatar o Suporte da Microsoft para arquivar uma solicitação de suporte com a Microsoft.
P: Quero manter as mesmas propriedades de compatibilidade (direcionar minha atualização para o mesmo tipo de dispositivo), mas alterar o Provedor ou o Nome no manifesto de importação. Porém, eu recebo um erro "Falha: erro ao importar atualização devido ao limite excedido" quando faço isso
O mesmo conjunto exato de propriedades de compatibilidade não pode ser usado com mais de uma combinação de Provedor de Atualização e Nome. Isso permite que o serviço de Atualização de Dispositivo determine com certeza quais atualizações devem estar disponíveis para implantação em um determinado dispositivo. Se você precisar atualizar vários componentes ou partições em um só dispositivo, o recurso atualizações de proxy fornecerá essa funcionalidade.
P: Estou encontrando uma mensagem de erro ao importar conteúdo e gostaria de entender mais sobre ela
Consulte a documentação sobre Códigos de erro de Atualização de Dispositivo para obter informações mais detalhadas sobre mensagens de erro relacionadas à importação.
Falhas de dispositivo
P: Como posso garantir que meu dispositivo esteja conectado à Atualização de Dispositivo para o Hub IoT?
Você pode verificar se o dispositivo está conectado à atualização do dispositivo verificando se ele aparece na seção dispositivos "desagrupados" no modo de exibição de conformidade do portal do Azure.
P: Um ou mais dispositivos meus estão com falha de atualização
Há muitas causas raiz possíveis para uma falha na atualização de dispositivo. Valide se o dispositivo está: 1) conectado à instância do Hub IoT, 2) conectado à instância de Atualização de Dispositivo e 3) o serviço DO (Otimização de Entrega) está em execução. Se as três opções forem verdadeiras para o seu dispositivo, siga as instruções na seção Contatar o Suporte da Microsoft para arquivar uma solicitação de suporte com a Microsoft.
P: Falha na inicialização de meu agente da Atualização de Dispositivo
Um dos motivos mais comuns para uma falha na inicialização do agente da Atualização de Dispositivo é um arquivo de configuração malformado (du-config.json). Consulte a documentação do arquivo de configuração e verifique se o agente está configurado corretamente. Observe que todos os valores no arquivo de configuração devem usar aspas duplas.
Implantando uma atualização
P: Implantei uma atualização no(s) meu(s) dispositivo(s), mas de acordo com o status de conformidade, a atualização não está implantada. O que devo fazer?
O status de conformidade do dispositivo pode levar até 5 minutos para ser atualizado. Aguarde e verifique novamente.
P: O status incompatível é mostrado para a implantação do meu dispositivo, o que devo fazer?
As propriedades de fabricante e modelo de um dispositivo de destino podem ter sido alteradas depois de conectar o dispositivo ao Hub IoT, fazendo com que o dispositivo agora seja considerado incompatível com o conteúdo da atualização da implantação atual.
Verifique a interface do ADU Core para ver qual fabricante e modelo seu dispositivo está relatando para o serviço de Atualização de Dispositivo e verifique se eles correspondem ao fabricante e ao modelo especificados no manifesto de importação do conteúdo de atualização que está sendo implantado. Você pode alterar essas propriedades para um determinado dispositivo usando o arquivo de configuração de Atualização de Dispositivo.
P: Vejo que minha implantação está no estágio "ativo", mas nenhum dos meus dispositivos está "em andamento" com a atualização. O que devo fazer?
Verifique se a data de início da implantação não foi definida no futuro. Quando você cria uma nova implantação, a data de início da implantação é padronizada para o dia seguinte como proteção, a menos que você a altere explicitamente. Você pode aguardar a chegada da data de início da implantação ou cancelar a implantação em andamento e criar uma nova implantação com a data de início desejada.
P: Estou tentando agrupar meus dispositivos, mas não vejo a marca na lista suspensa ao criar um grupo
Verifique se configurou corretamente as rotas de mensagem no seu Hub IoT, de acordo com a documentação de recursos de Atualização de Dispositivo. Você terá que marcar seu dispositivo novamente depois de configurar a rota.
Outra causa raiz pode ser que você tenha aplicado a marca antes de conectar seu dispositivo à Atualização de Dispositivo para Hub IoT. Verifique se o dispositivo já está conectado à Atualização de Dispositivo. Você pode verificar se o dispositivo está conectado à Atualização de Dispositivo para Hub IoT verificando se ele aparece nos dispositivos “Desagrupados” no modo de exibição de conformidade. Adicione temporariamente uma marca de um valor diferente e adicione a marca pretendida novamente quando o dispositivo estiver conectado.
Se você estiver usando o DPS (Serviço de Provisionamento de Dispositivos), certifique-se de marcar seus dispositivos depois que eles forem provisionados e não durante o processo de criação do dispositivo. Se você já tiver marcado seu dispositivo durante a etapa de criação do dispositivo, será preciso marcar temporariamente seu dispositivo com um valor diferente depois que ele for provisionado e, em seguida, adicionar a marca pretendida novamente.
P: Minha implantação foi concluída com êxito, mas alguns dispositivos não foram atualizados
Isso pode ter sido causado por um erro do lado do cliente nos dispositivos com falha. Confira a seção Falhas de Dispositivo deste guia de solução de problemas.
P: Encontrei um erro na experiência do usuário ao tentar iniciar uma implantação
Isso pode ter sido causado por um bug de serviço/UX ou por um problema de permissões de API. Siga as instruções na seção Contatar o Suporte da Microsoft para arquivar uma solicitação de suporte com a Microsoft.
P: Iniciei uma implantação, mas ela não está chegando ao estado final
Isso pode ter sido causado por um problema de desempenho de serviço, um bug de serviço ou um bug do cliente. Repita sua implantação após 10 minutos. Se você encontrar o mesmo problema, faça pull dos logs do dispositivo e consulte a seção Falhas de Dispositivo deste guia de solução de problemas. Se o mesmo problema persistir, siga as instruções na seção Contatar o Suporte da Microsoft para arquivar uma solicitação de suporte com a Microsoft.
P: Migrei de um agente de nível de dispositivo para adicionar o agente como uma identidade de módulo no dispositivo, e minha atualização é mostrada como “em andamento”, mesmo que tenha sido aplicada ao dispositivo
Isso pode ter sido causado porque você não removeu o agente mais antigo que estava se comunicando pelo Dispositivo Gêmeo. Ao provisionar o agente de Atualização de Dispositivo como um Módulo (veja como fazer) todas as comunicações entre o dispositivo e o serviço de Atualização de Dispositivo ocorrem no Módulo Gêmeo, portanto, lembre-se de marcar o Módulo Gêmeo do dispositivo ao criar grupos e todas as comunicações devem ocorrer pelo módulo gêmeo.
Baixando atualizações em dispositivos
P: Como retomar um download quando um dispositivo for reconectado após um período de desconexão?
O download será retomado automaticamente quando a conectividade for restaurada dentro de um período de 24 horas. Após 24 horas, o download precisará ser reiniciado pelo usuário.
Usando o cache conectado da Microsoft (MCC)
P: Estou com problemas ao tentar implantar o módulo MCC em meu dispositivo do IoT Edge
Consulte a documentação do IoT Edge para implantar módulos do Edge em dispositivos IoT Edge. Você pode verificar se o módulo MCC está sendo executado com êxito no seu dispositivo IoT Edge navegando até http://localhost:5100/Summary.
P: Um dos meus dispositivos IoT está tentando baixar uma atualização por meio do MCC, mas está falhando
Há vários problemas que podem fazer com que haja falha na conexão de um dispositivo IoT ao MCC. Para diagnosticar o problema, colete os logs do cliente DO e Nginx do dispositivo com falha (consulte a seção Entrando em contato com o Suporte da Microsoft para instruções de como coletar logs do cliente).
Seu dispositivo pode estar falhando ao efetuar pull do conteúdo da Internet para passá-lo para seu módulo do MCC porque a URL usada não é permitida. Para determinar se é o caso, você precisará verificar as variáveis de ambiente do IoT Edge no portal do Azure.
Solucionar problemas de uma instância ausente no portal do Azure
P: Não vejo uma instância da Atualização de Dispositivo para Hub IoT quando seleciono o ícone de "engrenagem"
Há algumas causas possíveis para esse problema. Veja abaixo as etapas de solução de problemas.
Uma instância da Atualização de Dispositivo precisa ser associada a um Hub IoT do Azure no mesmo grupo de recursos e assinatura. Se você moveu a instância da Atualização de Dispositivo ou o hub para um grupo de recursos ou assinatura diferente, talvez não veja sua instância no portal do Azure. Você precisará executar uma das seguintes etapas para continuar usando a Atualização de Dispositivo para Hub IoT:
- Retorne os itens movidos para a configuração original.
- Se você moveu apenas o hub IoT de um grupo de recursos para outro, modifique a instância da Atualização de Dispositivo com a nova resourceId do hub IoT.
- Se você moveu itens de uma assinatura para outra, verifique se a conta da Atualização de Dispositivo e o hub IoT estão na mesma assinatura e modifique a instância da Atualização de Dispositivo com a nova resourceId do Hub IoT.
Pelo menos permissões de nível de leitura são necessárias para o hub IoT e sua conta da Atualização de Dispositivo para Hub IoT para acessar a funcionalidade da Atualização de Dispositivo por meio da experiência de hub IoT no portal do Azure.
- Para gerenciar permissões para o Hub IoT:
- Selecione seu hub no portal do Azure
- Selecione “Controle de Acesso (IAM)“ na barra de navegação esquerda.
- Selecione “Adicionar atribuição de função“.
- Selecione uma função com pelo menos acesso de leitura e selecione Avançar.
- Ao lado de “Membros“, selecione “+Selecionar membros“.
- Adicione sua conta no submenu à direita e selecione o botão "Selecionar".
- Selecione “Revisar + atribuir“.
- Para gerenciar permissões para sua conta da Atualização de Dispositivo para Hub IoT, peça ao proprietário da conta para executar estas etapas:
- Selecione sua conta da Atualização de Dispositivo no portal do Azure.
- Selecione “Controle de Acesso (IAM)“ na barra de navegação esquerda.
- Selecione “Adicionar atribuição de função“.
- Selecione a função Leitor (ou uma função com permissões equivalentes).
- Ao lado de “Membros“, selecione “+Selecionar membros“.
- Adicione sua conta no submenu à direita e selecione o botão "Selecionar".
- Selecione “Revisar + atribuir“.
Saiba mais sobre o controle de acesso baseado em função para o serviço da Atualização de Dispositivo.
Entrando em contato com o Suporte da Microsoft
Se você tiver problemas que não podem ser resolvidos por meio das perguntas frequentes acima, você pode abir uma solicitação de suporte junto ao Suporte da Microsoft por meio da interface do portal do Azure. Dependendo da categoria que você indicar para o seu problema, talvez você seja solicitado a coletar e compartilhar dados adicionais para ajudar o Suporte da Microsoft a investigar o problema.
Consulte as instruções abaixo sobre como coletar cada tipo de dados.
Você pode usar getDevice para verificar se há informações adicionais na resposta de conteúdo da API.
Além disso, as seguintes informações podem ser úteis para restringir a causa raiz do seu problema:
- Que tipo de dispositivo você está tentando atualizar (IoT Edge Gateway, outros)
- Qual tipo de cliente de Atualização de Dispositivo você está usando (baseado em imagem, baseado em pacote, simulador)
- Qual sistema operacional seu dispositivo está executando
- Detalhes sobre a arquitetura do seu dispositivo
- Se teve êxito com a Atualização de Dispositivo para atualizar um dispositivo anteriormente
Se você tiver alguma das informações acima disponíveis, inclua-as na descrição do seu problema.
Coletando logs do cliente
No dispositivo Raspberry Pi, há dois conjuntos de logs encontrados aqui:
/adu/logs
/var/cache/do-client-lite/log
Para o cliente empacotado, os logs são encontrados aqui:
/var/log/adu
/var/cache/do-client-lite/log
Para o Simulador, os logs são encontrados aqui:
/tmp/aduc-logs
Códigos do Erro
Talvez você precise fornecer os códigos de erro ao relatar um problema relacionado à importação de uma atualização, uma falha de dispositivo ou à implantação de uma atualização.
Os códigos de erro podem ser obtidos na interface ADUCoreInterface. Consulte a documentação de códigos de erro de atualização do dispositivo para informações sobre como analisar códigos de erro para autodiagnóstico e solução de problemas.
ID de rastreamento
Talvez você precise fornecer uma ID de rastreamento ao relatar um problema relacionado à importação ou implantação de uma atualização.
A ID de rastreamento para uma determinada ação de usuário pode ser encontrada na resposta da API ou na seção Histórico de importação da interface do usuário do portal do Azure.
Atualmente, as IDs de rastreamento para ações de implantação só podem ser acessadas por meio da resposta da API.
ID de Implantação
Talvez você precise fornecer uma ID de implantação ao relatar um problema relacionado à importação ou implantação de uma atualização.
A ID de implantação é criada pelo usuário ao chamar a API para iniciar uma implantação.
Atualmente, as IDs de implantação para implantações iniciadas na interface do usuário no portal do Azure são geradas automaticamente e não são apresentadas ao usuário.
Nome da Instância do Hub IoT
Você pode ser solicitado a fornecer o nome da instância do Hub IoT ao relatar um problema relacionado a falhas de dispositivo ou implantar uma atualização.
O nome do Hub IoT é escolhido pelo usuário quando é provisionado pela primeira vez.
Nome da conta de Atualização do Dispositivo
Talvez você precise fornecer o nome da conta de Atualização do Dispositivo ao relatar um problema relacionado à importação de uma atualização, falhas do dispositivo ou à implantação de uma atualização.
O nome da conta de Atualização do Dispositivo é escolhido pelo usuário ao se registrar no serviço pela primeira vez. Mais informações podem ser encontradas na documentação de recursos de Atualização de Dispositivo.
Nome da instância da Atualização de Dispositivo
Talvez você precise fornecer o nome da instância de Atualização do Dispositivo ao relatar um problema relacionado à importação de uma atualização, falhas do dispositivo ou à implantação de uma atualização.
O nome da instância de atualização de dispositivo é escolhido pelo usuário quando é provisionada pela primeira vez. Mais informações podem ser encontradas na documentação de recursos de Atualização de Dispositivo.
ID do Dispositivo
Talvez você precise fornecer a ID do dispositivo ao relatar um problema relacionado a falhas de dispositivo ou ao implantar uma atualização.
A ID do dispositivo é definida pelo cliente quando o dispositivo é provisionado pela primeira vez. Ela também pode ser recuperada do dispositivo gêmeo do dispositivo.
ID de atualização
Talvez você precise fornecer uma ID de atualização ao relatar um problema relacionado à importação ou implantação de uma atualização.
A ID de atualização é definida pelo cliente ao iniciar uma implantação.
Logs do Nginx
Você pode ser solicitado a fornecer logs do Nginx ao relatar um problema relacionado ao cache conectado da Microsoft.
ADU-conf.txt
Você pode ser solicitado a fornecer o arquivo de configuração de Atualização de Dispositivo ("adu-conf.txt") ao relatar um problema relacionado à implantação de uma atualização.
O arquivo de configuração é opcional e criado pelo usuário seguindo as instruções na documentação deconfiguração da Atualização de Dispositivo.
Importar manifesto
Você pode ser solicitado a fornecer o arquivo de manifesto de importação ao relatar um problema relacionado à importação ou implantação de uma atualização.
O manifesto de importação é um arquivo criado pelo cliente ao importar conteúdo de atualização para o serviço de Atualização de Dispositivo.
Próximas etapas
Saiba mais sobre os códigos de erro da Atualização de Dispositivo