Definisci gli allarmi AWS IoT Events - AWS IoT SiteWise

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à.

Definisci gli allarmi AWS IoT Events

Quando si crea un AWS IoT Events allarme, AWS IoT SiteWise invia i valori delle proprietà dell'asset AWS IoT Events per valutare lo stato dell'allarme. AWS IoT Events le definizioni degli allarmi dipendono dal modello di allarme in cui si definisce AWS IoT Events. Per definire un AWS IoT Events allarme su un modello di asset, si definisce un modello composito di allarme che specifica il modello di AWS IoT Events allarme come proprietà della fonte dell'allarme.

AWS IoT Events gli allarmi dipendono da input come le soglie di allarme e le impostazioni di notifica degli allarmi. Questi input vengono definiti come attributi nel modello di asset. È quindi possibile personalizzare questi input su ogni risorsa in base al modello. La AWS IoT SiteWise console può creare questi attributi per te. Se definisci gli allarmi con AWS CLI oAPI, devi definire manualmente questi attributi nel modello di asset.

È inoltre possibile definire altre azioni che si verificano quando viene rilevato un allarme, ad esempio azioni personalizzate di notifica degli allarmi. Ad esempio, puoi configurare un'azione che invia una notifica push a un SNS argomento di Amazon. Per ulteriori informazioni sulle azioni che puoi definire, consulta Lavorare con altri AWS servizi nella Guida per gli AWS IoT Events sviluppatori.

Quando aggiorni o elimini un modello di asset, AWS IoT SiteWise puoi verificare se un modello di allarme in AWS IoT Events sta monitorando una proprietà di asset associata a questo modello di asset. Ciò impedisce di eliminare una proprietà dell'asset attualmente utilizzata da un AWS IoT Events allarme. Per abilitare questa funzionalità AWS IoT SiteWise, è necessario disporre dell'iotevents:ListInputRoutingsautorizzazione. Questa autorizzazione consente AWS IoT SiteWise di effettuare chiamate all'ListInputRoutingsAPIoperazione supportata da AWS IoT Events. Per ulteriori informazioni, consulta ListInputRoutings Autorizzazione (Facoltativa).

Nota

La funzionalità di notifica degli allarmi non è disponibile nella regione Cina (Pechino).

Definisci un AWS IoT Events allarme (AWS IoT SiteWise console)

È possibile utilizzare la AWS IoT SiteWise console per definire un AWS IoT Events allarme su un modello di asset esistente. Per definire un AWS IoT Events allarme su un nuovo modello di asset, create il modello di asset, quindi completate questi passaggi. Per ulteriori informazioni, consulta Creazione di modelli di asset.

Importante

Ogni allarme richiede un attributo che specifica il valore di soglia con cui confrontare l'allarme. È necessario definire l'attributo del valore di soglia nel modello di asset prima di poter definire un allarme.

Si consideri un esempio in cui si desidera definire un allarme che rilevi quando una turbina eolica supera la velocità massima del vento di 50 mph. Prima di definire l'allarme, è necessario definire un attributo (Velocità massima del vento) con un valore predefinito di. 50

