Tutorial: Monitorar dispositivos IoT Edge
Aplica-se a: IoT Edge 1.5 IoT Edge 1.4
Importante
IoT Edge 1.5 LTS e IoT Edge 1.4 LTS são versões suportadas. O IoT Edge 1.4 LTS termina a vida útil em 12 de novembro de 2024. Se tiver uma versão anterior, consulte Atualizar 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, irá aprender a:
- Entenda quais métricas são compartilhadas por dispositivos IoT Edge e como o módulo coletor de métricas lida com elas.
- Implante o módulo coletor de métricas em um dispositivo IoT Edge.
- Veja visualizações selecionadas das métricas coletadas do dispositivo.
Pré-requisitos
Um dispositivo IoT Edge com o módulo de sensor de temperatura simulado implantado nele. Se você não tiver um dispositivo pronto, siga as etapas em Implantar seu primeiro módulo IoT Edge em um dispositivo Linux virtual para criar um usando uma máquina virtual.
Compreender as métricas do IoT Edge
Cada dispositivo IoT Edge depende de dois módulos, os módulos de tempo de execução, que gerenciam o ciclo de vida e a comunicação de todos os outros módulos em um dispositivo. Esses módulos são chamados de agente do IoT Edge e hub do IoT Edge. Para saber mais sobre esses módulos, consulte Compreender o tempo de execução do Azure IoT Edge e sua arquitetura.
Ambos os módulos de tempo de execução criam métricas que permitem monitorar remotamente o desempenho de um dispositivo IoT Edge ou de seus módulos individuais. O agente do IoT Edge relata o estado de módulos individuais e do dispositivo host, portanto, cria métricas como há quanto tempo um módulo está sendo executado corretamente ou a quantidade de RAM e porcentagem de CPU sendo usada no dispositivo. O hub IoT Edge relata as comunicações no dispositivo, portanto, 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, consulte Métricas internas de acesso.
Essas métricas são expostas automaticamente por ambos os módulos para que você possa criar suas próprias soluções para acessar e gerar relatórios sobre essas métricas. Para facilitar esse processo, a Microsoft fornece o módulo azureiotedge-metrics-collector que lida com esse processo para aqueles que não têm ou querem uma solução personalizada. O módulo coletor de métricas coleta métricas dos dois módulos de tempo de execução e de quaisquer outros módulos que você queira monitorar e as transporta para fora do dispositivo.
O módulo coletor de métricas funciona como uma das duas maneiras de enviar suas métricas para a nuvem. A primeira opção, que usaremos neste tutorial, é enviar as métricas diretamente para o Log Analytics. A segunda opção, que só é recomendada se suas políticas de rede exigirem, é enviar as métricas por meio do Hub IoT e, em seguida, configurar uma rota para passar as mensagens métricas para o Log Analytics. De qualquer forma, assim que as métricas estiverem em seu espaço de trabalho do Log Analytics, elas estarão disponíveis para exibição por meio das pastas de trabalho do Azure Monitor.
Criar uma área de trabalho do Log Analytics
Um espaço de trabalho do Log Analytics é necessário para coletar os dados de métricas e fornece uma linguagem de consulta e integração com o Azure Monitor para permitir que você monitore seus dispositivos.
Inicie sessão no portal do Azure.
Procurar e selecionar Espaços de trabalho do Log Analytics.
Selecione Criar e siga as instruções para criar um novo espaço de trabalho.
Depois que o espaço de trabalho for criado, selecione Ir para o recurso.
No menu principal, em Configurações, selecione Agentes.
Copie os valores de ID do espaço de trabalho e Chave primária, disponíveis em 'Instruções do agente do Log Analytics'. Você usará esses dois valores posteriormente no tutorial para configurar o módulo de coletor de métricas para enviar as métricas para esse espaço de trabalho.
Recuperar o ID do recurso do hub IoT
Ao configurar o módulo coletor de métricas, você fornece a ID de recurso do Azure Resource Manager para seu hub IoT. Recupere esse ID agora.
No portal do Azure, navegue até seu hub IoT.
No menu à esquerda, em Configurações, selecione Propriedades.
Copie o valor de ID do recurso. Deve ter o formato
/subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Devices/IoTHubs/<iot_hub_name>
.
Implantar o módulo de coletor de métricas
Implante o módulo coletor de métricas em todos os dispositivos que você deseja monitorar. Ele é executado no dispositivo como qualquer outro módulo e observa seus pontos de extremidade atribuídos para métricas para coletar e enviar para a nuvem.
Siga estas etapas para implantar e configurar o módulo coletor:
Entre no portal do Azure e vá para seu hub IoT.
No menu à esquerda, selecione Dispositivos no menu Gerenciamento de dispositivos.
Selecione o ID do dispositivo de destino na lista de dispositivos IoT Edge para abrir a página de detalhes do dispositivo.
Na barra de menus superior, selecione Definir módulos.
A primeira etapa da implantação de módulos do portal é declarar quais módulos devem estar em um dispositivo. Se estiver a utilizar o mesmo dispositivo que criou no início rápido, já deverá ver SimulatedTemperatureSensor listado. Se não, adicione-o agora:
Na seção Módulos do IoT Edge, selecione Adicionar e escolha Módulo IoT Edge.
Atualize as seguintes configurações do módulo:
Definição Value Nome do módulo IoT SimulatedTemperatureSensor
URI da Imagem mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latest
Política de reinício sempre Status desejado em execução Selecione Next: Routes para continuar a configurar rotas.
Adicione uma rota que envie todas as mensagens do módulo de temperatura simulada para o Hub IoT.
Definição Valor Nome SimulatedTemperatureSensorToIoTHub
Valor FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
Adicione e configure o módulo do coletor de métricas:
Selecione Adicionar e escolha Módulo IoT Edge.
Pesquise e selecione IoT Edge Metrics Collector.
Atualize as seguintes configurações do módulo:
Definição Value Nome do módulo IoT IoTEdgeMetricsCollector
URI da Imagem mcr.microsoft.com/azureiotedge-metrics-collector:latest
Política de reinício sempre Status desejado em execução
Se você quiser usar uma versão ou arquitetura diferente do módulo coletor de métricas, localize as imagens disponíveis no Microsoft Artifact Registry.
Navegue até a guia Variáveis de ambiente.
Adicione as seguintes variáveis de ambiente de tipo de texto:
Nome Valor ResourceId Seu ID de recurso do hub IoT que você recuperou em uma seção anterior. UploadTarget AzureMonitor
LogAnalyticsWorkspaceId Seu ID de espaço de trabalho do Log Analytics que você recuperou em uma seção anterior. LogAnalyticsSharedKey Sua chave do Log Analytics que você recuperou em uma seção anterior. Para obter mais informações sobre configurações de variáveis de ambiente, consulte Configuração do coletor de métricas.
Selecione Aplicar para guardar as alterações.
Nota
Se quiser que o módulo coletor envie as métricas por meio do Hub IoT, adicione uma rota para upstream semelhante a
FROM /messages/modules/< FROM_MODULE_NAME >/* INTO $upstream
. No entanto, neste tutorial, estamos enviando as métricas diretamente para o Log Analytics. Portanto, não é necessário.Selecione Rever + criar para continuar para a etapa final de implantação de módulos.
Selecione Criar para concluir a implantação.
Depois de concluir a implantação do módulo, você retorna à página de detalhes do dispositivo, onde pode ver quatro módulos listados como Especificado em Implantação. Pode levar alguns momentos para que todos os quatro módulos sejam listados como Relatados por Dispositivo, o que significa que eles foram iniciados com sucesso 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é quinze minutos para que as pastas de trabalho de monitoramento do dispositivo estejam prontas para visualizaçã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. O ID de recurso do Hub IoT que você forneceu vincula as métricas que são ingeridas ao hub ao qual pertencem. Como resultado, as pastas de trabalho selecionadas do IoT Edge podem recuperar métricas consultando a tabela de métricas usando a ID do recurso.
O Azure Monitor fornece três modelos de pasta de trabalho padrão para IoT:
- A pasta de trabalho do Modo de Exibição de Frota mostra a integridade dos dispositivos em vários recursos da IoT. A visualização permite configurar limites para determinar a integridade do dispositivo e apresenta agregações de métricas primárias, por dispositivo.
- A pasta de trabalho Detalhes do Dispositivo fornece visualizações em torno de três categorias: mensagens, módulos e host. A exibição de mensagens visualiza as rotas de mensagens para um dispositivo e informa sobre a integridade geral do sistema de mensagens. A visualização de módulos mostra o desempenho dos módulos individuais em um dispositivo. A visualização do host mostra informações sobre o dispositivo host, incluindo informações de versão para componentes do host e uso de recursos.
- A exibição da pasta de trabalho Alertas apresenta alertas para dispositivos em vários recursos da IoT.
Explore a visualização da 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 que você selecione dispositivos específicos para exibir seus instantâneos de integridade. Use as seguintes etapas para explorar as visualizações da pasta de trabalho:
Retorne à sua página do hub IoT no portal do Azure.
Role para baixo no menu principal para encontrar a seção Monitoramento e selecione Pastas de trabalho.
Selecione a pasta de trabalho Modo de Exibição de Frota.
Você deve ver seu dispositivo que está executando o módulo de coletor de métricas. O dispositivo está listado como íntegro ou não íntegro.
Selecione o nome do dispositivo para visualizar métricas detalhadas do dispositivo.
Em qualquer um dos gráficos de tempo, use os ícones de seta sob o eixo X ou selecione o gráfico e arraste o cursor para alterar o intervalo de tempo.
Feche a pasta de trabalho do instantâneo de integridade. Selecione Pastas de trabalho na pasta de trabalho de exibição de frota para retornar à galeria de pastas de trabalho.
Explore a pasta de trabalho de detalhes do dispositivo
A pasta de trabalho de detalhes do dispositivo mostra detalhes de desempenho para um dispositivo individual. Use as seguintes etapas para explorar as visualizações da pasta de trabalho:
Na galeria de pastas de trabalho, selecione a pasta de trabalho de detalhes do dispositivo IoT Edge.
A primeira página que você vê na pasta de trabalho de detalhes do dispositivo é a exibição de mensagens com a guia roteamento selecionada.
À esquerda, uma tabela exibe as rotas no dispositivo, organizadas por ponto de extremidade. Para o nosso dispositivo, vemos que o ponto de extremidade upstream , que é o termo especial usado para roteamento para o Hub IoT, está recebendo mensagens da saída temperatureOutput do módulo de sensor de temperatura simulado.
À direita, um gráfico acompanha o número de clientes conectados ao longo do tempo. Você pode selecionar e arrastar o gráfico para alterar o intervalo de tempo.
Selecione a guia do gráfico para ver uma visualização diferente das rotas. Na página do gráfico, você pode arrastar e soltar os diferentes pontos de extremidade para reorganizar o gráfico. Esse recurso é útil quando você tem muitas rotas para visualizar.
A guia de integridade relata quaisquer problemas com mensagens, como mensagens descartadas ou clientes desconectados.
Selecione a visualização dos módulos para ver o status de todos os módulos implantados no dispositivo. Você pode selecionar cada um dos módulos para ver detalhes sobre a quantidade de CPU e memória que eles usam.
Selecione a exibição do 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 registos do módulo
Depois de visualizar as métricas de um dispositivo, convém mergulhar mais e inspecionar os módulos individuais. O IoT Edge fornece suporte para solução de problemas no portal do Azure com um recurso de log de módulo ativo.
Na pasta de trabalho de detalhes do dispositivo, selecione Solucionar problemas ao vivo.
A página de solução de problemas é aberta para os logs do edgeAgent do seu dispositivo IoT Edge. Se você selecionou um intervalo de tempo específico na pasta de trabalho de detalhes do dispositivo, essa configuração será passada para a página de solução de problemas.
Use o menu suspenso para alternar para os logs de outros módulos em execução no dispositivo. Use o botão Reiniciar para reiniciar um módulo.
A página de solução de problemas também pode ser acessada na página de detalhes de um dispositivo IoT Edge. Para obter mais informações, consulte Solucionar problemas de dispositivos IoT Edge no portal do Azure.
Próximos passos
À medida que você continua com o restante dos tutoriais, mantenha o módulo de coletor de métricas em seus dispositivos e retorne a essas pastas de trabalho para ver como as informações mudam à medida que você adiciona módulos e roteamento mais complexos.
Continue para o próximo tutorial onde você configura seu ambiente de desenvolvedor para começar a implantar módulos personalizados em seus dispositivos.