インターフェースの概要 - AWS Step Functions

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

インターフェースの概要

Workflow Studio for AWS Step Functions は、オーケストレーションによってサーバーレスワークフローを作成できる、ローコードのビジュアルワークフローデザイナーです。 AWS のサービス Workflow Studio にはドラッグアンドドロップ機能があり、ワークフロープロトタイプの構築、編集、可視化を簡単に行うことができます。Workflow Studio には、Step Functions コンソール内の Amazon ステートメント言語 (ASL) を使用してワークフロー定義を記述および編集するための組み込みコードエディタも用意されています。

ワークフローの構築と可視化、定義の編集、構成の管理に役立つように、Workflow Studio には[デザイン][コード][設定] の 3 つのモードがあります。以下のセクションで、これらのモデルについて詳しく説明します。

デザインモード

Workflow Studio の [デザイン] モードには、プロトタイプを作成する際にワークフローを可視化するグラフィカルインターフェイスがあります。以下のイメージは、[デザイン] モードで使用できるさまざまなコンポーネントを示しています。


            Workflow Studio の [デザイン] モード。このモードには、左側の状態ブラウザ、中央のキャンバス、キャンバスの右側のインスペクターパネル、右端のペインのコンテキストヘルプなど、さまざまなコンポーネントが含まれています。このイメージは、Lambda 関数のインスペクターパネルの設定オプションを示しています。
  1. モードボタン - モードボタンを使用して Workflow Studio の [デザイン] モード、[コード] モード、および [設定] モードを切り替えます。ワークフローの ASL 定義内の JSON が無効な場合、モードを切り替えることはできません。

  2. [State browser] (状態ブラウザ) には次の 3 つのタブがあります。

    • Actions タブには AWS API のリストが表示され、キャンバスのワークフローグラフにドラッグアンドドロップできます。各アクションは タスク 状態を示します。

    • [フロー] タブは、キャンバス内のワークフローのグラフにドラッグアンドドロップできるフロー状態のリストを表示します。

    • パターン」タブには ready-to-use、さまざまなユースケースに使用できる再利用可能なビルディングブロックがいくつか用意されています。例えば、これらのパターンを使用して Amazon S3 バケットのデータを繰り返し処理できます。

  3. キャンバス は、状態をワークフローのグラフにドラッグアンドドロップし、状態の順序を変更します。状態を選択して、状態を設定または表示に選択します。

  4. Inspector パネルでは、キャンバス上で選択した任意の状態のプロパティを表示および編集できます。[定義] トグルをオンにすると、現在選択されているステートが強調表示された状態で、ワークフローの Amazon States Language コードが表示されます。

  5. [Info] (情報) リンクは、ヘルプが必要になるとコンテキスト情報を含むパネルを開きます。これらのパネルには、Step Functions ドキュメントの関連トピックへのリンクも含まれます。

  6. デザインツールバー - 元に戻す、削除、ズームインなどの一般的なアクションを実行するボタンのセットが含まれています。

  7. ユーティリティボタン - ワークフローの保存や、ASL 定義を JSON ファイルや YAML ファイルにエクスポートするなどのタスクを実行するためのボタンのセットです。

[State browser] (状態ブラウザ)

[State browser] (状態ブラウザ) は、ワークフローのグラフにドラッグアンドドロップする状態を選択する場所です。「アクション」タブには AWS API のリストが表示され、「フロー」タブにはフロー状態のリストが表示されます。一方、「パターン」タブには ready-to-use、さまざまなユースケースに使用できる再利用可能なビルディングブロックがいくつか用意されています。上部の検索ボックスを使用して、[状態ブラウザ] ですべての状態を検索できます。


            Step Functions Workflow Studio States ブラウザのインターフェイスコンポーネント このイメージは、ステートブラウザにある[アクション]、[フロー]、[パターン] の 3 つのタブを示しています。

ワークフローの指示と制御に使用できるフロー状態は 7 つあります。そのすべては前の状態から入力を受け取りますが、前の状態からの入力と後続の状態への出力をフィルターできないものが一部あります。フロー状態:

  • 選択: ワークフローに実行の分岐点で行う選択を追加します。Inspector の [Configuration] (設定) タブでは、どの状態にワークフローを移行するのかを決定するルールを設定できます。

  • 並行: ワークフローに実行の並列分岐を追加します。

  • マッピング: 入力配列の各要素のステップを動的に反復します。Parallel フロー状態とは違い、Map 状態は、状態入力にある配列の複数エントリに対して同じステップを実行します。

  • パス: 入力を出力に渡すことができます。(オプション) 出力に固定データを追加できます。

  • 待機: ワークフローを一定の時間、指定した時刻または日付まで一時停止します。

  • 成功: 成功したためワークフローを停止します。

  • 失敗: エラーがでたため、ワークフローを停止します。

キャンバス

