Marqueurs - Amazon Simple Workflow Service

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.

Marqueurs

Il arrive que vous souhaitiez enregistrer des informations spécifiques à votre cas d'utilisation dans l'historique d'exécution d'un flux de travail. Les marqueurs vous permettent d'enregistrer dans l'historique d'exécution du flux de travail des informations que vous pouvez utiliser pour répondre à vos besoins.

Pour utiliser des marqueurs, un décideur utilise la RecordMarker décision, nomme le marqueur, associe les données souhaitées à la décision et notifie Amazon SWF à l'aide de l'RespondDecisionTaskCompletedaction. Amazon SWF reçoit la demande, enregistre le marqueur dans l'historique du flux de travail et prend toutes les autres décisions relatives à la demande. A partir de ce moment, les décideurs peuvent voir le marqueur dans l'historique du flux de travail et l'utiliser comme vous l'avez programmé.

L'enregistrement d'un marqueur n'a pas pour effet de lancer une tâche de la décision. Pour éviter le blocage de l'exécution du flux de travail, un événement qui assure sa continuité doit avoir lieu. Par exemple, le décideur peut planifier une autre tâche d'activité, l'exécution du flux de travail peut recevoir un signal ou une tâche d'activité déjà planifiée prend fin.

Voici quelques exemples de marqueurs :

  • Un compteur qui détermine le nombre de boucles dans un flux de travail récursif

  • Progression de l'exécution du flux de travail en fonction des résultats des activités

  • Informations résumées à partir des événements précédents de l'historique du flux de travail

Dans l'exemple de commerce en ligne, vous pouvez ajouter une activité qui vérifie l'inventaire tous les jours et qui incrémente chaque fois le nombre correspondant dans un marqueur. Ensuite, vous pouvez ajouter une logique de décision qui envoie un e-mail au client ou qui informe un responsable lorsque ce nombre dépasse cinq, sans avoir à passer en revue l'historique complet.

Dans l'exemple suivant, le décideur effectue une tâche de la décision et répond avec une action RespondDecisionTaskCompleted qui contient une décision RecordMarker.

https://swf.us-east-1.amazonaws.com RespondDecisionTaskCompleted { "taskToken":"12342e17-80f6-FAKE-TASK-TOKEN32f0223", "decisions":[{ "decisionType":"RecordMarker", "recordMarkerDecisionAttributes":{ "markerName":"customer elected special shipping offer" } }, ] }

Si Amazon SWF prend correctement, il renvoie une réponse HTTP positive similaire à la suivante :

HTTP/1.1 200 OK Content-Length: 0 Content-Type: application/json x-amzn-RequestId: 6c0373ce-074c-11e1-9083-8318c48dee96