EventBridge ejemplos que utilizan AWS CLI - AWS SDKEjemplos de código

Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

EventBridge ejemplos que utilizan AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el uso del AWS Command Line Interface with EventBridge.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.

Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.

Acciones

En el siguiente ejemplo de código se muestra cómo usar delete-rule.

AWS CLI

Para eliminar una regla de CloudWatch eventos

En este ejemplo, se elimina la regla denominadaEC2InstanceStateChanges:

aws events delete-rule --name "EC2InstanceStateChanges"
  • Para API obtener más información, consulte DeleteRulela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar describe-rule.

AWS CLI

Para mostrar información sobre una regla de CloudWatch eventos

En este ejemplo se muestra información sobre la regla denominada DailyLambdaFunction:

aws events describe-rule --name "DailyLambdaFunction"
  • Para API obtener más información, consulte DescribeRulela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar disable-rule.

AWS CLI

Para deshabilitar una regla de CloudWatch eventos

En este ejemplo, se deshabilita la regla denominada DailyLambdaFunction. La regla no se elimina:

aws events disable-rule --name "DailyLambdaFunction"
  • Para API obtener más información, consulte DisableRulela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar enable-rule.

AWS CLI

Para habilitar una regla de CloudWatch eventos

En este ejemplo, se habilita la regla denominada DailyLambdaFunction, que se había desactivado anteriormente:

aws events enable-rule --name "DailyLambdaFunction"
  • Para API obtener más información, consulte EnableRulela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar list-rule-names-by-target.

AWS CLI

Visualización de una lista de todas las reglas que tienen un destino especificado

En este ejemplo se muestran todas las reglas que tienen como destino la función Lambda denominada MyFunctionName "»:

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

En el siguiente ejemplo de código se muestra cómo usar list-rules.

AWS CLI

Para mostrar una lista de todas las reglas de CloudWatch eventos

En este ejemplo se muestran todas las reglas de CloudWatch eventos de la región:

aws events list-rules

Para mostrar una lista de reglas de CloudWatch eventos que comiencen por una cadena determinada.

En este ejemplo, se muestran todas las reglas de CloudWatch eventos de la región cuyo nombre comience por «Daily»:

aws events list-rules --name-prefix "Daily"
  • Para API obtener más información, consulte ListRulesla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar list-targets-by-rule.

AWS CLI

Para mostrar todos los objetivos de una regla de CloudWatch eventos

En este ejemplo se muestran todos los objetivos de la regla denominada DailyLambdaFunction:

aws events list-targets-by-rule --rule "DailyLambdaFunction"
  • Para API obtener más información, consulte ListTargetsByRulela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar put-events.

AWS CLI

Para enviar un evento personalizado a CloudWatch Events

En este ejemplo, se envía un evento personalizado a CloudWatch Events. El evento está incluido en el archivo putevents.json:

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

Este es el contenido del archivo 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" } ]
  • Para API obtener más información, consulte PutEventsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar put-rule.

AWS CLI

Para crear reglas de CloudWatch eventos

En este ejemplo, se crea una regla que se activa todos los días a las 9:00 a.m. (UTC). Si utiliza put-targets para añadir una función de Lambda como destino de esta regla, puede ejecutar la función de Lambda todos los días a la hora especificada:

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

En este ejemplo, se crea una regla que se activa cuando cualquier EC2 instancia de la región cambia de estado:

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"

En este ejemplo, se crea una regla que se activa cuando se detiene o finaliza una EC2 instancia de la región:

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"
  • Para API obtener más información, consulte PutRulela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar put-targets.

AWS CLI

Para añadir objetivos a las reglas de CloudWatch eventos

En este ejemplo, se añade una función de Lambda como destino de una regla:

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

En este ejemplo, se establece una transmisión de Amazon Kinesis como destino, de modo que los eventos detectados por esta regla se retransmitan a la transmisión:

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"

En este ejemplo, se establecen dos transmisiones de Amazon Kinesis como destinos para una regla:

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"
  • Para API obtener más información, consulte PutTargetsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar remove-targets.

AWS CLI

Eliminación de un destino de un evento

En este ejemplo, la transmisión de Amazon Kinesis denominada MyStream 1 deja de ser el objetivo de la regla. DailyLambdaFunction Cuando DailyLambdaFunction se creó, esta transmisión se estableció como un objetivo con un ID de Target1:

aws events remove-targets --rule "DailyLambdaFunction" --ids "Target1"
  • Para API obtener más información, consulte RemoveTargetsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código se muestra cómo usar test-event-pattern.

AWS CLI

Para comprobar si un patrón de eventos coincide con un evento específico

En este ejemplo se comprueba si el patrón «source:com.mycompany.myapp» coincide con el evento especificado. En este ejemplo, el resultado sería «verdadero»:

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\"}"
  • Para API obtener más información, consulte TestEventPatternla Referencia de AWS CLI comandos.