Tutorial sulle nozioni di base - AWS IoT Core

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Tutorial sulle nozioni di base

In questo tutorial viene creato un parametro del parco istanza per monitorare le temperature dei sensori e rilevare potenziali anomalie. Durante la creazione del parametro del parco istanze, si definisce una query di aggregazione che rileva il numero di sensori con temperature superiori a 80 gradi Fahrenheit. Si specifica che l'interrogazione deve essere eseguita ogni 60 secondi e i risultati dell'interrogazione vengono inviati CloudWatch, dove è possibile visualizzare il numero di sensori che presentano potenziali rischi legati alle alte temperature e impostare allarmi. Per completare questo tutorial, userai AWS CLI.

In questo tutorial, apprenderai come:

Questo tutorial dura circa 15 minuti.

Prerequisiti

Configurazione

Abilita l'indicizzazione del parco istanze per utilizzare i parametri del parco istanze. Per abilitare l'indicizzazione del parco istanze per i tuoi oggetti o gruppi di oggetti con origini dati specificate e configurazioni associate, segui le istruzioni riportate in Gestione dell'indicizzazione di oggetti e Gestione dell'indicizzazione di gruppi di oggetti.

Per configurare
  1. Esegui il seguente comando per abilitare l'indicizzazione del parco istanze e specificare le origini dati da cui eseguire la ricerca.

    aws iot update-indexing-configuration \ --thing-indexing-configuration "thingIndexingMode=REGISTRY_AND_SHADOW,customFields=[{name=attributes.temperature,type=Number},{name=attributes.rackId,type=String},{name=attributes.stateNormal,type=Boolean}],thingConnectivityIndexingMode=STATUS" \

    L'esempio del comando CLI precedente consente l'indicizzazione del parco istanze per supportare la ricerca dei dati del registro, i dati shadow e lo stato di connettività dell'oggetto utilizzando l'indice AWS_Things.

    La modifica della configurazione può richiedere alcuni minuti. Verifica che l'indicizzazione del tuo parco istanze sia abilitata prima di creare i parametri del parco istanze.

    Per controllare se l'indicizzazione del parco istanze è stata abilitata, esegui il seguente comando della CLI:

    aws --region us-east-1 iot describe-index --index-name "AWS_Things"

    Per ulteriori informazioni, consulta Abilitazione dell'indicizzazione di oggetti.

  2. Esegui il seguente script bash per creare dieci oggetti e descriverli.

    # Bash script. Type `bash` before running in other shells. Temperatures=(70 71 72 73 74 75 47 97 98 99) Racks=(Rack1 Rack1 Rack2 Rack2 Rack3 Rack4 Rack5 Rack6 Rack6 Rack6) IsNormal=(true true true true true true false false false false) for ((i=0; i < 10; i++)) do thing=$(aws iot create-thing --thing-name "TempSensor$i" --attribute-payload attributes="{temperature=${Temperatures[@]:$i:1},rackId=${Racks[@]:$i:1},stateNormal=${IsNormal[@]:$i:1}}") aws iot describe-thing --thing-name "TempSensor$i" done

    Questo script crea dieci oggetti per rappresentare dieci sensori. Ogni oggetto ha attributi di temperature, rackId, e stateNormal come descritto nella tabella seguente:

    Attributo Tipo di dati Descrizione
    temperature Numero Valore della temperatura in Fahrenheit
    rackId Stringa ID del server rack contenente sensori
    stateNormal Booleano Se il valore della temperatura del sensore è normale o meno

    L'output di questo script contiene dieci file JSON. Uno dei file JSON ha il seguente aspetto:

    { "version": 1, "thingName": "TempSensor0", "defaultClientId": "TempSensor0", "attributes": { "rackId": "Rack1", "stateNormal": "true", "temperature": "70" }, "thingArn": "arn:aws:iot:region:account:thing/TempSensor0", "thingId": "example-thing-id" }

    Per ulteriori informazioni, consulta Crea un oggetto.

Crea parametri del parco istanze