ワークフローに追加する状態を選択した後、キャンバスにドラッグし、ワークフローのグラフにドロップします。状態をドラッグアンドドロップして、ワークフローの別の場所に移動することもできます。ワークフローが複雑な場合は、キャンバスパネルでワークフローをすべて表示できない場合があります。キャンバスの上部にあるコントロールを使用して、拡大/縮小します。ワークフローのグラフのさまざまな部分を表示するには、キャンバスでワークフローのグラフをドラッグします。

ワークフローの状態を [アクション] または [フロー] パネルからドラッグして、ワークフローにドロップします。ラインはワークフローのどこに配置されるかを示します。新しいワークフロー状態がワークフローに追加され、そのコードが自動生成されます。


            Workflow Studio キャンバス

状態の順序を変更するには、ワークフロー内の別の場所にドラッグします。


            Workflow Studioのドラッグドロップ

Inspector

ワークフローに追加するステートはどれでも設定できます。設定する状態を選択すると、[Inspector] パネルにその設定オプションが表示されます。ワークフローコード用に自動生成された ASL 定義を確認するには、[定義] トグルをオンにします。選択した状態に関連付けられている ASL 定義がハイライトされます。


            Workflow Studio Inspector 設定パネル

            Workflow Studio Inspector 定義パネル

コードモード

Workflow Studio の[コード] モードには、Step Functions コンソール内でワークフローの Amazon ステートメント言語 (ASL) 定義を表示、記述、編集するための統合コードエディタが用意されています。以下のイメージは、[コード] モードで使用できるさまざまなコンポーネントを示しています。


          Step Functions Workflow Studio のコードモード このモードは、ワークフロー定義の例と、その定義に基づくワークフローグラフのリアルタイムレンダリングを示しています。
  1. モードボタン - モードボタンを使用して Workflow Studio の [デザイン] モード、[コード] モード、および [設定] モードを切り替えます。ワークフローの ASL 定義内の JSON が無効な場合、モードを切り替えることはできません。

  2. ここで コードエディタ は、Workflow Studio 内でワークフローの ASL 定義を記述して編集します。コードエディタには、構文の強調表示やオートコンプリートなどの機能もあります。

  3. グラフ可視化 - ワークフローをリアルタイムでグラフィカルに可視化します。

  4. ユーティリティボタン - ワークフローの保存や、ASL 定義を JSON ファイルや YAML ファイルにエクスポートするなどのタスクを実行するためのボタンのセットです。

  5. コードツールバー - アクションの取り消しやコードのフォーマットなど、一般的なアクションを実行するためのボタンのセットが含まれています。

  6. グラフツールバー - ワークフローグラフのズームインやズームアウトなど、一般的なアクションを実行するためのボタンセットが含まれています。

コードエディタ

コードエディタは IDE と同様の操作性で、Workflow Studio 内で JSON を使用してワークフロー定義を記述および編集できます。コードエディタには、構文の強調表示、オートコンプリートの提案、ASL 定義の検証、状況依存ヘルプ表示など、いくつかの機能が含まれています。ワークフロー定義を更新すると、グラフ可視化 はワークフローのリアルタイムグラフをレンダリングします。更新されたワークフローグラフは、デザインモード でも確認できます。

デザインモード またはグラフ表示ペインでステートを選択すると、そのステートの ASL 定義がコードエディタで強調表示されます。[デザイン] モードまたはグラフ可視化ペインでステートの並べ替え、削除、または追加を行うと、ワークフローの ASL 定義が自動的に更新されます。


            Step Functions Workflow Studio コンポーネント

ワークフロー定義内の任意のフィールドにカーソルを置くと、コンテキスト依存ヘルプがツールチップとして表示されます。


            Step Functions Workflow Studio

オートコンプリート候補には、ワークフローに含めることができるフィールドまたはステートのコードスニペットが表示されます。特定のステートに含めることができるフィールドのリストを表示するには、Ctrl+Space を押します。ワークフロー内の新しいステートのコードスニペットを生成するには、現在のステートの定義の後に Ctrl+Space を押します。F1 を押して、使用できるコマンドのリストを表示することもできます。


            Step Functions Workflow Studio コンポーネント

グラフ可視化

グラフ可視化を使用すると、ワークフローの外観をグラフ形式で確認できます。Workflow Studio の コードエディタ でワークフロー定義を記述すると、グラフ表示ペインにワークフローのリアルタイムグラフが表示されます。可視化ペインでステートの順序を変更、削除、または複製すると、コードエディタのワークフロー定義が自動的に更新されます。同様に、コードエディタでワークフロー定義の更新、順序の変更、削除、ステートの追加を行うと、可視化も自動的に更新されます。

ワークフローの ASL 定義内の JSON が無効な場合、グラフ可視化ペインはレンダリングを一時停止し、ペインの下部にステータスメッセージを表示します。

設定モード