Per definire un AWS IoT Events allarme su un modello di asset
  1. Passare alla console AWS IoT SiteWise.

  2. Nel riquadro di navigazione selezionare Models (Modelli).

  3. Scegliete il modello di asset per il quale definire un allarme.

  4. Scegliete la scheda Allarme.

  5. Scegli Aggiungi allarme.

  6. Nella sezione Opzioni del tipo di allarme, scegli AWS IoT Events Allarme.

  7. Nella sezione Dettagli dell'allarme, procedi come segue:

    1. Immetti un nome per l’allarme.

    2. (Facoltativo) Inserisci una descrizione per l'allarme.

  8. Nella sezione Definizioni delle soglie, definisci quando viene rilevato l'allarme e la gravità dell'allarme. Esegui questa operazione:

    1. Seleziona la proprietà sulla quale viene rilevato l'allarme. Ogni volta che questa proprietà riceve un nuovo valore, AWS IoT SiteWise invia il valore AWS IoT Events a per valutare lo stato dell'allarme.

    2. Seleziona l'operatore da utilizzare per confrontare la proprietà con il valore di soglia. Seleziona una delle opzioni seguenti:

      • < meno di

      • <= minore o uguale

      • == uguale

      • ! = non uguale

      • >= maggiore o uguale

      • > maggiore di

    3. Per Valore, selezionate la proprietà dell'attributo da utilizzare come valore di soglia. AWS IoT Events confronta il valore della proprietà con il valore di questo attributo.

    4. Inserisci la gravità dell'allarme. Usa un numero comprensibile al tuo team per indicare la gravità dell'allarme.

  9. (Facoltativo) Nella sezione Impostazioni di notifica - opzionale, procedi come segue:

    1. Scegli Attivo.

      Nota

      Se scegli Inattivo, tu e il tuo team non riceverete alcuna notifica di allarme.

    2. Per Destinatario, scegli il destinatario.

      Importante

      È possibile inviare notifiche di allarme agli AWS IAM Identity Center utenti. Per utilizzare questa funzionalità, è necessario abilitare IAM Identity Center. È possibile abilitare IAM Identity Center solo in una AWS regione alla volta. Ciò significa che è possibile definire le notifiche di allarme solo nella regione in cui è abilitato IAM Identity Center. Per ulteriori informazioni, consulta Nozioni di base nella Guida per l'utente di AWS IAM Identity Center .

    3. Per Protocollo, scegli tra le seguenti opzioni:

      • Email e testo: l'allarme avvisa gli utenti di IAM Identity Center con un SMS messaggio e un messaggio e-mail.

      • E-mail: l'allarme avvisa gli utenti di IAM Identity Center con un messaggio e-mail.

      • Testo: l'allarme avvisa gli utenti di IAM Identity Center con un SMS messaggio.

    4. Per Mittente, scegli il mittente.

      Importante

      È necessario verificare l'indirizzo e-mail del mittente in Amazon Simple Email Service (AmazonSES). Per ulteriori informazioni, consulta la sezione Verifica dell'identità di un indirizzo e-mail, nella Amazon Simple Email Service Developer Guide.

  10. Nella sezione Stato predefinito degli asset, puoi impostare lo stato predefinito per gli allarmi creati da questo modello di asset.

    Nota

    Attivate o disattivate questo allarme per gli asset che create da questo modello di asset in una fase successiva.

  11. Nella sezione Impostazioni avanzate, puoi configurare le autorizzazioni, le impostazioni di notifica aggiuntive, le azioni relative allo stato degli allarmi, il modello di allarme in SiteWise Monitor e il flusso di conferma.

    Nota

    AWS IoT Events gli allarmi richiedono i seguenti ruoli di servizio:

    • Un ruolo che AWS IoT Events presuppone di inviare i valori dello stato di allarme a. AWS IoT SiteWise

    • Un ruolo che AWS IoT Events presuppone l'invio di dati a Lambda. Questo ruolo è necessario solo se l'allarme invia notifiche.

    Nella sezione Autorizzazioni, procedi come segue:

    1. Per AWS IoT Events il ruolo, utilizza un ruolo esistente o crea un ruolo con le autorizzazioni richieste. Questo ruolo richiede l'iotsitewise:BatchPutAssetPropertyValueautorizzazione e una relazione di fiducia che consenta a iotevents.amazonaws.com di assumere il ruolo.

    2. Per il ruolo AWS IoT Events Lambda, usa un ruolo esistente o crea un ruolo con le autorizzazioni richieste. Questo ruolo richiede le sso-directory:DescribeUser autorizzazioni lambda:InvokeFunction e e una relazione di fiducia che iotevents.amazonaws.com consenta di assumere il ruolo.

  12. (Facoltativo) Nella sezione Impostazioni di notifica aggiuntive, procedi come segue:

    1. Per l'attributo Destinatario, si definisce un attributo il cui valore specifica il destinatario della notifica. È possibile scegliere gli utenti IAM dell'Identity Center come destinatari.

      È possibile creare un attributo o utilizzare un attributo esistente nel modello di asset.

      • Se scegli Crea un nuovo attributo destinatario, specifica il nome dell'attributo Destinatario e il valore predefinito del destinatario, facoltativo per l'attributo.

      • Se scegli Usa un attributo destinatario esistente, scegli l'attributo in Nome attributo destinatario. L'avviso utilizza il valore predefinito dell'attributo scelto.

      È possibile sovrascrivere il valore predefinito di ogni risorsa creata da questo modello di asset.

    2. Per l'attributo messaggio personalizzato, si definisce un attributo il cui valore specifica il messaggio personalizzato da inviare oltre al messaggio di modifica dello stato predefinito. Ad esempio, puoi specificare un messaggio che aiuti il tuo team a capire come rispondere a questo allarme.

      È possibile scegliere di creare un attributo o utilizzare un attributo esistente nel modello di asset.

      • Se scegli di creare un nuovo attributo personalizzato del messaggio, specifica il nome dell'attributo del messaggio personalizzato e il valore predefinito del messaggio personalizzato, facoltativo per l'attributo.

      • Se scegli Usa un attributo di messaggio personalizzato esistente, scegli l'attributo in Nome attributo messaggio personalizzato. L'avviso utilizza il valore predefinito dell'attributo scelto.

      È possibile sovrascrivere il valore predefinito di ogni risorsa creata da questo modello di asset.

    3. Per Gestire la funzione Lambda, effettuate una delle seguenti operazioni:

      • Per AWS IoT SiteWise creare una nuova funzione Lambda, scegli Crea una nuova lambda da un AWS modello gestito.

      • Per utilizzare una funzione Lambda esistente, scegli Usa una funzione Lambda esistente e scegli il nome della funzione.

      Per ulteriori informazioni, consulta Gestione delle notifiche di allarme nella Guida per gli AWS IoT Events sviluppatori.

  13. (Facoltativo) Nella sezione Imposta l'azione dello stato, procedi come segue:

    1. Scegliete Modifica azione.

    2. In Aggiungi azioni relative allo stato di allarme, aggiungi azioni, quindi scegli Salva.

      Puoi aggiungere fino a 10 azioni.

    AWS IoT Events può eseguire azioni quando l'allarme è attivo. È possibile definire azioni integrate per utilizzare un timer o impostare una variabile o inviare dati ad altre AWS risorse. Per ulteriori informazioni, consulta Azioni supportate nella Guida per AWS IoT Events gli sviluppatori.

  14. (Facoltativo) In Gestisci il modello di allarme in SiteWise Monitor: facoltativo, scegli Attivo o Inattivo.

    Utilizza questa opzione in modo da poter aggiornare il modello di allarme in SiteWise Monitorss. Per impostazione predefinita, questa opzione è abilitata.

  15. In Conferma flusso, scegli Attivo o Inattivo. Per ulteriori informazioni sul flusso di conferma, consultaStati di allarme.

  16. Scegli Aggiungi allarme.

    Nota

    La AWS IoT SiteWise console effettua più API richieste per aggiungere l'allarme al modello di asset. Quando scegli Aggiungi allarme, la console apre una finestra di dialogo che mostra lo stato di avanzamento di queste API richieste. Rimani su questa pagina fino a quando ogni API richiesta ha esito positivo o fino a quando una API richiesta fallisce. Se una richiesta fallisce, chiudi la finestra di dialogo, risolvi il problema e scegli Aggiungi allarme per riprovare.

Definisci un AWS IoT Events allarme (AWS IoT Events console)

È possibile utilizzare la AWS IoT Events console per definire un AWS IoT Events allarme su un modello di asset esistente. Per definire un AWS IoT Events allarme su un nuovo modello di asset, create il modello di asset, quindi completate questi passaggi. Per ulteriori informazioni, consulta Creazione di modelli di asset.

Importante

Ogni allarme richiede un attributo che specifica il valore di soglia con cui confrontare l'allarme. È necessario definire l'attributo del valore di soglia nel modello di asset prima di poter definire un allarme.

Si consideri un esempio in cui si desidera definire un allarme che rilevi quando una turbina eolica supera la velocità massima del vento di 50 mph. Prima di definire l'allarme, è necessario definire un attributo (Velocità massima del vento) con un valore predefinito di. 50