Per creare un parametro del parco istanze
  1. Esegui il comando seguente per creare un parco istanze denominato high_temp_FM. Crei la metrica della flotta per monitorare il numero di sensori con temperature superiori a 80 gradi Fahrenheit in. CloudWatch

    aws iot create-fleet-metric --metric-name "high_temp_FM" --query-string "thingName:TempSensor* AND attributes.temperature >80" --period 60 --aggregation-field "attributes.temperature" --aggregation-type name=Statistics,values=count

    --nome-parametro

    Tipo di dati: stringa. Il parametro --metric-name specifica il nome parametro del parco istanze. In questo esempio, stai creando un parametro del parco istanze denominato high_temp_FM.

    --query-stringa

    Tipo di dati: stringa. Il parametro --query-string specifica la stringa di query. In questo esempio, la stringa di query significa interrogare tutte le cose con nomi che iniziano con TempSensore con temperature superiori a 80 gradi Fahrenheit. Per ulteriori informazioni, consulta Sintassi delle query.

    --periodo

    Tipo di dati: numero intero. Il parametro --period specifica il tempo necessario per recuperare i dati aggregati in secondi. In questo esempio, specifichi che il parametro del parco istanze che stai creando recupera i dati aggregati ogni 60 secondi.

    --aggregazione--campo

    Tipo di dati: stringa. Il parametro --aggregation-field specifica l'attributo da valutare. In questo esempio, l'attributo della temperatura deve essere valutato.

    --tipo--aggregazione

    Il parametro --aggregation-type specifica il riepilogo statistico da visualizzare nel parametro del parco istanze. Per i processi di monitoraggio, è possibile personalizzare le proprietà della query di aggregazione per i diversi tipi di aggregazione (Statistiche, Cardinalità e Percentile). In questo esempio, si specifica count per il tipo di aggregazione e Statistics per restituire il conteggio dei dispositivi con attributi che corrispondono alla query, in altre parole, per restituire il conteggio dei dispositivi con nomi che iniziano con TempSensore con temperature superiori a 80 gradi Fahrenheit. Per ulteriori informazioni, consulta Query di dati aggregati.

    L'output di questo comando è simile al seguente:

    { "metricArn": "arn:aws:iot:region:111122223333:fleetmetric/high_temp_FM", "metricName": "high_temp_FM" }
    Nota

    La visualizzazione dei punti dati può richiedere alcuni istanti. CloudWatch

    Per ulteriori informazioni sulla creazione di un parametro di parco istanze, leggi Gestione dei parametri del parco istanze.

    Se non riesci a creare un parametro del parco di istanze, leggi Risoluzione dei problemi dei parametri del parco istanze.

  2. (Facoltativo) Esegui il comando seguente per descrivere il parametro del parco istanze denominato high_temp_FM:

    aws iot describe-fleet-metric --metric-name "high_temp_FM"

    L'output di questo comando è simile al seguente:

    { "queryVersion": "2017-09-30", "lastModifiedDate": 1625249775.834, "queryString": "*", "period": 60, "metricArn": "arn:aws:iot:region:111122223333:fleetmetric/high_temp_FM", "aggregationField": "registry.version", "version": 1, "aggregationType": { "values": [ "count" ], "name": "Statistics" }, "indexName": "AWS_Things", "creationDate": 1625249775.834, "metricName": "high_temp_FM" }

Visualizza le metriche della flotta in CloudWatch

Dopo aver creato la metrica della flotta, puoi visualizzare i dati metrici in. CloudWatch In questo tutorial, vedrai la metrica che mostra il numero di sensori con nomi che iniziano con TempSensore con temperature superiori a 80 gradi Fahrenheit.

Per visualizzare i punti dati in CloudWatch
  1. Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

  2. CloudWatch Nel menu sul pannello di sinistra, scegli Metriche per espandere il sottomenu, quindi scegli Tutte le metriche. Si apre la pagina in cui la metà superiore mostra il grafico e la metà inferiore contiene quattro sezioni a schede.

  3. La prima sezione a schede Tutte le metriche elenca tutte le metriche che puoi visualizzare in gruppi, scegli IoT. FleetMetrics Contiene tutti i parametri della tua flotta.

  4. Nella sezione Tipo di aggregazione della scheda Tutti i parametri, scegli Tipo di aggregazione per visualizzare tutti parametri del parco istanze che hai creato.

  5. Scegli i parametri del parco istanze per visualizzare il grafico a sinistra della sezione Tipo di aggregazione. Il valore count viene visualizzato a sinistra del Nome parametro e questo è il valore del tipo di aggregazione specificato nella sezione Crea parametri del parco istanze di questo tutorial.

  6. Scegli la seconda scheda denominata Rappresentazione grafica di parametri a destra della scheda Tutti i parametri per visualizzare il parametro del parco istanze che hai scelto nella fase precedente.

    Dovresti essere in grado di vedere un grafico che mostra il numero di sensori con temperature superiori a 80 gradi Fahrenheit come segue:

    AWS IoT metriche della flotta
    Nota

    L'attributo Periodo è CloudWatch predefinito su 5 minuti. È l'intervallo di tempo tra i punti dati visualizzati in. CloudWatch È possibile modificare l'impostazione Periodo in base alle tue esigenze.

  7. (Facoltativo) È possibile impostare un allarme di parametro.

    1. CloudWatch Nel menu sul pannello di sinistra, scegli Allarmi per espandere il sottomenu, quindi scegli Tutti gli allarmi.

    2. Sulla pagina Allarmi, scegli Creazione di allarme nell'angolo in alto a destra. Segui le istruzioni per la Creazione di allarme nella console per creare un allarme secondo necessità. Per ulteriori informazioni, consulta Usare gli CloudWatch allarmi Amazon.

Per ulteriori informazioni, consulta Usare i CloudWatch parametri di Amazon.

Se non riesci a visualizzare i punti dati all'interno CloudWatch, leggi Risoluzione dei problemi relativi alle metriche della flotta.

Eliminazione

Per eliminare i parametri del parco istanze

Utilizza il comando CLI delete-fleet-metric per eliminare i parametri del parco istanze.

Per eliminare il parametro del parco istanze denominato high_temp_FM, esegui il seguente comando.

aws iot delete-fleet-metric --metric-name "high_temp_FM"

Per eliminare gli oggetti

Usa il comando CLI delete-thing per eliminare gli oggetti.

Per eliminare i dieci oggetti creati, esegui lo script seguente:

# Bash script. Type `bash` before running in other shells. for ((i=0; i < 10; i++)) do thing=$(aws iot delete-thing --thing-name "TempSensor$i") done

Per ripulire le metriche in CloudWatch

CloudWatch non supporta l'eliminazione delle metriche. I parametri scadono in base ai piani di conservazione. Per saperne di più, consulta Utilizzo dei CloudWatch parametri di Amazon.