Condividi tramite


Esercitazione: Monitorare i dispositivi IoT Edge

Si applica a: Segno di spunta IoT Edge 1.5 IoT Edge 1.5 Segno di spunta IoT Edge 1.4 IoT Edge 1.4

Importante

IoT Edge 1.5 LTS e IoT Edge 1.4 LTS sono versioni supportate. IoT Edge 1.4 LTS raggiungerà il fine vita il 12 novembre 2024. Se si usa una versione precedente, vedere Aggiornare IoT Edge.

Usare le cartelle di lavoro di Monitoraggio di Azure per monitorare l'integrità e le prestazioni delle distribuzioni di Azure IoT Edge.

In questa esercitazione apprenderai a:

  • Informazioni sulle metriche condivise dai dispositivi IoT Edge e sul modo in cui il modulo dell'agente di raccolta metriche li gestisce.
  • Distribuire il modulo dell'agente di raccolta metriche in un dispositivo IoT Edge.
  • Visualizzare visualizzazioni curate delle metriche raccolte dal dispositivo.

Prerequisiti

Un dispositivo IoT Edge con il modulo del sensore di temperatura simulato distribuito. Se non si ha un dispositivo pronto, seguire la procedura descritta in Distribuire il primo modulo IoT Edge in un dispositivo Linux virtuale per crearne uno usando una macchina virtuale.

Informazioni sulle metriche di IoT Edge

Ogni dispositivo IoT Edge si basa su due moduli, i moduli di runtime, che gestiscono il ciclo di vita e la comunicazione di tutti gli altri moduli in un dispositivo. Questi moduli sono denominati l’agente IoT Edge e l'hub IoT Edge. Per altre informazioni su questi moduli, vedere Informazioni sul runtime di Azure IoT Edge e sulla relativa architettura.

Entrambi i moduli di runtime creano metriche che consentono di monitorare in remoto le prestazioni di un dispositivo IoT Edge o dei singoli moduli. L'agente IoT Edge segnala lo stato dei singoli moduli e del dispositivo host, quindi crea metriche come la durata dell'esecuzione corretta di un modulo o la quantità di RAM e la percentuale di CPU usata nel dispositivo. L'hub IoT Edge segnala le comunicazioni nel dispositivo, quindi crea metriche come il numero totale di messaggi inviati e ricevuti o il tempo necessario per risolvere un metodo diretto. Per l'elenco completo delle metriche disponibili, vedere Accedere alle metriche predefinite.

Queste metriche vengono esposte automaticamente da entrambi i moduli, in modo da poter creare soluzioni personalizzate per accedere e creare report su queste metriche. Per semplificare questo processo, Microsoft fornisce il modulo azureiotedge-metrics-collector che gestisce questo processo per coloro che non hanno o vogliono una soluzione personalizzata. Il modulo dell'agente di raccolta metriche raccoglie le metriche dai due moduli di runtime e da qualsiasi altro modulo che si vuole monitorare e li trasporta fuori dispositivo.

Il modulo dell'agente di raccolta metriche funziona in due modi per inviare le metriche al cloud. La prima opzione, che verrà usata in questa esercitazione, consiste nell'inviare le metriche direttamente a Log Analytics. La seconda opzione, consigliata solo se i criteri di rete lo richiedono, consiste nell'inviare le metriche tramite l'hub IoT e quindi configurare una route per passare i messaggi delle metriche a Log Analytics. In entrambi i casi, quando le metriche si trovano nell'area di lavoro Log Analytics, sono disponibili per la visualizzazione tramite le cartelle di lavoro di Monitoraggio di Azure.

Creare un'area di lavoro Log Analytics

