Tutorial: Monitorizar dispositivos IoT Edge

Aplica-se a:IoT Edge marca de verificação 1.4 IoT Edge 1.4

Importante

IoT Edge 1.4 é a versão suportada. Se estiver numa versão anterior, consulte Atualizar IoT Edge.

Utilize livros do Azure Monitor para monitorizar o estado de funcionamento e o desempenho das implementações do Azure IoT Edge.

Neste tutorial, ficará a saber como:

  • Compreenda que métricas são partilhadas por IoT Edge dispositivos e como o módulo recoletor de métricas as processa.
  • Implemente o módulo recoletor de métricas num dispositivo IoT Edge.
  • Ver visualizações organizadas das métricas recolhidas a partir do dispositivo.

Pré-requisitos

Um dispositivo IoT Edge com o módulo de sensor de temperatura simulado implementado no mesmo. Se não tiver um dispositivo pronto, siga os passos em Implementar o seu primeiro módulo IoT Edge num dispositivo Linux virtual para criar um com uma máquina virtual.

Compreender as métricas de IoT Edge

Cada dispositivo IoT Edge depende de dois módulos, os módulos de runtime, que gerem o ciclo de vida e a comunicação de todos os outros módulos num dispositivo. Estes módulos são denominados agente de IoT Edge e hub IoT Edge. Para saber mais sobre estes módulos, veja Compreender o runtime do Azure IoT Edge e a respetiva arquitetura.

Ambos os módulos de runtime criam métricas que lhe permitem monitorizar remotamente o desempenho de um dispositivo IoT Edge ou dos módulos individuais. O agente IoT Edge comunica o estado dos módulos individuais e do dispositivo anfitrião, pelo que cria métricas como há quanto tempo um módulo está a ser executado corretamente ou a quantidade de RAM e a percentagem de CPU que está a ser utilizada no dispositivo. O hub IoT Edge comunica sobre comunicações no dispositivo, pelo que 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 das métricas disponíveis, veja Métricas incorporadas do Access.

Estas métricas são expostas automaticamente por ambos os módulos para que possa criar as suas próprias soluções para aceder e comunicar sobre estas métricas. Para facilitar este processo, a Microsoft fornece o módulo azureiotedge-metrics-collector que processa este processo para aqueles que não têm ou querem uma solução personalizada. O módulo recoletor de métricas recolhe métricas dos dois módulos de runtime e quaisquer outros módulos que possa querer monitorizar e transporta-os fora do dispositivo.

O módulo recoletor de métricas funciona de uma de duas formas de enviar as suas métricas para a cloud. A primeira opção, que iremos utilizar neste tutorial, é enviar as métricas diretamente para o Log Analytics. A segunda opção, que só é recomendada se as políticas de rede o exigirem, é enviar as métricas através de Hub IoT e, em seguida, configurar uma rota para transmitir as mensagens de métricas ao Log Analytics. De qualquer forma, quando as métricas estiverem na sua área de trabalho do Log Analytics, estão disponíveis para visualização através de livros do Azure Monitor.

Criar uma área de trabalho do Log Analytics

É necessária uma área de trabalho do Log Analytics para recolher os dados de métricas e fornece uma linguagem de consulta e integração com o Azure Monitor para que possa monitorizar os seus dispositivos.

  1. Inicie sessão no portal do Azure.

  2. Procure e selecione Áreas de trabalho do Log Analytics.

  3. Selecione Criar e, em seguida, siga as instruções para criar uma nova área de trabalho.

  4. Assim que a área de trabalho for criada, selecione Ir para recurso.

  5. No menu principal em Definições, selecione Gestão de agentes.

  6. Copie os valores do ID da Área de Trabalho e da chave primária. Irá utilizar estes dois valores mais à frente no tutorial para configurar o módulo de recoletor de métricas para enviar as métricas para esta área de trabalho.

Obter o ID de recurso do hub IoT

Quando configura o módulo de recoletor de métricas, dá-lhe o ID de recurso do Azure Resource Manager para o hub IoT. Obtenha o ID agora.

  1. A partir do portal do Azure, navegue para o seu hub IoT.

  2. No menu à esquerda, em Definições, selecione Propriedades.

  3. Copie o valor do ID de Recurso. Deve ter o formato /subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Devices/IoTHubs/<iot_hub_name>.

Implementar o módulo recoletor de métricas

Implemente o módulo recoletor de métricas em todos os dispositivos que pretende monitorizar. É executado no dispositivo como qualquer outro módulo e observa os pontos finais atribuídos para que as métricas recolham e enviem para a cloud.