Per definire un AWS IoT Events allarme su un modello di asset
  1. Passare alla console AWS IoT Events.

  2. Nel pannello di navigazione, scegli Modelli di allarme.

  3. Scegli Crea modello di allarme.

  4. Immetti un nome per l’allarme.

  5. (Facoltativo) Inserisci una descrizione per il tuo allarme.

  6. Nella sezione Obiettivo dell'allarme, procedi come segue:

    1. Per le opzioni di Target, scegli la proprietàAWS IoT SiteWise dell'asset.

    2. Scegli il modello di asset per il quale desideri aggiungere l'allarme.

  7. Nella sezione Definizioni delle soglie, definisci quando viene rilevato l'allarme e la gravità dell'allarme. Esegui questa operazione:

    1. Seleziona la proprietà sulla quale viene rilevato l'allarme. Ogni volta che questa proprietà riceve un nuovo valore, AWS IoT SiteWise invia il valore AWS IoT Events a per valutare lo stato dell'allarme.

    2. Seleziona l'operatore da utilizzare per confrontare la proprietà con il valore di soglia. Seleziona una delle opzioni seguenti:

      • < meno di

      • <= minore o uguale

      • == uguale

      • ! = non uguale

      • >= maggiore o uguale

      • > maggiore di

    3. Per Valore, selezionate la proprietà dell'attributo da utilizzare come valore di soglia. AWS IoT Events confronta il valore della proprietà con il valore di questo attributo.

    4. Inserisci la gravità dell'allarme. Usa un numero comprensibile al tuo team per indicare la gravità dell'allarme.

  8. (Facoltativo) Nella sezione Impostazioni di notifica - opzionale, procedi come segue:

    1. Per Protocollo, scegli tra le seguenti opzioni:

      • Email e testo: l'allarme avvisa gli utenti di IAM Identity Center con un SMS messaggio e un messaggio e-mail.

      • E-mail: l'allarme avvisa gli utenti di IAM Identity Center con un messaggio e-mail.

      • Testo: l'allarme avvisa gli utenti di IAM Identity Center con un SMS messaggio.

    2. Per Mittente, scegli il mittente.

      Importante

      È necessario verificare l'indirizzo e-mail del mittente in Amazon Simple Email Service (AmazonSES). Per ulteriori informazioni, consulta la sezione Verifica degli indirizzi e-mail in AmazonSES, nella Amazon Simple Email Service Developer Guide.

    3. Scegli l'attributo nell'attributo Recipient (facoltativo). L'allarme utilizza il valore predefinito dell'attributo scelto.

    4. Scegli l'attributo in Attributo messaggio personalizzato - opzionale. L'avviso utilizza il valore predefinito dell'attributo scelto.

  9. Nella sezione Istanza, specifica lo stato predefinito per questo avviso. È possibile attivare o disattivare questo allarme per tutte le risorse create da questo modello di asset in un passaggio successivo.

  10. Nelle impostazioni avanzate, è possibile configurare le autorizzazioni, le impostazioni di notifica aggiuntive, le azioni relative allo stato di allarme, il modello di allarme in SiteWise Monitor e il flusso di conferma.

    Nota

    AWS IoT Events gli allarmi richiedono i seguenti ruoli di servizio:

    • Un ruolo che AWS IoT Events presuppone di inviare i valori dello stato di allarme a. AWS IoT SiteWise

    • Un ruolo che AWS IoT Events presuppone l'invio di dati a Lambda. Questo ruolo è necessario solo se l'allarme invia notifiche.

    1. Nella sezione Conferma flusso, scegli Abilitato o Disabilitato. Per ulteriori informazioni sul flusso di conferma, consultaStati di allarme.

    2. Nella sezione Autorizzazioni, procedi come segue:

      1. Per AWS IoT Events il ruolo, utilizza un ruolo esistente o crea un ruolo con le autorizzazioni richieste. Questo ruolo richiede l'iotsitewise:BatchPutAssetPropertyValueautorizzazione e una relazione di fiducia che consenta a iotevents.amazonaws.com di assumere il ruolo.

      2. Per il ruolo Lambda, usa un ruolo esistente o crea un ruolo con le autorizzazioni richieste. Questo ruolo richiede le sso-directory:DescribeUser autorizzazioni lambda:InvokeFunction e e una relazione di fiducia che iotevents.amazonaws.com consenta di assumere il ruolo.

    3. (Facoltativo) Nel riquadro Impostazioni di notifica aggiuntive, procedi come segue:

      1. Per Gestire la funzione Lambda, effettuate una delle seguenti operazioni:

        • Per AWS IoT Events creare una nuova funzione Lambda, scegli Crea una nuova funzione Lambda.

        • Per utilizzare una funzione Lambda esistente, scegli Usa una funzione Lambda esistente e scegli il nome della funzione.

        Per ulteriori informazioni, consulta Gestione delle notifiche di allarme nella Guida per gli AWS IoT Events sviluppatori.

    4. (Facoltativo) Nella sezione Imposta l'azione dello stato - opzionale, procedi come segue:

      1. In Azioni relative allo stato di allarme, aggiungi azioni, quindi scegli Salva.

        Puoi aggiungere fino a 10 azioni.

      AWS IoT Events può eseguire azioni quando l'allarme è attivo. È possibile definire azioni integrate per utilizzare un timer o impostare una variabile o inviare dati ad altre AWS risorse. Per ulteriori informazioni, consulta Azioni supportate nella Guida per AWS IoT Events gli sviluppatori.

  11. Scegli Create (Crea) .

    Nota

    La AWS IoT Events console effettua più API richieste per aggiungere l'allarme al modello di asset. Quando scegli Aggiungi allarme, la console apre una finestra di dialogo che mostra lo stato di avanzamento di queste API richieste. Rimani su questa pagina fino a quando ogni API richiesta ha esito positivo o fino a quando una API richiesta fallisce. Se una richiesta fallisce, chiudi la finestra di dialogo, risolvi il problema e scegli Aggiungi allarme per riprovare.

Definisci un AWS IoT Events allarme (AWS CLI)

