マーカー - Amazon Simple Workflow Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

マーカー

ユースケースに固有のワークフロー実行のワークフロー履歴に情報を記録したい場合があります。マーカーにより、カスタムまたはシナリオ固有の目的に使用できる情報を、ワークフロー実行履歴に記録できます。

マーカーを使用するには、ディサイダーは RecordMarker 決定を使用し、マーカーに名前を付け、希望のデータを決定に添付し、RespondDecisionTaskCompleted アクションを使用して Amazon SWF に通知します。Amazon SWF はリクエストを受信し、ワークフロー履歴にマーカーを記録して、リクエストのその他の決定を有効にします。この時点から、ディサイダーはワークフロー履歴でマーカーを表示し、プログラムする任意の方法でそれを使用できます。

マーカーを記録しても、それだけでは決定タスクは開始されません。ワークフロー実行が止まらないようにするため、ワークフロー実行を続行する何かが発生する必要があります。たとえば、ディサイダーが別のアクティビティタスクをスケジュールする、ワークフロー実行がシグナルを受信する、以前にスケジュールされたアクティビティタスクが完了するなどです。

マーカーの例には次のようなものがあります。

  • 再帰的なワークフローでループの数を数えるカウンタ。

  • アクティビティの結果に基づく、ワークフロー実行の進行状況。

  • 以前のワークフローイベントからまとめた情報。

e コマースの例として、インベントリを毎日確認し、毎回マーカーの数を増分するアクティビティを追加する場合があります。次に、その数が 5 を超えた場合に、履歴全体を確認することなく顧客に E メールを送信するか、上司に通知する決定ロジックを追加できます。

次の例では、ディサイダーが決定タスクを完了し、RecordMarker の決定を含む RespondDecisionTaskCompleted アクションで応答します。

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

Amazon SWF がマーカーを正常に記録すると、次のような成功 HTTP レスポンスを返します。

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