Siga estes passos para implementar e configurar o módulo de recoletor:

  1. Inicie sessão no portal do Azure e aceda ao seu hub IoT.

  2. No menu à esquerda, selecione Dispositivos no menu Gestão de dispositivos .

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

  4. Na barra de menus superior, selecione Definir Módulos para abrir a página de implementação do módulo de três passos.

  5. O primeiro passo para implementar módulos a partir do portal é declarar quais os Módulos que devem estar num dispositivo. Se estiver a utilizar o mesmo dispositivo que criou no início rápido, já deverá ver SimulatedTemperatureSensor listado. Caso contrário, adicione-o agora:

    1. Selecione Adicionar e, em seguida, selecione Módulo do Marketplace no menu pendente.

    2. Procure e selecione SimulatedTemperatureSensor.

  6. Adicionar e configurar o módulo de recoletor de métricas:

    1. Selecione Adicionar e, em seguida, selecione Módulo do Marketplace no menu pendente.

    2. Procure e selecione Recoletor de Métricas IoT Edge.

    3. Selecione o módulo recoletor de métricas na lista de módulos para abrir a página de detalhes de configuração.

    4. Navegue para o separador Variáveis de Ambiente .

    5. Atualize os seguintes valores:

      Name Valor
      ResourceId O ID de recurso do hub IoT que obteve numa secção anterior.
      UploadTarget AzureMonitor
      LogAnalyticsWorkspaceId O ID da área de trabalho do Log Analytics que obteve numa secção anterior.
      LogAnalyticsSharedKey A chave do Log Analytics que obteve numa secção anterior.
    6. Elimine a variável de ambiente OtherConfig , que é um marcador de posição para opções de configuração extra que poderá querer adicionar no futuro. Não é necessário para este tutorial.

    7. Selecione Atualizar para guardar as alterações.

  7. Selecione Seguinte: rotas para continuar para o segundo passo para implementar módulos.

  8. O portal adiciona automaticamente uma rota para o recoletor de métricas. Utilizaria esta rota se configurasse o módulo de recoletor para enviar as métricas através de Hub IoT, mas neste tutorial estamos a enviar as métricas diretamente para o Log Analytics, pelo que não precisa dela. Elimine a rota FromMetricsCollectorToUpstream .

  9. Selecione Rever + criar para continuar para o passo final para implementar módulos.

  10. Selecione Criar para concluir a implementação.

Depois de concluir a implementação do módulo, regressa à página de detalhes do dispositivo onde pode ver quatro módulos listados como Especificados na Implementação. Os quatro módulos podem demorar alguns momentos a ser listados como Reportados pelo Dispositivo, o que significa que foram iniciados com êxito e comunicaram o respetivo estado ao Hub IoT. Atualize a página para ver o estado mais recente.

Monitorizar o estado de funcionamento do dispositivo

Pode demorar até 15 minutos para que os livros de monitorização do seu dispositivo estejam prontos para visualização. Depois de implementar o módulo recoletor de métricas, este começa a enviar mensagens de métricas para o Log Analytics, onde estão organizadas dentro de uma tabela. O ID de recurso Hub IoT que forneceu liga as métricas que são ingeridas ao hub a que pertencem. Como resultado, os livros de IoT Edge organizados podem obter métricas ao consultar a tabela de métricas com o ID do recurso.

O Azure Monitor fornece três modelos de livros predefinidos para IoT:

  • O livro Vista de Frota mostra o estado de funcionamento dos dispositivos em vários recursos IoT. A vista permite configurar limiares para determinar o estado de funcionamento do dispositivo e apresenta agregações de métricas primárias, por dispositivo.
  • O livro Detalhes do Dispositivo fornece visualizações em torno de três categorias: mensagens, módulos e anfitrião. A vista de mensagens visualiza as rotas de mensagens de um dispositivo e comunica o estado de funcionamento geral do sistema de mensagens. A vista módulos mostra o desempenho dos módulos individuais num dispositivo. A vista de anfitrião mostra informações sobre o dispositivo anfitrião, incluindo informações de versão para componentes anfitriões e utilização de recursos.
  • A Vista do livro Alertas apresenta alertas para dispositivos em vários recursos de IoT.

Explorar a vista de frota e os livros de instantâneos de estado de funcionamento