È possibile utilizzare il AWS Command Line Interface (AWS CLI) per definire un AWS IoT Events allarme che monitora la proprietà di un asset. È possibile definire l'allarme su un modello di asset nuovo o esistente. Dopo aver definito l'allarme sul modello di asset, create un allarme AWS IoT Events e lo collegate al modello di asset. In questo processo, effettuate le seguenti operazioni:

Fase 1: Definizione di un allarme su un modello di asset

Aggiungi una definizione di allarme e le proprietà associate a un modello di asset nuovo o esistente.

Per definire un allarme su un modello di asset (CLI)
  1. Crea un file denominato asset-model-payload.json. Segui i passaggi in queste altre sezioni per aggiungere i dettagli del tuo modello di asset al file, ma non inviare la richiesta di creazione o aggiornamento del modello di asset. In questa sezione, aggiungi una definizione di allarme ai dettagli del modello di asset contenuti nel asset-model-payload.json file.

    Nota

    Il modello di asset deve definire almeno una proprietà dell'asset, inclusa la proprietà dell'asset da monitorare con l'allarme.

  2. Aggiungi un modello composito di allarme (assetModelCompositeModels) al modello di asset. Un modello composito di AWS IoT Events allarme specifica il IOT_EVENTS tipo e specifica una proprietà della fonte di allarme. Si aggiunge la proprietà della fonte di allarme dopo aver creato il modello di allarme in. AWS IoT Events

    Importante

    Il modello composito di allarme deve avere lo stesso nome del modello di AWS IoT Events allarme creato in seguito. I nomi dei modelli di allarme possono contenere solo caratteri alfanumerici. Specificate un nome alfanumerico univoco in modo da poter utilizzare lo stesso nome per il modello di allarme.

    { ... "assetModelCompositeModels": [ { "name": "BoilerTemperatureHighAlarm", "type": "AWS/ALARM", "properties": [ { "name": "AWS/ALARM_TYPE", "dataType": "STRING", "type": { "attribute": { "defaultValue": "IOT_EVENTS" } } }, { "name": "AWS/ALARM_STATE", "dataType": "STRUCT", "dataTypeSpec": "AWS/ALARM_STATE", "type": { "measurement": {} } } ] } ] }
  3. Aggiungi un attributo di soglia di allarme al modello di asset. Specificate il valore predefinito da utilizzare per questa soglia. È possibile sovrascrivere questo valore predefinito su ogni risorsa basata su questo modello.

    Nota

    L'attributo della soglia di allarme deve essere un INTEGER o unDOUBLE.

    { ... "assetModelProperties": [ ... { "name": "Temperature Max Threshold", "dataType": "DOUBLE", "type": { "attribute": { "defaultValue": "105.0" } } } ] }
  4. (Facoltativo) Aggiungi gli attributi di notifica degli allarmi al modello di asset. Questi attributi specificano il destinatario IAM dell'Identity Center e altri input AWS IoT Events utilizzati per inviare notifiche quando l'allarme cambia stato. È possibile sovrascrivere queste impostazioni predefinite su ogni risorsa basata su questo modello.

    Importante

    È possibile inviare notifiche di allarme agli utenti. AWS IAM Identity Center Per utilizzare questa funzionalità, è necessario abilitare IAM Identity Center. È possibile abilitare IAM Identity Center solo in una AWS regione alla volta. Ciò significa che è possibile definire le notifiche di allarme solo nella regione in cui è abilitato IAM Identity Center. Per ulteriori informazioni, consulta Nozioni di base nella Guida per l'utente di AWS IAM Identity Center .

    Esegui questa operazione:

    1. Aggiungi un attributo che specifichi l'ID dell'archivio di IAM identità di Identity Center. È possibile utilizzare l'ListInstancesAPIoperazione IAM Identity Center per elencare gli archivi di identità. Questa operazione funziona solo nella regione in cui è abilitato IAM Identity Center.

      aws sso-admin list-instances

      Quindi, specifica l'ID dell'archivio di identità (ad esempio,d-123EXAMPLE) come valore predefinito per l'attributo.

      { ... "assetModelProperties": [ ... { "name": "identityStoreId", "dataType": "STRING", "type": { "attribute": { "defaultValue": "d-123EXAMPLE" } } } ] }
    2. Aggiungi un attributo che specifica l'ID dell'utente dell'IAMIdentity Center che riceve le notifiche. Per definire un destinatario di notifica predefinito, aggiungi un ID utente di IAM Identity Center come valore predefinito. Effettua una delle seguenti operazioni per ottenere un ID utente di IAM Identity Center:

      1. Puoi utilizzare IAM Identity Center ListUsersAPIper ottenere l'ID di un utente di cui conosci il nome utente. Replace (Sostituisci) d-123EXAMPLE con l'ID del tuo archivio di identità e sostituisci Name con il nome utente dell'utente.

        aws identitystore list-users \ --identity-store-id d-123EXAMPLE \ --filters AttributePath=UserName,AttributeValue=Name
      2. Usa la console IAM Identity Center per sfogliare gli utenti e trovare un ID utente.

      Quindi, specifica l'ID utente (ad esempio123EXAMPLE-a1b2c3d4-5678-90ab-cdef-33333EXAMPLE) come valore predefinito per l'attributo o definisci l'attributo senza un valore predefinito.

      { ... "assetModelProperties": [ ... { "name": "userId", "dataType": "STRING", "type": { "attribute": { "defaultValue": "123EXAMPLE-a1b2c3d4-5678-90ab-cdef-33333EXAMPLE" } } } ] }
    3. (Facoltativo) Aggiungi un attributo che specifica l'ID mittente predefinito per le notifiche con messaggi SMS (di testo). L'ID mittente viene visualizzato come mittente dei messaggi inviati da Amazon Simple Notification Service SNS (Amazon). Per ulteriori informazioni, consulta la sezione Richiedere il mittente IDs per la SMS messaggistica con Amazon SNS nella Amazon Simple Notification Service Developer Guide.

      { ... "assetModelProperties": [ ... { "name": "senderId", "dataType": "STRING", "type": { "attribute": { "defaultValue": "MyFactory" } } } ] }
    4. (Facoltativo) Aggiungi un attributo che specifica l'indirizzo e-mail predefinito da utilizzare come indirizzo del mittente nelle notifiche e-mail.

      { ... "assetModelProperties": [ ... { "name": "fromAddress", "dataType": "STRING", "type": { "attribute": { "defaultValue": "my.factory@example.com" } } } ] }
    5. (Facoltativo) Aggiungi un attributo che specifica l'oggetto predefinito da utilizzare nelle notifiche e-mail.

      { ... "assetModelProperties": [ ... { "name": "emailSubject", "dataType": "STRING", "type": { "attribute": { "defaultValue": "[ALERT] High boiler temperature" } } } ] }
    6. (Facoltativo) Aggiungi un attributo che specifica un messaggio aggiuntivo da includere nelle notifiche. Per impostazione predefinita, i messaggi di notifica includono informazioni sull'allarme. È inoltre possibile includere un messaggio aggiuntivo che fornisca all'utente ulteriori informazioni.

      { ... "assetModelProperties": [ ... { "name": "additionalMessage", "dataType": "STRING", "type": { "attribute": { "defaultValue": "Turn off the power before you check the alarm." } } } ] }
  5. Crea il modello di asset o aggiorna il modello di asset esistente. Esegui una di queste operazioni:

    • Per creare il modello di asset, esegui il comando seguente.

      aws iotsitewise create-asset-model --cli-input-json file://asset-model-payload.json
    • Per aggiornare il modello di asset esistente, esegui il comando seguente. Replace (Sostituisci) asset-model-id con l'ID del modello di asset.

      aws iotsitewise update-asset-model \ --asset-model-id asset-model-id \ --cli-input-json file://asset-model-payload.json

    Dopo aver eseguito il comando, assetModelId annotatelo nella risposta.

