EventBridge esempi utilizzando AWS CLI - AWS Command Line Interface

Questa documentazione è valida AWS CLI solo per la versione 1. Per la documentazione relativa alla versione 2 di AWS CLI, consulta la Guida per l'utente della versione 2.

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

EventBridge esempi utilizzando AWS CLI

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with EventBridge.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Mentre le azioni mostrano come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel loro contesto negli scenari correlati.

Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

Il seguente esempio di codice mostra come utilizzaredelete-rule.

AWS CLI

Per eliminare una regola CloudWatch Events

Questo esempio elimina la regola denominataEC2InstanceStateChanges:

aws events delete-rule --name "EC2InstanceStateChanges"
  • Per API i dettagli, vedere DeleteRulein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredescribe-rule.

AWS CLI

Per visualizzare informazioni su una regola CloudWatch Events

Questo esempio visualizza informazioni sulla regola denominata DailyLambdaFunction:

aws events describe-rule --name "DailyLambdaFunction"
  • Per API i dettagli, vedere DescribeRulein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredisable-rule.

AWS CLI

Per disabilitare una regola CloudWatch Events

Questo esempio disabilita la regola denominata DailyLambdaFunction. La regola non viene eliminata:

aws events disable-rule --name "DailyLambdaFunction"
  • Per API i dettagli, vedere DisableRulein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareenable-rule.

AWS CLI

Per abilitare una regola CloudWatch Events

Questo esempio abilita la regola denominata DailyLambdaFunction, che era stata precedentemente disabilitata:

aws events enable-rule --name "DailyLambdaFunction"
  • Per API i dettagli, vedere EnableRulein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-rule-names-by-target.

AWS CLI

Per visualizzare tutte le regole che hanno un obiettivo specificato

Questo esempio visualizza tutte le regole che hanno come destinazione la funzione Lambda denominata MyFunctionName "":

aws events list-rule-names-by-target --target-arn "arn:aws:lambda:us-east-1:123456789012:function:MyFunctionName"

Il seguente esempio di codice mostra come utilizzarelist-rules.

AWS CLI

Per visualizzare un elenco di tutte le regole CloudWatch degli eventi

Questo esempio visualizza tutte le regole CloudWatch Events della regione:

aws events list-rules

Per visualizzare un elenco di regole CloudWatch Events che iniziano con una determinata stringa.

Questo esempio visualizza tutte le regole CloudWatch Events nella regione il cui nome inizia con «Daily»:

aws events list-rules --name-prefix "Daily"
  • Per API i dettagli, vedere ListRulesin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-targets-by-rule.

AWS CLI

Per visualizzare tutti gli obiettivi di una regola CloudWatch Events

Questo esempio visualizza tutti gli obiettivi della regola denominata DailyLambdaFunction:

aws events list-targets-by-rule --rule "DailyLambdaFunction"

Il seguente esempio di codice mostra come utilizzareput-events.

AWS CLI

Per inviare un evento personalizzato a CloudWatch Events

Questo esempio invia un evento personalizzato a CloudWatch Events. L'evento è contenuto nel file putevents.json:

aws events put-events --entries file://putevents.json

Visualizzare il contenuto del file putevents.json:

[ { "Source": "com.mycompany.myapp", "Detail": "{ \"key1\": \"value1\", \"key2\": \"value2\" }", "Resources": [ "resource1", "resource2" ], "DetailType": "myDetailType" }, { "Source": "com.mycompany.myapp", "Detail": "{ \"key1\": \"value3\", \"key2\": \"value4\" }", "Resources": [ "resource1", "resource2" ], "DetailType": "myDetailType" } ]
  • Per API i dettagli, vedere PutEventsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareput-rule.

AWS CLI

Per creare regole relative CloudWatch agli eventi

Questo esempio crea una regola che viene attivata ogni giorno alle 9:00am ()UTC. Se usi put-targets per aggiungere una funzione Lambda come destinazione di questa regola, puoi eseguire la funzione Lambda ogni giorno all'ora specificata:

aws events put-rule --name "DailyLambdaFunction" --schedule-expression "cron(0 9 * * ? *)"

Questo esempio crea una regola che si attiva quando un'EC2istanza nella regione cambia stato:

aws events put-rule --name "EC2InstanceStateChanges" --event-pattern "{\"source\":[\"aws.ec2\"],\"detail-type\":[\"EC2 Instance State-change Notification\"]}" --role-arn "arn:aws:iam::123456789012:role/MyRoleForThisRule"

Questo esempio crea una regola che si attiva quando un'EC2istanza nella regione viene interrotta o terminata:

aws events put-rule --name "EC2InstanceStateChangeStopOrTerminate" --event-pattern "{\"source\":[\"aws.ec2\"],\"detail-type\":[\"EC2 Instance State-change Notification\"],\"detail\":{\"state\":[\"stopped\",\"terminated\"]}}" --role-arn "arn:aws:iam::123456789012:role/MyRoleForThisRule"
  • Per API i dettagli, vedere PutRulein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareput-targets.

AWS CLI

Per aggiungere obiettivi per le regole CloudWatch Events

Nell'esempio seguente viene aggiunta una funzione Lambda come destinazione di una regola:

aws events put-targets --rule DailyLambdaFunction --targets "Id"="1","Arn"="arn:aws:lambda:us-east-1:123456789012:function:MyFunctionName"

Questo esempio imposta un flusso Amazon Kinesis come destinazione, in modo che gli eventi rilevati da questa regola vengano inoltrati allo stream:

aws events put-targets --rule EC2InstanceStateChanges --targets "Id"="1","Arn"="arn:aws:kinesis:us-east-1:123456789012:stream/MyStream","RoleArn"="arn:aws:iam::123456789012:role/MyRoleForThisRule"

Questo esempio imposta due flussi Amazon Kinesis come destinazione per una regola:

aws events put-targets --rule DailyLambdaFunction --targets "Id"="Target1","Arn"="arn:aws:kinesis:us-east-1:379642911888:stream/MyStream1","RoleArn"="arn:aws:iam::379642911888:role/ MyRoleToAccessLambda" "Id"="Target2"," Arn"="arn:aws:kinesis:us-east-1:379642911888:stream/MyStream2","RoleArn"="arn:aws:iam::379642911888:role/MyRoleToAccessLambda"
  • Per API i dettagli, vedere PutTargetsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareremove-targets.

AWS CLI

Per rimuovere una destinazione per un evento

Questo esempio rimuove lo stream Amazon Kinesis denominato MyStream 1 dall'obiettivo della regola. DailyLambdaFunction Quando DailyLambdaFunction è stato creato, questo flusso è stato impostato come destinazione con un ID Target1:

aws events remove-targets --rule "DailyLambdaFunction" --ids "Target1"
  • Per API i dettagli, consulta AWS CLI Command RemoveTargetsReference.

Il seguente esempio di codice mostra come utilizzaretest-event-pattern.

AWS CLI

Per verificare se un modello di evento corrisponde a un evento specificato

Questo esempio verifica se il pattern «source:com.mycompany.myapp» corrisponde all'evento specificato. In questo esempio, l'output sarebbe «true»:

aws events test-event-pattern --event-pattern "{\"source\":[\"com.mycompany.myapp\"]}" --event "{\"id\":\"1\",\"source\":\"com.mycompany.myapp\",\"detail-type\":\"myDetailType\",\"account\":\"123456789012\",\"region\":\"us-east-1\",\"time\":\"2017-04-11T20:11:04Z\"}"