Un'area di lavoro Log Analytics è necessaria per raccogliere i dati delle metriche e fornisce un linguaggio di query e un'integrazione con Monitoraggio di Azure per consentire di monitorare i dispositivi.

  1. Accedere al portale di Azure.

  2. Cercare e selezionare le Aree di lavoro di Log Analytics.

  3. Selezionare Crea e quindi seguire le istruzioni per creare una nuova area di lavoro.

  4. Dopo aver creato l'area di lavoro, selezionare Vai alla risorsa.

  5. Dal menu principale in Impostazioni selezionare Agenti.

  6. Copiare i valori di ID area di lavoro e chiave primaria, disponibili in "Istruzioni dell'agente di Log Analytics". Questi due valori verranno usati più avanti nell'esercitazione per configurare il modulo dell'agente di raccolta metriche per inviare le metriche a questa area di lavoro.

Recuperare l'ID risorsa dell'hub IoT

Quando si configura il modulo dell'agente di raccolta metriche, si assegna l'ID risorsa di Azure Resource Manager per l'hub IoT. Recuperare ora l'ID.

  1. Dal portale di Azure passare all'hub IoT.

  2. Dal menu a sinistra, in Impostazioni selezionare Proprietà.

  3. Copiare il valore di ID risorsa. Deve avere il formato /subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Devices/IoTHubs/<iot_hub_name>.

Distribuire il modulo dell'agente di raccolta metriche

Distribuire il modulo dell'agente di raccolta metriche in ogni dispositivo da monitorare. Viene eseguito nel dispositivo come qualsiasi altro modulo e controlla gli endpoint assegnati per le metriche da raccogliere e inviare al cloud.

