Compartilhar via


Tutorial: Monitorar dispositivos do IoT Edge

Aplica-se a:Marca de seleção do IoT Edge 1.5 IoT Edge 1.5

Importante

O IoT Edge 1.5 LTS é a versão com suporte. O IoT Edge 1.4 LTS atingirá o fim da vida útil em 12 de novembro de 2024. Se você estiver em uma versão anterior, confira Atualizar o IoT Edge.

Use as pastas de trabalho do Azure Monitor para monitorar a integridade e o desempenho de suas implantações do Azure IoT Edge.

Neste tutorial, você aprenderá como:

  • Saiba quais métricas os dispositivos do IoT Edge compartilham e como o módulo coletor de métricas os manipula.
  • Implantar o módulo do coletor de métricas em um dispositivo IoT Edge.
  • Exibir visualizações organizadas das métricas coletadas do dispositivo.

Pré-requisitos

Você precisa de um dispositivo IoT Edge com o módulo de sensor de temperatura simulado implantado. Se você não tem um dispositivo pronto, siga as etapas em Implantar seu primeiro módulo IoT Edge em um dispositivo virtual Linux para criar um usando uma máquina virtual.

Compreender as métricas do IoT Edge

Cada dispositivo do IoT Edge depende de dois módulos, chamados de módulos de runtime, que gerenciam o ciclo de vida e a comunicação de todos os outros módulos em um dispositivo. Esses módulos são o agente do IoT Edge e o hub do IoT Edge. Para saber mais sobre esses módulos, confira Compreender o runtime do Azure IoT Edge e sua arquitetura.

Ambos os módulos de runtime criam métricas que permitem monitorar remotamente como um dispositivo IoT Edge ou seus módulos individuais são executados. O agente do IoT Edge relata o estado de módulos individuais e o dispositivo host, portanto, ele cria métricas como por quanto tempo um módulo é executado corretamente ou a quantidade de RAM e porcentagem da CPU usada no dispositivo. O hub do IoT Edge relata as comunicações no dispositivo, portanto, ele cria métricas como o número total de mensagens enviadas e recebidas ou o tempo necessário para resolver um método direto. Para obter a lista completa de métricas disponíveis, confira Acessar métricas internas.

Ambos os módulos expõem automaticamente essas métricas, para que você possa criar suas próprias soluções para acessá-las e reportá-las. Para facilitar esse processo, a Microsoft fornece o módulo azureiotedge-metrics-collector, que manipula esse processo se você não tiver ou quiser uma solução personalizada. O módulo coletor de métricas coleta métricas dos dois módulos de runtime e de todos os outros módulos que você deseja monitorar e as envia para fora do dispositivo.

O módulo coletor de métricas envia suas métricas para a nuvem de duas maneiras. A primeira opção, usada neste tutorial, envia as métricas diretamente para o Log Analytics. A segunda opção é recomendada somente se suas políticas de rede exigirem. Ele envia as métricas por meio do Hub IoT e, em seguida, configura uma rota para passar as mensagens de métrica para o Log Analytics. De qualquer forma, depois que as métricas estiverem no workspace do Log Analytics, você poderá exibi-las por meio de pastas de trabalho do Azure Monitor.

Criar um workspace do Log Analytics

Um workspace de Log Analytics é necessário para coletar dados de métricas, utilizar uma linguagem de consulta e se integrar ao Azure Monitor, permitindo que você monitore seus dispositivos.

  1. Entre no portal do Azure.

  2. Pesquise por Log Analytics workspaces e então selecione.

  3. Selecione Criar e siga os prompts para criar um novo workspace.

  4. Quando o espaço de trabalho estiver pronto, selecione Acessar recurso.

  5. No menu principal em Configurações, selecione Agentes.

  6. Copie os valores da ID do Workspace e da chave primária nas instruções do agente do Log Analytics. Você usará esses valores posteriormente no tutorial para configurar o módulo coletor de métricas para enviar métricas para esse workspace.

Recuperar a ID do recurso do hub IoT

Ao configurar o módulo do coletor de métricas, insira a ID de recurso do Azure Resource Manager para o hub IoT. Obtenha essa ID agora.

  1. No portal do Azure, vá para o hub IoT.

  2. Em Configurações, selecione Propriedades.

  3. Copie o valor de ID do recurso. O formato é /subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Devices/IoTHubs/<iot_hub_name>.

Implantar o módulo coletor de métricas

Implante o módulo do coletor de métricas em cada dispositivo que você deseja monitorar. Ele é executado no dispositivo como qualquer outro módulo e observa seus pontos de extremidade atribuídos para que as métricas sejam coletadas e enviadas para a nuvem.

Siga estas etapas para implantar e configurar o módulo coletor:

  1. Entre no portal do Azure e vá para o hub IoT.