O livro de vista de frota mostra todos os seus dispositivos e permite-lhe selecionar dispositivos específicos para ver os respetivos instantâneos de estado de funcionamento. Utilize os seguintes passos para explorar as visualizações do livro:

  1. Regresse à página do hub IoT no portal do Azure.

  2. Desloque-se para baixo no menu principal para localizar a secção Monitorização e selecione Livros.

    Selecione livros para abrir a galeria de livros do Azure Monitor.

  3. Selecione o livro Vista de Frota .

  4. Deverá ver o seu dispositivo que está a executar o módulo de recoletor de métricas. O dispositivo está listado como em bom estado de funcionamento ou em mau estado de funcionamento.

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

  6. Em qualquer um dos gráficos de tempo, utilize os ícones de seta sob o eixo X ou clique no gráfico e arraste o cursor para alterar o intervalo de tempo.

    Clique e arraste ou utilize os ícones de seta em qualquer gráfico para alterar o intervalo de tempo.

  7. Feche o livro de instantâneos de estado de funcionamento. Selecione Livros a partir do livro da vista de frota para regressar à galeria de livros.

Explorar o livro de detalhes do dispositivo

O livro de detalhes do dispositivo mostra os detalhes de desempenho de um dispositivo individual. Utilize os seguintes passos para explorar as visualizações do livro:

  1. Na galeria de livros, selecione o livro IoT Edge detalhes do dispositivo.

  2. A primeira página que vê no livro de detalhes do dispositivo é a vista de mensagens com o separador de encaminhamento selecionado.

    À esquerda, uma tabela apresenta as rotas no dispositivo, organizadas por ponto final. Para o nosso dispositivo, vemos que o ponto final a montante, que é o termo especial utilizado para encaminhar para Hub IoT, está a receber mensagens da saída temperatureOutput do módulo do sensor de temperatura simulada.

    À direita, um gráfico controla o número de clientes ligados ao longo do tempo. Pode clicar e arrastar o gráfico para alterar o intervalo de tempo.

    Selecione a vista de mensagens para ver o estado das comunicações no dispositivo.

  3. Selecione o separador grafo para ver uma visualização diferente das rotas. Na página do gráfico, pode arrastar e largar os diferentes pontos finais para reorganizar o gráfico. Esta funcionalidade é útil quando tem muitas rotas para visualizar.

    Selecione a vista de gráfico para ver um gráfico interativo das rotas do dispositivo.

  4. O separador estado de funcionamento comunica quaisquer problemas com mensagens, como mensagens perdidas ou clientes desligados.

  5. Selecione a vista módulos para ver o estado de todos os módulos implementados no dispositivo. Pode selecionar cada um dos módulos para ver detalhes sobre a quantidade de CPU e memória que utilizam.

    Selecione a vista módulos para ver o estado de cada módulo implementado no dispositivo.

  6. Selecione a vista de anfitrião para ver informações sobre o dispositivo anfitrião, incluindo o respetivo sistema operativo, a versão IoT Edge daemon e a utilização de recursos.

Ver registos de módulos

Depois de ver as métricas de um dispositivo, poderá querer aprofundar e inspecionar os módulos individuais. IoT Edge fornece suporte de resolução de problemas no portal do Azure com uma funcionalidade de registo de módulos em direto.

  1. No livro de detalhes do dispositivo, selecione Resolução de problemas em direto.

    Selecione o botão de resolução de problemas em direto no canto superior direito do livro de detalhes do dispositivo.

  2. A página de resolução de problemas abre-se para os registos edgeAgent do seu dispositivo IoT Edge. Se tiver selecionado um intervalo de tempo específico no livro de detalhes do dispositivo, essa definição é transmitida para a página de resolução de problemas.

  3. Utilize o menu pendente para mudar para os registos de outros módulos em execução no dispositivo. Utilize o botão Reiniciar para reiniciar um módulo.

    Utilize o menu pendente para ver os registos de diferentes módulos e utilize o botão reiniciar para reiniciar módulos.

A página de resolução de problemas também pode ser acedida a partir de uma página de detalhes de um dispositivo IoT Edge. Para obter mais informações, veja Resolver problemas IoT Edge dispositivos do portal do Azure.

Passos seguintes

À medida que avança nos restantes tutoriais, mantenha o módulo de recoletor de métricas nos seus dispositivos e regresse a estes livros para ver como as informações são alteradas à medida que adiciona módulos e encaminhamento mais complexos.

Avance para o próximo tutorial onde configura o seu ambiente de programador para começar a implementar módulos personalizados nos seus dispositivos.