Il seguente modello di asset rappresenta una caldaia che riporta i dati sulla temperatura. Questo modello di asset definisce un allarme che rileva il surriscaldamento della caldaia.

{ "assetModelName": "Boiler Model", "assetModelDescription": "Represents a boiler.", "assetModelProperties": [ { "name": "Temperature", "dataType": "DOUBLE", "unit": "C", "type": { "measurement": {} } }, { "name": "Temperature Max Threshold", "dataType": "DOUBLE", "type": { "attribute": { "defaultValue": "105.0" } } }, { "name": "identityStoreId", "dataType": "STRING", "type": { "attribute": { "defaultValue": "d-123EXAMPLE" } } }, { "name": "userId", "dataType": "STRING", "type": { "attribute": { "defaultValue": "123EXAMPLE-a1b2c3d4-5678-90ab-cdef-33333EXAMPLE" } } }, { "name": "senderId", "dataType": "STRING", "type": { "attribute": { "defaultValue": "MyFactory" } } }, { "name": "fromAddress", "dataType": "STRING", "type": { "attribute": { "defaultValue": "my.factory@example.com" } } }, { "name": "emailSubject", "dataType": "STRING", "type": { "attribute": { "defaultValue": "[ALERT] High boiler temperature" } } }, { "name": "additionalMessage", "dataType": "STRING", "type": { "attribute": { "defaultValue": "Turn off the power before you check the alarm." } } } ], "assetModelHierarchies": [ ], "assetModelCompositeModels": [ { "name": "BoilerTemperatureHighAlarm", "type": "AWS/ALARM", "properties": [ { "name": "AWS/ALARM_TYPE", "dataType": "STRING", "type": { "attribute": { "defaultValue": "IOT_EVENTS" } } }, { "name": "AWS/ALARM_STATE", "dataType": "STRUCT", "dataTypeSpec": "AWS/ALARM_STATE", "type": { "measurement": {} } } ] } ] }

Fase 2: Definizione di un modello di allarme AWS IoT Events

Crea il modello di allarme in AWS IoT Events. In AWS IoT Events, si utilizzano le espressioni per specificare i valori nei modelli di allarme. È possibile utilizzare espressioni per specificare valori AWS IoT SiteWise da valutare e utilizzare come input per l'allarme. Quando AWS IoT SiteWise invia i valori delle proprietà dell'asset al modello di allarme, AWS IoT Events valuta l'espressione per ottenere il valore della proprietà o l'ID della risorsa. È possibile utilizzare le seguenti espressioni nel modello di allarme:

  • Valori delle proprietà degli asset

    Per ottenere il valore di una proprietà dell'asset, utilizzate la seguente espressione. Replace (Sostituisci) assetModelId con l'ID del modello di asset e sostituisci propertyId con l'ID della proprietà.

    $sitewise.assetModel.`assetModelId`.`propertyId`.propertyValue.value
  • Risorsa IDs

    Per ottenere l'ID della risorsa, utilizzate la seguente espressione. Replace (Sostituisci) assetModelId con l'ID del modello di asset e sostituisci propertyId con l'ID della proprietà.

    $sitewise.assetModel.`assetModelId`.`propertyId`.assetId
Nota

Quando si crea il modello di allarme, è possibile definire valori letterali anziché espressioni che restituiscono AWS IoT SiteWise valori. In questo modo è possibile ridurre il numero di attributi definiti nel modello di asset. Tuttavia, se definisci un valore come valore letterale, non puoi personalizzare quel valore sugli asset in base al modello di asset. Inoltre, gli AWS IoT SiteWise Monitor utenti non possono personalizzare l'allarme, poiché possono configurare le impostazioni di allarme solo sugli asset.