1.Em Gerenciamento de dispositivos, selecione Dispositivos.

  1. Selecione a ID do dispositivo de destino na lista de dispositivos do IoT Edge para abrir a página de detalhes do dispositivo.

  2. Na barra de menus, selecione Definir Módulos.

  3. A primeira etapa da implantação de módulos do portal é declarar quais módulos estão em um dispositivo. Se você estiver usando o mesmo dispositivo criado no "quickstart", já poderá visualizar SimulatedTemperatureSensor listado. Se não estiver, adicione-o agora:

    1. Na seção módulos do IoT Edge , selecione Adicionar e escolha Módulo do IoT Edge.

    2. Atualize as seguintes configurações de módulo:

      Configuração Valor
      Nome do módulo IoT SimulatedTemperatureSensor
      URI da imagem mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latest
      Política de reinicialização sempre
      Status desejado executando
    3. Selecione Avançar: Rotas para continuar a configurar rotas.

    4. Adicione uma rota que envia todas as mensagens do módulo de temperatura simulado para o Hub IoT.

      Configuração Valor
      Nome SimulatedTemperatureSensorToIoTHub
      Valor FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
  4. Adicione e configure o módulo coletor de métricas:

    1. Selecione Adicionar e escolha Módulo do IoT Edge.

    2. Pesquise por Coletor de Métricas do IoT Edge e selecione-o.

    3. Atualize as seguintes configurações de módulo:

      Configuração Valor
      Nome do módulo IoT IoTEdgeMetricsCollector
      URI da imagem mcr.microsoft.com/azureiotedge-metrics-collector:latest
      Política de reinicialização sempre
      Status desejado executando

    Para usar uma versão ou arquitetura diferente do módulo do coletor de métricas, localize as imagens disponíveis no Registro de Artefatos da Microsoft.

    1. Vá para a guia Variáveis de Ambiente .

    2. Adicione as seguintes variáveis de ambiente de tipo de texto:

      Nome Valor
      ResourceId A ID do recurso do hub IoT que você recuperou em uma seção anterior.
      UploadTarget AzureMonitor
      LogAnalyticsWorkspaceId A ID do workspace do Log Analytics que você recuperou em uma seção anterior.
      LogAnalyticsSharedKey A chave do Log Analytics que você recuperou em uma seção anterior.

      Para obter mais informações sobre as configurações de variável de ambiente, confira Configuração do coletor de métricas.

    3. Selecione Aplicar para salvar as alterações.

    Observação

    Para enviar métricas por meio do Hub IoT, adicione uma rota para upstream semelhante a FROM /messages/modules/< FROM_MODULE_NAME >/* INTO $upstream. Neste tutorial, as métricas são enviadas diretamente ao Log Analytics, portanto, essa rota não é necessária.

  5. Selecione Examinar + criar para continuar para a etapa final de implantação de módulos.

  6. Selecione Criar para concluir a implantação.

Depois de concluir a implantação dos módulos, retorne à página de detalhes do dispositivo, em que você verá quatro módulos listados como Especificados na Implantação. Pode levar alguns instantes para que todos os quatro módulos sejam listados como Relatados pelo Dispositivo, o que significa que eles iniciaram e relataram seu status ao Hub IoT. Atualize a página para ver o status mais recente.

Monitorar a integridade do dispositivo

Pode levar até 15 minutos para que as pastas de trabalho de monitoramento do dispositivo estejam prontas para exibição. Depois de implantar o módulo coletor de métricas, ele começa a enviar mensagens de métricas para o Log Analytics, onde elas são organizadas em uma tabela. A ID de recurso do Hub IoT que você fornece vincula as métricas ingeridas ao hub correto. Como resultado, as pastas de trabalho do IoT Edge organizadas podem recuperar métricas consultando a tabela de métricas pela ID do recurso.

O Azure Monitor fornece três modelos de pasta de trabalho padrão para IoT:

  • A pasta de trabalho Exibição da Frota mostra a integridade dos dispositivos em vários recursos de IoT. A exibição permite definir limites para a integridade do dispositivo e mostra agregações de métricas primárias por dispositivo.
  • A pasta de trabalho Detalhes do Dispositivo mostra visualizações para mensagens, módulos e host. A exibição de mensagens visualiza as rotas de mensagem para o dispositivo e relata a integridade geral do sistema de mensagens. A exibição de módulos mostra como os módulos individuais em um dispositivo são executados. A exibição de host mostra informações sobre o dispositivo host, incluindo informações de versão para componentes de host e uso de recursos.
  • A exibição de pasta de trabalho Alertas apresenta alertas para dispositivos em vários recursos de IoT.

Explorar a exibição de frota e as pastas de trabalho de instantâneo de integridade

A pasta de trabalho de exibição de frota mostra todos os seus dispositivos e permite selecionar dispositivos específicos para ver os respectivos instantâneos de integridade. Siga estas etapas para explorar as visualizações da pasta de trabalho:

  1. Vá para a página do hub IoT no portal do Azure.

  2. No menu principal, role para baixo até a seção Monitoramento e selecione Pastas de Trabalho.

    Selecione as pastas de trabalho para abrir a galeria de pastas de trabalho do Azure Monitor.

  3. Selecione a pasta de trabalho Exibição da Frota.

  4. Você deve ver o seu dispositivo, que está executando o módulo do coletor de métricas. O dispositivo é listado como íntegro ou não íntegro.

  5. Selecione o nome do dispositivo para exibir métricas detalhadas.

  6. Em qualquer gráfico de tempo, use os ícones de seta no eixo X ou selecione o gráfico e arraste o cursor para alterar o intervalo de tempo.

    Captura de tela mostrando seleção e arraste ou uso dos ícones de seta em qualquer gráfico para alterar o intervalo de tempo.

  7. Feche a pasta de trabalho de instantâneo de integridade. Selecione Pastas de Trabalho na pasta de trabalho de exibição da frota para retornar à galeria de pastas de trabalho.

Explorar a pasta de trabalho de detalhes do dispositivo

A pasta de trabalho de detalhes do dispositivo mostra detalhes de desempenho de um dispositivo individual. Siga estas etapas para explorar as visualizações da pasta de trabalho:

  1. Na galeria de pastas de trabalho, selecione a pasta de trabalho Detalhes do dispositivo IoT Edge.

  2. A primeira página na pasta de trabalho de detalhes do dispositivo é a exibição de mensagens com a guia de roteamento selecionada.

    À esquerda, uma tabela mostra as rotas no dispositivo, organizadas por ponto de extremidade. Para este dispositivo, o ponto de extremidade upstream, que é o termo para roteamento para o Hub IoT, recebe mensagens da saída temperatureOutput do módulo simulado do sensor de temperatura.

    À direita, um grafo mostra o número de clientes conectados ao longo do tempo. Selecione e arraste o grafo para alterar o intervalo de tempo.

    Selecione a exibição de mensagens para ver o status das comunicações no dispositivo.

  3. Selecione a guia grafo para ver uma visualização diferente das rotas. Na página do grafo, arraste e solte os pontos de extremidade para reorganizar o grafo. Esse recurso ajuda quando você tem muitas rotas para visualizar.

    Selecione a exibição de grafo para ver um grafo interativo das rotas do dispositivo.

  4. A guia saúde mostra problemas com mensagens, como mensagens descartadas ou clientes desconectados.

  5. Selecione a exibição de módulos para ver o status de todos os módulos implantados no dispositivo. Selecione um módulo para ver detalhes sobre seu uso de CPU e memória.

    Selecione a exibição de módulos para ver o status de cada módulo implantado no dispositivo.

  6. Selecione o modo de exibição de host para ver informações sobre o dispositivo host, incluindo seu sistema operacional, a versão do daemon do IoT Edge e o uso de recursos.

Ver logs de módulo

Depois de visualizar as métricas de um dispositivo, talvez você queira aprofundar-se e inspecionar os módulos individuais. O IoT Edge dá suporte à solução de problemas no portal do Azure com um recurso de log de módulo ao vivo.

  1. Na pasta de trabalho de detalhes do dispositivo, selecione Solucionar problemas ao vivo.

    Selecione o botão solucionar problemas ao vivo no canto superior direito da pasta de trabalho de detalhes do dispositivo.

  2. A página de solução de problemas é aberta para os logs edgeAgent do dispositivo IoT Edge. Se você selecionar um intervalo de tempo específico na pasta de trabalho de detalhes do dispositivo, essa configuração passará para a página de solução de problemas.

  3. Use o menu suspenso para alternar para os logs de outros módulos em execução no dispositivo e use o botão Reiniciar para reiniciar um módulo.

    Use o menu suspenso para ver os logs de diferentes módulos e use o botão reiniciar para reiniciar os módulos.

Você também pode acessar a página de solução de problemas na página de detalhes de um dispositivo do IoT Edge. Para obter mais informações, confira Solucionar problemas de dispositivos do IoT Edge no portal do Azure.

Próximas etapas

Conforme você percorre o restante dos tutoriais, mantenha o módulo coletor de métricas em seus dispositivos e retorne a essas pastas de trabalho para ver como as informações mudam quando você adiciona módulos e roteamento mais complexos.

Vá para o próximo tutorial para configurar seu ambiente de desenvolvedor e começar a implantar módulos personalizados em seus dispositivos.