Workflow Studio の設定 モードでは、ステートマシンの設定を管理できます。このモードでは、ステートマシンの名前とタイプ、IAM アクセス許可、ステートマシンのログ記録設定などの詳細を指定できます。このモードで指定できるその他の設定には、 AWS X-Ray ステートマシンの作成時にトレースを有効にしたり、バージョンを公開したりすることが含まれます。ステートマシンを作成したら、ステートマシンの名前とタイプを除くすべてのステートマシン設定オプションを編集できます。次のイメージは、[設定] モードで指定できる設定の一部を示しています。


         [設定] モードで指定できるステートマシン設定。
ステートマシンの設定の管理

ステートマシンの設定を管理するには、以下を実行します。

  1. ステートマシンの名前を [ステートマシン名] ボックスに入力します。

    ヒント

    または、デフォルトのステートマシン名の横にある編集アイコンを選択します。MyStateMachine次に、[ステートマシン設定] で名前を指定します。

    重要

    ステートマシンを作成した後でステートマシン名を編集することはできません。

  2. [タイプ] で、ステートマシンのタイプを [スタンダード] または [エクスプレス] から選択します。ステートマシンの詳細のタイプについては、「標準ワークフロー対 Express ワークフロー」を参照してください。

    重要

    ステートマシンを作成した後でステートマシンのタイプを編集することはできません。

  3. [アクセス許可] で、ステートマシンの実行ロールとして使用する IAM ロールを選択します。

    • [新しいロールを作成] (推奨): このオプションを選択すると、Step Functions はステートマシンの作成時に必要最小限の権限でステートマシンの実行ロールを自動的に作成します。これらの自動生成された IAM ロールは、 AWS リージョン ステートマシンを作成した時点で有効です。

      ヒント

      Step Functions がステートマシンに対して自動的に生成するアクセス許可を確認するには、[自動生成されたアクセス許可をレビューする] を選択します。

      注記

      Step Functions が作成した IAM ロールを削除すると、Step Functions を後で再作成することはできません。同様に、ロールを変更すると (例えば、IAM ポリシーのプリンシパルから Step Functions を削除するなど)、後で Step Functions でそれを元の設定に復元することはできません。

    • [既存のロールを選択]: ステートマシン用に独自の IAM ロールを作成し、[既存のロールを選択] の下に表示されているオプションから選択します。ロールのポリシーに、ステートマシンに引き継がせたいアクセス許可が含まれていることを確認してください。

      IAM ポリシーの作成の詳細については、「IAM ユーザーガイド」の「IAM ポリシーの作成」を参照してください。

    • [ロールの ARN を入力]: このステートマシンに使用する既存の IAM ロールの Amazon リソースネーム (ARN) を指定します。例えば arn:aws:iam::123456789012:role/service-role/StepFunctions-WorkflowStudio-role-777f4027 です。

  4. [ログ記録] で、ステートマシンのログレベルを設定します。Step Functions は、選択内容に基づいて実行履歴イベントを記録します。次のいずれかのオプションを選択できます。

    • [すべて]: すべてのイベントタイプが記録されます。

    • ERROR: TaskFailed ExecutionFailed やなど、すべてのエラーイベントタイプが記録されます。

    • FATAL: やなど ExecutionAborted 、すべての致命的エラーイベントタイプが記録されます。 ExecutionFailed

    • [オフ]: イベントタイプはログに記録されません。

    ログレベルの詳細については、「ログレベル」を参照してください。

  5. [追加設定] で、以下のオプション設定を 1 つ以上設定します。

    • [X-Ray トレースの有効化]: Step Functions は、トレース ID がアップストリームサービスによって渡されない場合でも、ステートマシンを実行するためにトレースを X-Ray に送信します。詳細については、「AWS X-Ray および Step Functions」を参照してください。

    • [作成時にバージョンを発行]: バージョンとは、実行可能なステートマシンの番号が付けられた変更不可能なスナップショットです。このチェックボックスを選択すると、ステートマシンの作成時にステートマシンのバージョンを発行できます。Step Functions は、ステートマシンの最初のリビジョンとしてバージョン 1 を発行しています。

      バージョンの詳細については、「ステートマシンバージョン」を参照してください。

    • [新しいタグを追加]: ステートマシンにタグを追加するには、このボックスを選択します。タグを追加すると、リソースに関連するコストを追跡して管理し、IAM ポリシーのセキュリティを向上させることができます。タグの詳細については、Step Functions でのタグ付けを参照してください。

  6. [作成] を選択します。

  7. [ロールの作成を確認] ダイアログボックスで、[確認] を選択して続行します。

    [ロールの設定を表示] を選択して、[設定] モードに戻ることもできます。

キーボードショートカット

Workflow Studio では、以下のキーボードショートカットキーがサポートされています。

キーボードショートカット 機能
Shortcuts for the Code mode
Ctrl+space Auto-complete suggestions
F1 Display a list of available commands
Common shortcuts for the Design and Code modes
Ctrl+Z Undo the last operation
Ctrl+Shift+Z Redo the last operation
Alt+C Center the workflow in the canvas
Backspace Remove all selected states
Delete Remove all selected states
Ctrl+D Duplicate selected state