Per creare un modello di AWS IoT Events allarme (CLI)
  1. Quando si crea il modello di allarme in AWS IoT Events, è necessario specificare l'ID di ogni proprietà utilizzata dall'allarme, che include quanto segue:

    • La proprietà dello stato di allarme nel modello di asset composito

    • La proprietà monitorata dall'allarme

    • L'attributo threshold

    • (Facoltativo) L'attributo IAM Identity Store ID di Identity Center

    • (Facoltativo) L'attributo ID utente di IAM Identity Center

    • (Facoltativo) L'attributo ID SMS mittente

    • (Facoltativo) L'attributo email proveniente dall'indirizzo

    • (Facoltativo) L'attributo oggetto dell'email

    • (Facoltativo) L'attributo aggiuntivo del messaggio

    Eseguite il comando seguente per recuperare queste proprietà sul modello IDs di asset. Replace (Sostituisci) asset-model-id con l'ID del modello di asset del passaggio precedente.

    aws iotsitewise describe-asset-model --asset-model-id asset-model-id

    L'operazione restituisce una risposta contenente i dettagli del modello di asset. Annota l'ID di ogni proprietà utilizzata dall'allarme. Li usi IDs quando crei il modello di AWS IoT Events allarme nel passaggio successivo.

  2. Crea il modello di allarme in AWS IoT Events. Esegui questa operazione:

    1. Crea un file denominato alarm-model-payload.json.

    2. Copia il seguente JSON oggetto nel file.

    3. Inserisci un nome (alarmModelName), una descrizione (alarmModelDescription) e una gravità (severity) per l'allarme. Per quanto riguarda la gravità, specificate un numero intero che rifletta i livelli di gravità della vostra azienda.

      Importante

      Il modello di allarme deve avere lo stesso nome del modello composito di allarmi definito in precedenza nel modello di asset.

      I nomi dei modelli di allarme possono contenere solo caratteri alfanumerici.

      { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3 }
    4. Aggiungi la regola di confronto (alarmRule) all'allarme. Questa regola definisce la proprietà da monitorare (inputProperty), il valore di soglia da confrontare (threshold) e l'operatore di confronto da utilizzare (comparisonOperator).

      • Replace (Sostituisci) assetModelId con l'ID del modello di asset.

      • Replace (Sostituisci) alarmPropertyId con l'ID della proprietà monitorata dall'allarme.

      • Replace (Sostituisci) thresholdAttributeId con l'ID della proprietà dell'attributo di soglia.

      • Replace (Sostituisci) GREATER con l'operatore da utilizzare per confrontare i valori delle proprietà con la soglia. Seleziona una delle opzioni seguenti:

        • LESS

        • LESS_OR_EQUAL

        • EQUAL

        • NOT_EQUAL

        • GREATER_OR_EQUAL

        • GREATER

      { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3, "alarmRule": { "simpleRule": { "inputProperty": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.propertyValue.value", "comparisonOperator": "GREATER", "threshold": "$sitewise.assetModel.`assetModelId`.`thresholdAttributeId`.propertyValue.value" } } }
    5. Aggiungi un'azione (alarmEventActions) per inviare lo stato di allarme al AWS IoT SiteWise momento in cui l'allarme cambia stato.

      Nota

      Per la configurazione avanzata, è possibile definire azioni aggiuntive da eseguire quando l'allarme cambia stato. Ad esempio, è possibile richiamare una AWS Lambda funzione o pubblicare su un MQTT argomento. Per ulteriori informazioni, consulta Lavorare con altri AWS servizi nella Guida per gli AWS IoT Events sviluppatori.

      • Replace (Sostituisci) assetModelId con l'ID del modello di asset.

      • Replace (Sostituisci) alarmPropertyId con l'ID della proprietà monitorata dall'allarme.

      • Replace (Sostituisci) alarmStatePropertyId con l'ID della proprietà dello stato di allarme nel modello composito di allarme.

      { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3, "alarmRule": { "simpleRule": { "inputProperty": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.propertyValue.value", "comparisonOperator": "GREATER", "threshold": "$sitewise.assetModel.`assetModelId`.`thresholdAttributeId`.propertyValue.value" } }, "alarmEventActions": { "alarmActions": [ { "iotSiteWise": { "assetId": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.assetId", "propertyId": "'alarmStatePropertyId'" } } ] } }
    6. (Facoltativo) Configura le impostazioni di notifica degli allarmi. L'azione di notifica degli allarmi utilizza una funzione Lambda nel tuo account per inviare notifiche di allarme. Per ulteriori informazioni, consulta Requisiti per le notifiche di allarme. Nelle impostazioni di notifica degli allarmi, è possibile configurare SMS notifiche e-mail da inviare agli utenti di IAM Identity Center. Esegui questa operazione:

      1. Aggiungi la configurazione della notifica di allarme (alarmNotification) al payload inalarm-model-payload.json.

        • Replace (Sostituisci) alarmNotificationFunctionArn con la ARN funzione Lambda che gestisce le notifiche di allarme.

        { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3, "alarmRule": { "simpleRule": { "inputProperty": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.propertyValue.value", "comparisonOperator": "GREATER", "threshold": "$sitewise.assetModel.`assetModelId`.`thresholdAttributeId`.propertyValue.value" } }, "alarmEventActions": { "alarmActions": [ { "iotSiteWise": { "assetId": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.assetId", "propertyId": "'alarmStatePropertyId'" } } ] }, "alarmNotification": { "notificationActions": [ { "action": { "lambdaAction": { "functionArn": "alarmNotificationFunctionArn" } } } ] } }
      2. (Facoltativo) Configura le SMS notifiche (smsConfigurations) da inviare a un utente di IAM Identity Center quando l'allarme cambia stato.

        • Replace (Sostituisci) identityStoreIdAttributeId con l'ID dell'attributo che contiene l'ID dell'archivio di IAM identità di Identity Center.

        • Replace (Sostituisci) userIdAttributeId con l'ID dell'attributo che contiene l'ID dell'utente dell'IAMIdentity Center.

        • Replace (Sostituisci) senderIdAttributeId con l'ID dell'attributo che contiene l'ID SNS mittente Amazon o rimuovilo senderId dal payload.

        • Replace (Sostituisci) additionalMessageAttributeId con l'ID dell'attributo che contiene il messaggio aggiuntivo o rimuovilo additionalMessage dal payload.

        { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3, "alarmRule": { "simpleRule": { "inputProperty": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.propertyValue.value", "comparisonOperator": "GREATER", "threshold": "$sitewise.assetModel.`assetModelId`.`thresholdAttributeId`.propertyValue.value" } }, "alarmEventActions": { "alarmActions": [ { "iotSiteWise": { "assetId": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.assetId", "propertyId": "'alarmStatePropertyId'" } } ] }, "alarmNotification": { "notificationActions": [ { "action": { "lambdaAction": { "functionArn": "alarmNotificationFunctionArn" } }, "smsConfigurations": [ { "recipients": [ { "ssoIdentity": { "identityStoreId": "$sitewise.assetModel.`assetModelId`.`identityStoreIdAttributeId`.propertyValue.value", "userId": "$sitewise.assetModel.`assetModelId`.`userIdAttributeId`.propertyValue.value" } } ], "senderId": "$sitewise.assetModel.`assetModelId`.`senderIdAttributeId`.propertyValue.value", "additionalMessage": "$sitewise.assetModel.`assetModelId`.`additionalMessageAttributeId`.propertyValue.value" } ] } ] } }
      3. (Facoltativo) Configura le notifiche e-mail (emailConfigurations) da inviare a un utente dell'IAMIdentity Center quando l'allarme cambia stato.

        • Replace (Sostituisci) identityStoreIdAttributeId con l'ID della proprietà dell'IAMattributo Identity Center identity store ID.

        • Replace (Sostituisci) userIdAttributeId con l'ID della proprietà dell'attributo ID utente di IAM Identity Center.

        • Replace (Sostituisci) fromAddressAttributeId con l'ID della proprietà dell'attributo dell'indirizzo «from» o rimuovi from dal payload.

        • Replace (Sostituisci) emailSubjectAttributeId con l'ID della proprietà dell'attributo dell'oggetto dell'email o rimuovi subject dal payload.

        • Replace (Sostituisci) additionalMessageAttributeId con l'ID della proprietà dell'attributo del messaggio aggiuntivo o rimuovi additionalMessage dal payload.

        { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3, "alarmRule": { "simpleRule": { "inputProperty": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.propertyValue.value", "comparisonOperator": "GREATER", "threshold": "$sitewise.assetModel.`assetModelId`.`thresholdAttributeId`.propertyValue.value" } }, "alarmEventActions": { "alarmActions": [ { "iotSiteWise": { "assetId": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.assetId", "propertyId": "'alarmStatePropertyId'" } } ] }, "alarmNotification": { "notificationActions": [ { "action": { "lambdaAction": { "functionArn": "alarmNotificationFunctionArn" } }, "smsConfigurations": [ { "recipients": [ { "ssoIdentity": { "identityStoreId": "$sitewise.assetModel.`assetModelId`.`identityStoreIdAttributeId`.propertyValue.value", "userId": "$sitewise.assetModel.`assetModelId`.`userIdAttributeId`.propertyValue.value" } } ], "senderId": "$sitewise.assetModel.`assetModelId`.`senderIdAttributeId`.propertyValue.value", "additionalMessage": "$sitewise.assetModel.`assetModelId`.`additionalMessageAttributeId`.propertyValue.value" } ], "emailConfigurations": [ { "from": "$sitewise.assetModel.`assetModelId`.`fromAddressAttributeId`.propertyValue.value", "recipients": { "to": [ { "ssoIdentity": { "identityStoreId": "$sitewise.assetModel.`assetModelId`.`identityStoreIdAttributeId`.propertyValue.value", "userId": "$sitewise.assetModel.`assetModelId`.`userIdAttributeId`.propertyValue.value" } } ] }, "content": { "subject": "$sitewise.assetModel.`assetModelId`.`emailSubjectAttributeId`.propertyValue.value", "additionalMessage": "$sitewise.assetModel.`assetModelId`.`additionalMessageAttributeId`.propertyValue.value" } } ] } ] } }
    7. (Facoltativo) Aggiungi le funzionalità di allarme (alarmCapabilities) al payload in. alarm-model-payload.json In questo oggetto, è possibile specificare se il flusso di conferma è abilitato e lo stato di abilitazione predefinito per gli asset in base al modello di asset. Per ulteriori informazioni sul flusso di conferma, consultaStati di allarme.

      { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3, "alarmRule": { "simpleRule": { "inputProperty": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.propertyValue.value", "comparisonOperator": "GREATER", "threshold": "$sitewise.assetModel.`assetModelId`.`thresholdAttributeId`.propertyValue.value" } }, "alarmEventActions": { "alarmActions": [ { "iotSiteWise": { "assetId": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.assetId", "propertyId": "'alarmStatePropertyId'" } } ] }, "alarmNotification": { "notificationActions": [ { "action": { "lambdaAction": { "functionArn": "alarmNotificationFunctionArn" } }, "smsConfigurations": [ { "recipients": [ { "ssoIdentity": { "identityStoreId": "$sitewise.assetModel.`assetModelId`.`identityStoreIdAttributeId`.propertyValue.value", "userId": "$sitewise.assetModel.`assetModelId`.`userIdAttributeId`.propertyValue.value" } } ], "senderId": "$sitewise.assetModel.`assetModelId`.`senderIdAttributeId`.propertyValue.value", "additionalMessage": "$sitewise.assetModel.`assetModelId`.`additionalMessageAttributeId`.propertyValue.value" } ], "emailConfigurations": [ { "from": "$sitewise.assetModel.`assetModelId`.`fromAddressAttributeId`.propertyValue.value", "recipients": { "to": [ { "ssoIdentity": { "identityStoreId": "$sitewise.assetModel.`assetModelId`.`identityStoreIdAttributeId`.propertyValue.value", "userId": "$sitewise.assetModel.`assetModelId`.`userIdAttributeId`.propertyValue.value" } } ] }, "content": { "subject": "$sitewise.assetModel.`assetModelId`.`emailSubjectAttributeId`.propertyValue.value", "additionalMessage": "$sitewise.assetModel.`assetModelId`.`additionalMessageAttributeId`.propertyValue.value" } } ] } ] }, "alarmCapabilities": { "initializationConfiguration": { "disabledOnInitialization": false }, "acknowledgeFlow": { "enabled": true } } }
    8. Aggiungi il ruolo di IAM servizio (roleArn) a cui AWS IoT Events puoi inviare i dati AWS IoT SiteWise. Questo ruolo richiede l'iotsitewise:BatchPutAssetPropertyValueautorizzazione e una relazione di fiducia che iotevents.amazonaws.com consenta di assumere il ruolo. Per inviare notifiche, questo ruolo richiede anche le sso-directory:DescribeUser autorizzazioni lambda:InvokeFunction e. Per ulteriori informazioni, consulta i ruoli del servizio di allarme nella Guida per gli AWS IoT Events sviluppatori.

      • Sostituiscili roleArn ARN con il ruolo che AWS IoT Events puoi assumere per eseguire queste azioni.

      { "alarmModelName": "BoilerTemperatureHighAlarm", "alarmModelDescription": "Detects when the boiler temperature is high.", "severity": 3, "alarmRule": { "simpleRule": { "inputProperty": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.propertyValue.value", "comparisonOperator": "GREATER", "threshold": "$sitewise.assetModel.`assetModelId`.`thresholdAttributeId`.propertyValue.value" } }, "alarmEventActions": { "alarmActions": [ { "iotSiteWise": { "assetId": "$sitewise.assetModel.`assetModelId`.`alarmPropertyId`.assetId", "propertyId": "'alarmStatePropertyId'" } } ] }, "alarmNotification": { "notificationActions": [ { "action": { "lambdaAction": { "functionArn": "alarmNotificationFunctionArn" } }, "smsConfigurations": [ { "recipients": [ { "ssoIdentity": { "identityStoreId": "$sitewise.assetModel.`assetModelId`.`identityStoreIdAttributeId`.propertyValue.value", "userId": "$sitewise.assetModel.`assetModelId`.`userIdAttributeId`.propertyValue.value" } } ], "senderId": "$sitewise.assetModel.`assetModelId`.`senderIdAttributeId`.propertyValue.value", "additionalMessage": "$sitewise.assetModel.`assetModelId`.`additionalMessageAttributeId`.propertyValue.value" } ], "emailConfigurations": [ { "from": "$sitewise.assetModel.`assetModelId`.`fromAddressAttributeId`.propertyValue.value", "recipients": { "to": [ { "ssoIdentity": { "identityStoreId": "$sitewise.assetModel.`assetModelId`.`identityStoreIdAttributeId`.propertyValue.value", "userId": "$sitewise.assetModel.`assetModelId`.`userIdAttributeId`.propertyValue.value" } } ] }, "content": { "subject": "$sitewise.assetModel.`assetModelId`.`emailSubjectAttributeId`.propertyValue.value", "additionalMessage": "$sitewise.assetModel.`assetModelId`.`additionalMessageAttributeId`.propertyValue.value" } } ] } ] }, "alarmCapabilities": { "initializationConfiguration": { "disabledOnInitialization": false }, "acknowledgeFlow": { "enabled": false } }, "roleArn": "arn:aws:iam::123456789012:role/MyIoTEventsAlarmRole" }
    9. Esegui il comando seguente per creare il modello di AWS IoT Events allarme dal payload inalarm-model-payload.json.

      aws iotevents create-alarm-model --cli-input-json file://alarm-model-payload.json
    10. L'operazione restituisce una risposta che include il modello ARN di allarme,alarmModelArn. Copialo ARN per impostare la definizione di allarme sul tuo modello di asset nel passaggio successivo.

Passaggio 3: Abilita il flusso di dati tra AWS IoT SiteWise e AWS IoT Events

Dopo aver creato le risorse richieste in AWS IoT SiteWise e AWS IoT Events, puoi abilitare il flusso di dati tra le risorse per attivare l'allarme. In questa sezione, aggiorni la definizione di allarme nel modello di asset per utilizzare il modello di allarme creato nel passaggio precedente.

Per abilitare il flusso di dati tra AWS IoT SiteWise e AWS IoT Events (CLI)
  • Imposta il modello di allarme come fonte dell'allarme nel modello di asset. Esegui questa operazione:

    1. Esegui il comando seguente per recuperare la definizione del modello di asset esistente. Replace (Sostituisci) asset-model-id con l'ID del modello di asset.

      aws iotsitewise describe-asset-model --asset-model-id asset-model-id

      L'operazione restituisce una risposta contenente i dettagli del modello di asset.

    2. Crea un file denominato update-asset-model-payload.json e copia la risposta del comando precedente nel file.

    3. Rimuovi le seguenti coppie chiave-valore dal update-asset-model-payload.json file:

      • assetModelId

      • assetModelArn

      • assetModelCreationDate

      • assetModelLastUpdateDate

      • assetModelStatus

    4. Aggiungi la proprietà della fonte dell'allarme (AWS/ALARM_SOURCE) al modello composito di allarme definito in precedenza. Replace (Sostituisci) alarmModelArn con il modello ARN di allarme, che imposta il valore della proprietà della fonte di allarme.

      { ... "assetModelCompositeModels": [ ... { "name": "BoilerTemperatureHighAlarm", "type": "AWS/ALARM", "properties": [ { "id": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "name": "AWS/ALARM_TYPE", "dataType": "STRING", "type": { "attribute": { "defaultValue": "IOT_EVENTS" } } }, { "id": "a1b2c3d4-5678-90ab-cdef-22222EXAMPLE", "name": "AWS/ALARM_STATE", "dataType": "STRUCT", "dataTypeSpec": "AWS/ALARM_STATE", "type": { "measurement": {} } }, { "name": "AWS/ALARM_SOURCE", "dataType": "STRING", "type": { "attribute": { "defaultValue": "alarmModelArn" } } } ] } ] }
    5. Eseguite il comando seguente per aggiornare il modello di asset con la definizione memorizzata nel update-asset-model-payload.json file. Replace (Sostituisci) asset-model-id con l'ID del modello di asset.

      aws iotsitewise update-asset-model \ --asset-model-id asset-model-id \ --cli-input-json file://update-asset-model-payload.json

Il tuo modello di asset ora definisce un allarme che rileva. AWS IoT Events L'allarme monitora la proprietà di destinazione in tutti gli asset in base a questo modello di asset. È possibile configurare l'allarme su ogni risorsa per personalizzare proprietà come la soglia o il destinatario IAM dell'Identity Center per ogni risorsa. Per ulteriori informazioni, consulta Configura gli allarmi sugli asset.