Ottenere le notifiche di distribuzione - AWS IoT Greengrass

AWS IoT Greengrass Version 1 è entrato nella fase di estensione della vita utile il 30 giugno 2023. Per ulteriori informazioni, consulta la politica AWS IoT Greengrass V1 di manutenzione. Dopo questa data, AWS IoT Greengrass V1 non rilascerà aggiornamenti che forniscano funzionalità, miglioramenti, correzioni di bug o patch di sicurezza. I dispositivi che funzionano AWS IoT Greengrass V1 non subiranno interruzioni e continueranno a funzionare e a connettersi al cloud. Ti consigliamo vivamente di eseguire la migrazione a AWS IoT Greengrass Version 2, che aggiunge nuove importanti funzionalità e supporto per piattaforme aggiuntive.

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

Ottenere le notifiche di distribuzione

Amazon EventBridge Le regole degli eventi forniscono notifiche sulle modifiche dello stato per le distribuzioni del gruppo Greengrass. EventBridge offre uno stream quasi in tempo reale degli eventi di sistema che descrivono le modifiche apportateAWSrisorse AWS.AWS IoT Greengrassinvia questi eventi a EventBridge su unalmeno una voltabase. Ciò significa cheAWS IoT Greengrasspotrebbe inviare più copie di un determinato evento per garantire la consegna. Inoltre, i listener di eventi potrebbero non ricevere gli eventi nell'ordine in cui si sono verificati.

Nota

Amazon EventBridge è un servizio bus di eventi che consente di connettere le applicazioni ai dati provenienti da un'ampia gamma di origini, ad esempioDispositivi di Core Greengrasse le notifiche di distribuzione. Per ulteriori informazioni, consultaChe cos'è Amazon? EventBridge?nellaAmazon EventBridge Guida per l’utente di.

AWS IoT Greengrass emette un evento quando le distribuzioni di gruppo cambiano lo stato. Puoi creare una EventBridge regola che viene eseguita per tutte le transizioni di stato o le transizioni agli stati specificati. Quando una distribuzione entra in uno stato che attiva una regola, EventBridge invoca le operazioni di destinazione definite nella regola. In questo modo è possibile inviare notifiche, acquisire informazioni sugli eventi, intraprendere azioni correttive o avviare altri eventi in risposta a una modifica dello stato. Ad esempio, è possibile creare regole per i seguenti casi d'uso:

  • Avvio di operazioni post-distribuzione, ad esempio il download di asset e l'invio di notifiche al personale

  • Inviare notifiche in caso di distribuzione riuscita o non riuscita.

  • Pubblicare parametri personalizzati sugli eventi di distribuzione.

AWS IoT Greengrass emette un evento quando una distribuzione entra nei seguenti stati: Building, InProgress, Success e Failure.

Nota

Il monitoraggio dello stato di un'operazione di distribuzione di massa non è attualmente supportato. Tuttavia, AWS IoT Greengrass emette eventi di modifica dello stato per singole distribuzioni di gruppi che fanno parte di una distribuzione di massa.

Evento di modifica dello stato della distribuzione del gruppo

L'evento per una modifica dello stato della distribuzione utilizza il formato seguente:

{ "version":"0", "id":" cd4d811e-ab12-322b-8255-EXAMPLEb1bc8", "detail-type":"Greengrass Deployment Status Change", "source":"aws.greengrass", "account":"123456789012", "time":"2018-03-22T00:38:11Z", "region":"us-west-2", "resources":[], "detail":{ "group-id": "284dcd4e-24bc-4c8c-a770-EXAMPLEf03b8", "deployment-id": "4f38f1a7-3dd0-42a1-af48-EXAMPLE09681", "deployment-type": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment", "status": "Building|InProgress|Success|Failure" } }

È possibile creare regole che si applicano a uno o più gruppi. È possibile filtrare le regole in base a uno o più dei seguenti tipi di distribuzione e stati di distribuzione:

Tipi di distribuzione
  • NewDeployment. La prima distribuzione di una versione del gruppo.

  • ReDeployment. Una ridistribuzione di una versione di gruppo.

  • ResetDeployment. Elimina le informazioni di distribuzione archiviate inCloud AWSe sulAWS IoT Greengrasscore. Per ulteriori informazioni, consulta la pagina Reimpostazione delle distribuzioni .

  • ForceResetDeployment. Elimina le informazioni di distribuzione archiviate inCloud AWSe segnala il successo senza attendere che il core risponda. Inoltre, elimina le informazioni di distribuzione archiviate sul core se il core è connesso o quando si connette in seguito.

Stati della distribuzione
  • Building. Il servizio cloud AWS IoT Greengrass convalida la configurazione del gruppo e costruisce artefatti di distribuzione.

  • InProgress. La distribuzione è in corso sullaAWS IoT Greengrasscore.

  • Success. La distribuzione è stata completata correttamente.

  • Failure. La mia distribuzione non è riuscita

È possibile che gli eventi vengano duplicati o non funzionino. Per determinare l'ordine degli eventi, utilizza la proprietà time.

Nota

AWS IoT Greengrass non utilizza la proprietà resources, quindi è sempre vuota.

Prerequisiti per creare EventBridge regole

Prima di creare una EventBridge regola perAWS IoT Greengrass, eseguire le seguenti operazioni:

  • Acquisire familiarità con eventi, regole e destinazioni di EventBridge.

  • Creare e configurare i target richiamati dal EventBridge regole. Le regole possono richiamare molti tipi di target, tra cui:

    • Amazon Simple Notification Service (Amazon SNS)

    • Funzioni AWS Lambda

    • Flusso di video Amazon Kinesis

    • Code di Amazon Simple Queue Service (Amazon SQS)

Per ulteriori informazioni, consultaChe cos'è Amazon? EventBridge?eNozioni di base su Amazon EventBridgenellaAmazon EventBridge Guida per l’utente di.

Configurazione delle notifiche di distribuzione (console)

Utilizza la procedura seguente per creare una EventBridge regola che pubblichi un argomento Amazon SNS quando lo stato della distribuzione cambia per un gruppo. Ciò consente a server Web, indirizzi e-mail e altri sottoscrittori di argomenti di rispondere all'evento. Per ulteriori informazioni, consultaCreazione di una EventBridge regola che si attiva su un evento da unAWSrisorsanellaAmazon EventBridge Guida per l’utente di.

  1. Apertura dellaAmazon EventBridgeplancia.

  2. Nel pannello di navigazione, scegliere Rules (Regole).

  3. Scegli Create rule (Crea regola).

  4. Inserire un nome e una descrizione per la regola.

    Una regola non può avere lo stesso nome di un'altra regola nella stessa regione e sullo stesso bus di eventi.

  5. Per Select event bus (Seleziona bus di eventi), scegli il bus di eventi che desideri associare a questa regola. Se desideri che questa regola venga attivata su eventi corrispondenti provenienti dal tuo account, selezionaAWSBus di eventi predefiniti. Quando un servizio AWS nell'account emette un evento, passa sempre al bus di eventi predefinito dell'account.

  6. Per Rule type (Tipo di regola), scegli Rule with an event pattern (Regola con un modello di eventi).

  7. Seleziona Next (Successivo).

  8. Per Event source (Origine evento), scegli AWS services (Servizi ).

  9. PerModello di eventi, scegliAWSservizi.

  10. PerAWSservizio, scegliere Greengrass.

  11. Per Tipo evento, scegliere Modifica stato distribuzione Greengrass.

    Nota

    LaAWSChiamata API tramite CloudTrailil tipo di evento è basato suAWS IoT GreengrassIntegrazione di conAWS CloudTrail. È possibile utilizzare questa opzione per creare regole avviate da chiamate di lettura o scrittura allaAWS IoT GreengrassAPI. Per ulteriori informazioni, consulta la pagina Registrazione delle chiamate API AWS IoT Greengrass con AWS CloudTrail .

  12. Scegliere gli stati di distribuzione che attivano una notifica.

    • Per ricevere notifiche per tutti gli eventi di modifica dello stato, scegliere Qualsiasi stato.

    • Per ricevere notifiche solo per alcuni eventi di modifica dello stato, scegliere Stato specifico, e quindi scegliere gli stati di destinazione.

  13. Scegliere i tipi di distribuzione che attivano una notifica.

    • Per ricevere notifiche per tutti i tipi di distribuzione, scegliere Qualsiasi stato.

    • Per ricevere notifiche solo per alcuni tipi di distribuzione, scegliere Stato specifico e quindi scegliere i tipi di distribuzione di destinazione.

  14. Seleziona Next (Successivo).

  15. Per Target types (Tipi di destinazione), scegli AWS service (Servizio ).

  16. PerSelezionare una destinazione, configura la destinazione. In questo esempio viene utilizzato un argomento Amazon SNS, ma è possibile configurare altri tipi di destinazione per l'invio di notifiche.

    1. In Target (Destinazione), scegli SNS topic (Argomento SNS).

    2. Per Argomento, scegli l'argomento di destinazione.

    3. Seleziona Next (Successivo).

  17. SottoTag, definire i tag per la regola o lasciare i campi vuoti.

  18. Seleziona Next (Successivo).

  19. Rivedi i dettagli della regola e scegli Create rule (Crea regola).

Configurazione delle notifiche di distribuzione (CLI)

Utilizza la procedura seguente per creare una EventBridge regola che pubblichi un argomento Amazon SNS quando lo stato della distribuzione cambia per un gruppo. Ciò consente a server Web, indirizzi e-mail e altri sottoscrittori di argomenti di rispondere all'evento.

  1. Crea la regola.

    • Replace (Sostituisci)group-idcon l'ID del tuoAWS IoT Greengrassgruppo.

    aws events put-rule \ --name TestRule \ --event-pattern "{\"source\": [\"aws.greengrass\"], \"detail\": {\"group-id\": [\"group-id\"]}}"

    Le proprietà omesse dal modello vengono ignorate.

  2. Aggiungi l'argomento come destinazione della regola.

    • Replace (Sostituisci)Topic-arncon l'ARN del tuo argomento Amazon SNS.

    aws events put-targets \ --rule TestRule \ --targets "Id"="1","Arn"="topic-arn"
    Nota

    Per consentire ad Amazon EventBridge per chiamare l'argomento di destinazione, è necessario aggiungere una policy basata sulle risorse all'argomento. Per ulteriori informazioni, consultaAutorizzazioni Amazon SNSnellaAmazon EventBridge Guida per l’utente di.

Per ulteriori informazioni, consultaEventi e modelli di eventi in EventBridgenellaAmazon EventBridge Guida per l’utente di.

Configurazione delle notifiche di distribuzione (AWS CloudFormation)

UtilizzaAWS CloudFormationmodelli da creare EventBridge regole che inviano notifiche sulle modifiche dello stato per le distribuzioni del gruppo Greengrass. Per ulteriori informazioni, consultaAmazon EventBridge riferimento ai tipi di risorsenellaAWS CloudFormationGuida per l’utente di.

Consultare anche