Ajouter des attributs de contexte - EventBridge Planificateur

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Ajouter des attributs de contexte

Utilisation des mots clés suivants dans la charge utile que vous transmettez à la cible pour collecter des métadonnées relatives au planning. EventBridge Le planificateur remplace chaque mot clé par sa valeur respective lorsque votre calendrier invoque la cible.

  • <aws.scheduler.schedule-arn>— L'ARN du planning.

  • <aws.scheduler.scheduled-time>— L'heure que vous avez spécifiée pour que le planning invoque sa cible, par exemple,2022-03-22T18:59:43Z.

  • <aws.scheduler.execution-id>— L'identifiant unique que EventBridge Scheduler attribue à chaque tentative d'invocation d'une cible, par exemple,. d32c5kddcf5bb8c3

  • <aws.scheduler.attempt-number>— Un compteur qui identifie le numéro de tentative pour l'invocation en cours, par exemple,1.

Cet exemple montre comment créer un calendrier qui se déclenche toutes les cinq minutes et invoque l'opération Amazon SendMessage SQS en tant que cible universelle. Le corps du message inclut la valeur pourschedule-time.

Exemple AWS CLI
$ aws scheduler create-schedule --name your-schedule \ --schedule-expression 'rate(5 minutes)' \ --target '{"RoleArn": "ROLE_ARN", \ "Arn": "arn:aws:scheduler:::aws-sdk:sqs:sendMessage", \ "Input": "{\"MessageBody\":\"<aws.scheduler.scheduled-time>\",\"QueueUrl\":\"https://sqs.us-west-2.amazonaws.com/123456789012/scheduler-cli-test\"}"}' \ --flexible-time-window '{ "Mode": "OFF"}'
Exemple Kit de développement logiciel pour Python
import boto3 scheduler = boto3.client('scheduler') sqs_universal= { "RoleArn": "<ROLE_ARN>", "Arn": "arn:aws:scheduler:::aws-sdk:sqs:sendMessage", "Input": "{\"MessageBody\":\"<aws.scheduler.scheduled-time>\",\"QueueUrl\":\"https://sqs.us-west-2.amazonaws.com/123456789012/scheduler-cli-test\"}" } flex_window = { "Mode": "OFF" } scheduler.update_schedule(Name="your-schedule", ScheduleExpression="rate(5 minutes)", Target=sqs_universal, FlexibleTimeWindow=flex_window)