Seguire questa procedura per distribuire e configurare il modulo dell'agente di raccolta:

  1. Accedere al portale di Azure e passare all'hub IoT.

  2. Dal menu a sinistra selezionare Dispositivi nel menu Gestione dispositivi.

  3. Selezionare l'ID dispositivo del dispositivo di destinazione dall'elenco dei dispositivi IoT Edge per aprire la pagina dei dettagli del dispositivo.

  4. Nella barra dei menu superiore selezionare Imposta moduli.

  5. Il primo passaggio della distribuzione dei moduli dal portale consiste nel dichiarare quali moduli devono trovarsi in un dispositivo. Se si usa lo stesso dispositivo creato nella guida introduttiva, dovrebbe essere già visualizzato SimulatedTemperatureSensor elencato. In caso contrario, aggiungerlo ora:

    1. Nella sezione Moduli IoT Edge, selezionare Aggiungi e scegliere Modulo IoT Edge.

    2. Aggiornare le impostazioni del modulo seguenti:

      Impostazione Valore
      Nome modulo IoT SimulatedTemperatureSensor
      URI immagine mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latest
      Criterio di riavvio sempre
      Stato desiderato in esecuzione
    3. Selezionare Avanti: Route per continuare a configurare le route.

    4. Aggiungere una route che invia tutti i messaggi dal modulo di temperatura simulato all'hub IoT.

      Impostazione valore
      Nome SimulatedTemperatureSensorToIoTHub
      Valore FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
  6. Aggiungere e configurare il modulo dell'agente di raccolta metriche:

    1. Selezionare Aggiungi quindi scegliere modulo IoT Edge.

    2. Cercare e selezionare agente di raccolta metriche di IoT Edge.

    3. Aggiornare le impostazioni del modulo seguenti:

      Impostazione Valore
      Nome modulo IoT IoTEdgeMetricsCollector
      URI immagine mcr.microsoft.com/azureiotedge-metrics-collector:latest
      Criterio di riavvio sempre
      Stato desiderato in esecuzione

    Per usare una versione o un'architettura diversa del modulo dell'agente di raccolta metriche, trovare le immagini disponibili nel Registro artefatti di Microsoft.

    1. Passare alla scheda variabili di ambiente.

    2. Aggiungere le variabili di ambiente del tipo di testo seguenti:

      Nome Valore
      ResourceId ID risorsa dell'hub IoT recuperato in una sezione precedente.
      UploadTarget AzureMonitor
      LogAnalyticsWorkspaceId ID dell'area di lavoro Log Analytics recuperato in una sezione precedente.
      LogAnalyticsSharedKey Chiave di Log Analytics recuperata in una sezione precedente.

      Per altre informazioni sulle impostazioni delle variabili di ambiente, vedere configurazione dell'agente di raccolta metriche.

    3. Selezionare Applica per salvare le modifiche.

    Nota

    Se si vuole che il modulo dell'agente di raccolta invii le metriche tramite l'hub IoT, è necessario aggiungere una route a upstream simile a FROM /messages/modules/< FROM_MODULE_NAME >/* INTO $upstream. Tuttavia, in questa esercitazione vengono inviate le metriche direttamente a Log Analytics. Pertanto, non è necessario.

  7. Selezionare Rivedi e crea per continuare con il passaggio finale per la distribuzione dei moduli.

  8. Selezionare Crea per completare la distribuzione.

Dopo aver completato la distribuzione del modulo, tornare alla pagina dei dettagli del dispositivo in cui è possibile visualizzare quattro moduli elencati come Specificato nella distribuzione. L'elenco di tutti e quattro i moduli potrebbe richiedere alcuni istanti come Segnalato dal dispositivo, il che significa che sono stati avviati correttamente e hanno segnalato lo stato all'hub IoT. Aggiornare la pagina per visualizzare lo stato più recente.

Monitora l'integrità del dispositivo

La visualizzazione delle cartelle di lavoro di monitoraggio dei dispositivi potrebbe richiedere fino a quindici minuti. Dopo aver distribuito il modulo dell'agente di raccolta metriche, inizia a inviare messaggi delle metriche a Log Analytics in cui sono organizzati all'interno di una tabella. L'ID risorsa dell'hub IoT fornito collega le metriche inserite all'hub a cui appartengono. Di conseguenza, le cartelle di lavoro di IoT Edge curate possono recuperare le metriche eseguendo query sulla tabella delle metriche usando l'ID risorsa.

Monitoraggio di Azure offre tre modelli di cartella di lavoro predefiniti per IoT:

  • La cartella di lavoro Fleet View mostra l'integrità dei dispositivi tra più risorse IoT. La visualizzazione consente di configurare le soglie per determinare l'integrità del dispositivo e presenta aggregazioni di metriche primarie, per dispositivo.
  • La cartella di lavoro Dettagli dispositivo offre visualizzazioni relative a tre categorie: messaggistica, moduli e host. La visualizzazione Messaggistica mostra le route dei messaggi per un dispositivo e segnala l'integrità complessiva del sistema di messaggistica. La visualizzazione Moduli mostra le prestazioni dei singoli moduli in un dispositivo. La visualizzazione Host mostra informazioni sul dispositivo host, incluse le informazioni sulla versione per i componenti host e l'uso delle risorse.
  • La visualizzazione della cartella di lavoro Avvisi presenta avvisi per i dispositivi in più risorse IoT.

Esplorare la visualizzazione della flotta e le cartelle di lavoro dello snapshot di integrità

La cartella di lavoro della visualizzazione flotta mostra tutti i dispositivi e consente di selezionare dispositivi specifici per visualizzare gli snapshot di integrità. Per esplorare le visualizzazioni della cartella di lavoro, seguire questa procedura:

  1. Tornare alla pagina dell'hub IoT nel portale di Azure.

  2. Scorrere verso il basso nel menu principale per trovare la sezione Monitoraggio e selezionare Cartelle di lavoro.

    Selezionare cartelle di lavoro per aprire la raccolta cartelle di lavoro di Monitoraggio di Azure.

  3. Selezionare la cartella di lavoro Fleet View.

  4. Verrà visualizzato il dispositivo che esegue il modulo dell'agente di raccolta metriche. Il dispositivo è elencato come integro o non integro.

  5. Selezionare il nome del dispositivo per visualizzare metriche dettagliate dal dispositivo.

  6. In uno dei grafici temporali usare le icone delle frecce sotto l'asse X oppure selezionare il grafico e trascinare il cursore per modificare l'intervallo di tempo.

    Screenshot che mostra come selezionare e trascinare o usare le icone delle frecce in qualsiasi grafico per modificare l'intervallo di tempo.

  7. Chiudere la cartella di lavoro dello snapshot di integrità. Selezionare Cartelle di lavoro dalla cartella di lavoro della visualizzazione flotta per tornare alla raccolta cartelle di lavoro.

Esplorare la cartella di lavoro dei dettagli del dispositivo

La cartella di lavoro dei dettagli del dispositivo mostra i dettagli delle prestazioni per un singolo dispositivo. Per esplorare le visualizzazioni della cartella di lavoro, seguire questa procedura:

  1. Nella raccolta cartelle di lavoro selezionare la cartella di lavoro dei dettagli del dispositivo IoT Edge.

  2. La prima pagina visualizzata nella cartella di lavoro dei dettagli del dispositivo è la visualizzazione di messaggistica con la scheda routing selezionata.

    A sinistra, una tabella visualizza le route nel dispositivo, organizzate per endpoint. Per il dispositivo, si noterà che l'endpoint upstream, ovvero il termine speciale usato per il routing all'hub IoT, riceve messaggi dall'output temperatureOutput del modulo del sensore di temperatura simulato.

    A destra, un grafico tiene traccia del numero di client connessi nel tempo. È possibile selezionare e trascinare il grafico per modificare l'intervallo di tempo.

    Selezionare la visualizzazione messaggistica per visualizzare lo stato delle comunicazioni nel dispositivo.

  3. Selezionare la scheda grafico per visualizzare una visualizzazione diversa delle route. Nella pagina del grafico è possibile trascinare e rilasciare i diversi endpoint per riorganizzare il grafico. Questa funzionalità è utile quando sono disponibili molte route da visualizzare.

    Selezionare la visualizzazione grafico per visualizzare un grafico interattivo delle route del dispositivo.

  4. La scheda integrità segnala eventuali problemi relativi alla messaggistica, ad esempio messaggi eliminati o client disconnessi.

  5. Selezionare la visualizzazione moduli per visualizzare lo stato di tutti i moduli distribuiti nel dispositivo. È possibile selezionare ognuno dei moduli per visualizzare i dettagli sulla quantità di CPU e memoria usata.

    Selezionare la visualizzazione moduli per visualizzare lo stato di ogni modulo distribuito nel dispositivo.

  6. Selezionare la visualizzazione host per visualizzare informazioni sul dispositivo host, tra cui il sistema operativo, la versione del daemon IoT Edge e l'uso delle risorse.

Visualizzare log del modulo

Dopo aver visualizzato le metriche per un dispositivo, è possibile approfondire ed esaminare i singoli moduli. IoT Edge offre supporto per la risoluzione dei problemi nel portale di Azure con una funzionalità di log del modulo live.

  1. Nella cartella di lavoro dei dettagli del dispositivo selezionare Risoluzione dei problemi live.

    Selezionare il pulsante Risoluzione dei problemi live nella parte superiore destra della cartella di lavoro dei dettagli del dispositivo.

  2. La pagina di risoluzione dei problemi viene visualizzata nei log edgeAgent dal dispositivo IoT Edge. Se è stato selezionato un intervallo di tempo specifico nella cartella di lavoro dei dettagli del dispositivo, tale impostazione viene passata alla pagina di risoluzione dei problemi.

  3. Usare il menu a discesa per passare ai log di altri moduli in esecuzione nel dispositivo. Usare il pulsante Riavvia per riavviare un modulo.

    Usare il menu a discesa per visualizzare i log di moduli diversi e usare il pulsante di riavvio per riavviare i moduli.

È anche possibile accedere alla pagina dei problemi dalla pagina dei dettagli di un dispositivo IoT Edge. Per altre informazioni, vedere Risolvere i problemi dei dispositivi IoT Edge dal portale di Azure.

Passaggi successivi

Mentre si continua con le altre esercitazioni, mantenere il modulo dell'agente di raccolta metriche nei dispositivi e tornare a queste cartelle di lavoro per vedere come cambiano le informazioni man mano che si aggiungono moduli e routing più complessi.

Passare all'esercitazione successiva in cui si configura l'ambiente per sviluppatori per iniziare a distribuire moduli personalizzati nei dispositivi.