Workflowの登録および管理
    • PDF

    Workflowの登録および管理

    • PDF

    Article Summary

    Classic/VPC環境で利用できます。

    Workflowメニューは、 API Templateに登録された APIを活用して Workflowを作成して管理するメニューです。直観的な UI編集ツールを使って希望する Workflowを簡単に作成できます。また、 Workflowに Scheduleを設定して自動で実行されるように管理でき、Workflowの実行履歴と実行の成否、応答時間などが確認できます。

    Workflowの作成

    Workflowを作成する方法は次の通りです。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. [Workflowを作成] ボタンをクリックします。
    3. 作成するワークフローの名前を入力します。
    4. ワークフロータブで希望するワークフローを構成します。
      apiworkflow-workflow_add_ja.png
      • [位置を編集] ボタンをクリックすると、Entityの順序を変更できます。
      • [展開する] ボタンをクリックすると、Entity情報画面を閉じて Workflowの構成図のみ確認できます。
    5. 新しい Entityを追加するには、[+] アイコンをクリックし、希望する Entityをクリックします。
      • API: 呼び出す APIを指定する Entity
      • if: 比較演算子を活用した条件を設定する Entity
      • Loop: 繰り返し条件を設定する Entity
      • Set properties: Properties値を設定する Entity
    6. 作成した Entityを削除するには、[Entityを削除] ボタンをクリックします。
      • [start] エンティティと [finish] エンティティは必須エンティティであるため、削除できません。
    7. 構成したワークフローが正常に動作するか確認するには、[テストを実行] ボタンをクリックします。
    8. [Workflowを作成] ボタンをクリックします。
    参考
    • Entityのタイプと Entityの編集方法は、Entityをご参照ください。

    Entity

    Entityは Workflowを構成する最小単位で、3段階の下位構造で構成できます。

    Entityのタイプ

    Workflowの Entityタイプは次の通りです。

    • Start: Workflowの開始地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。Workflowの Endpointを呼び出す際に requestに入っている Parameter、Header、Bodyを編集できます。これを活用してパラメータを取得し、動作に使用できます。
    • End: Workflowの終了地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。Workflowの Endpointを呼び出す際に返される requestに入れる Header、Bodyを編集できます。Propertyを活用して ${propertyKey} 形式で値を入力すると、実際に返す際にこの Property値に置き換えられて送られます。
    • API: 呼び出す APIを指定する Entityです。既に作成済みの Workflowの Endpointを入力し、 Workflowをネストできます。
    • IF: 比較演算子を活用した条件を設定する Entityです。サポートする演算子は<, <=, >, =>, ==, =です。
    • Loop: 繰り返し条件を設定する Entityです。単純繰り返しと JsonArrayListを cursor値にした繰り返しが行えます。最大繰り返し回数は1000回に制限されます。
    • Set Properties: Propertyは、 Workflow動作時に共通してアクセスできる変数です。Set Properties Entityを利用して該当 Propertyに値を入れることができ、四則演算子を活用して値を演算することができます。これを活用して response中に使用する値を取得し、これを End entityで返すことができます。まず Propertyを作成し、Set Properties Entityを利用して特定の Entityの Pathにアクセスし、当該値を Propertyに保存する方式です。

    Entityの編集

    Workflow構成で Entityを追加するには、 [+] アイコンをクリックし、希望する Entityをクリックしてください。
    apiworkflow-workflow_entity_ja.png

    Start

    Workflowの開始地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。Workflowの Endpointを呼び出す際に requestに入っている Parameter、Header、Bodyを編集できます。これを活用してパラメータを取得し、動作に使用できます。例えば Endpointを呼び出す際に Query parameterで [date] という値を送る場合、この値を Workflowで使用するには、Start Entityに [date] という query parameterを設定する必要があります。

    End

    Workflowの終了地点を明示するための Entityです。Workflowの作成時に自動で作成され、削除できません。Workflowの Endpointエンドポイントを呼び出す際に返される responseに入れる Header、Bodyを編集できます。もし Bodyを json形式の文字列に設定し、Keyや valueなどを Propertyとして活用して ${propertyKey}形式で値を入力すると、実際に返す際はそのプロパティに保存された値に置き換えられて送られます。

    • END entity body

      {
        "result": "${propertyKey}"
      }
      
    • Workflow endpoint response

      {
        "result": "propertyValue"
      }
      

    API

    呼び出す APIを設定する Entityです。直接 API情報を入力したり、既に登録済みの APIを呼び出すことができます。また、ユーザーが作成した Workflowも読み込むことができるため、Microservice単位の Workflowを作成して必要な Workflowを適切に組み合わせることができます。

    API Entityを追加する方法は次の通りです。

    1. Workflow構成図で [+] アイコンをクリックし、APIをクリックします。
    2. 画面右側の Entity Nameに名前を入力します。
    3. Request領域に API情報を入力します。
    4. API Templateメニューに登録した API情報を持ってくるには、 API Templateの [読み込み] ボタンをクリックします。
    5. 既に作成済みの Workflow情報を読み込むには、Workflowの [読み込み] ボタンをクリックします。

    IF

    比較演算子を活用して条件を設定する Entityです。例えば、APIの呼び出しにより得た結果が特定の値以上か、以下である場合、次に実行するジョブを設定できます。条件の設定時にサポートする演算子は「- <, <=, >, =>, ==, =」です。

    IF Entityを追加する方法は次の通りです。

    1. Workflow構成図で [+] アイコンをクリックし、ifをクリックします。
    2. 画面右側の Condition領域に関連情報を入力します。
      • Logical: and、or関数を選択。1つ以上の条件が追加された場合にのみ選択できる
      • Operand 1st: 条件選択。Propertiesに追加された Key値の中から選択できる
      • Comparison: 比較演算子を選択
      • Operand 2nd: 基準値を入力
    3. 条件を設定し、[追加] ボタンをクリックします。
    4. 画面左側 Entity構成図の [位置を編集] ボタンをクリックし、IF Entity下位に実行する Entityを移動させます。
      • IF条件が満足する場合に実行するジョブです。

    Loop

    特定のジョブに対する繰り返し条件を設定する Entityです。最大繰り返し回数は1000回に制限されます。Loop Entityを追加する方法は次の通りです。

    1. Workflow構成図で [+] アイコンをクリックし、Loopをクリックします。
    2. 画面右側の Condition領域に関連情報を入力します。
      • [forEach] Type: Json Arrayy形式の複数のデータを繰り返し処理できる。APIの Responseで Json Array List形式を取得し、インスタンスごとに繰り返しジョブが必要な場合に使用。この場合、Targetは Json Array形式の Propertyである必要があり、Json Array Propertyには前の段階で使用する Responseの Json Array Listを入れる
      • [count] Type: 単純繰り返し回数を直接設定。countの選択時に表示される入力領域に繰り返す回数を入力
      • ignore Error: エラー発生時に中止するかどうかを設定。有効にする場合、エラーが発生しても次の段階に進む

    例)

    • forEachの Cursor value領域
      //targetList propertyに入っている値
      [
              {
                  "servername":"a",
                  "ip":"aaa.bbb.ccc.ddd"
      
              },
              {
                  "servername":"b",
                  "ip":"bbb.bbb.ccc.ddd"
              }
      ]
      

    targetListという Json Array形式の Propertyがあり、前の段階で API responseまたは Startから渡されたパラメータを SetPropertiesを使用して targetListに保存したと仮定します。
    2つの jsonObjectを持つそれぞれの Listを繰り返し処理したい場合は、typeforEachを選択し、target${targetList} を選択します。Loopは、2つの json Objectに対して次のような形で繰り返しジョブを実行します。

    //forEach loop 1回目
    "cursor":{
                    "servername":"a",
                    "ip":"aaa.bbb.ccc.ddd"
                  }
                  
    //forEach loop2回目
    "cursor":{
                   "servername":"b",
                   "ip":"bbb.bbb.ccc.ddd"
                   }
    

    Loopは各 jsonObjectにアクセスできますが、Loopの下位にある、実際に繰り返し処理をすることになる Entityでは cursorの値にアクセスできません。そのため、Loopで繰り返すたびに Propertyに cursorの値を入れて下位 Entityで使用できるようにします。

    以下は、severnameが bの場合を探す特定のジョブを実行する例です。

    1. 当該値を保存して渡す「servername」という Propertyを作成します。
    2. Loopの Cursor Valueで Property > ${servername}を選択し、Cursor valueタブでは ${cursor.servername}を選択します。
      • 繰り返し文が実行されるたびに、「servername」 Propertyに targetの現在繰り返し中の cursorの severnameが保存される
    3. Loopの下位に IF Entityを追加して情報を入力します。
      • Operand1st: ${servername}
      • Comparison: ==(Equal)
      • Operand2nd: 直接入力、b

    繰り返しが開始される際に、当該 Targetの cursor.servernameを「severname」 Propertyに保存した後、Loop下位の Entityが「severname」 Propertyを使用する形でデータを処理することになります。

    Set Properties

    Propertyは、Workflow内で共通して使用する Propertyを管理する Entityです。これは2つの機能を持っています。基本的に、Set Properties Entityを利用すると、Propertiesの管理画面で設定した Propertiesに APIの演算結果を入れることができます。1つ目の APIから渡された値を2つ目の APIに渡す場合や、 Workflowの実行時に繰り返し使用する特定の値がある場合、Propertyで管理します。2つ目に Operational Functionとして Propertyの値を演算して加工することができます。基本的な四則演算などを提供し、各 Propertyの種類ごとに行える演算は異なります。

    Basic Set Properties

    1. Workflow構成図で [+] アイコンをクリックし、Set propertiesをクリックします。
    2. Entity Nameに名前を入力します。
    3. 関連情報を入力し、[追加] ボタンをクリックします。
      • Property: 事前に設定した変数に設定できる。Propertiesの管理画面で作成した Propertyリストが表示される
      • Entity: 取得する Entity値を指定できる。Start Entityと追加された API Entityリストが表示され、Request Parameter、Request Header、Response Header、Response Bodyの値を取得できる
      • Key: 取得する値を直接入力するか、選択できる。Json objectに限り key1.key2.key3の形式でアクセスできます。

    Operational Function

    1. Workflow構成図で [+] アイコンをクリックし、Set propertiesをクリックします。
    2. SetPropertiesの下部に Operational Function用テーブルを操作します。
    3. Entity Nameに名前を入力します。
    4. 関連情報を入力し、[追加] ボタンをクリックします。
      • Property: 演算後に結果値が保存される Property設定。当該 Propertyの種類は演算する値を入れる必要があります。
      • Operator: 実行する演算の種類を選択。Propertyの種類によって異なる
        • String Property: concat(文字列を繋げる)
        • Json Array: Add(値を追加)、clear(配列を clear)、delete(値を削除)
        • Json Object: add(追加)、delete(削除)
        • Long、Integer、Double : add(加算)、sub(減算)、mul(乗算)、div(除算)、sum(合算)
      • Operand: 実際に演算される値を持っている被演算子。Operatorの種類によって1つか2つ、またはない場合あり。

    Properties

    Propertiesは Workflowで使用可能な変数の値で、Workflowのすべての Entityからこの Propertiesに入っている値を照会したり、読み込むことができます。Propertiesで設定した値は ${property key} の形式で他の Entityから参照でき、これにより APIの演算結果を入れて Loop Entityの cursor valueとして活用したり、If Entityの条件文に活用するなど様々な方法で使用できます。
    Workflowで共通して使用する Propertiesを設定する方法は次の通りです。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. Workflow名をクリックして Workflow編集画面に移動します。
    3. 画面右上の [Properties] ボタンをクリックします。
    4. Propertiesの管理画面が表示されたら、 Workflowで使用する変数を設定します。
      • String, Long, Integer,Double, Json Array, Json Object形式をサポートします。
    5. [追加] ボタンをクリックします。

    Workflow実行結果の確認

    Workflowの実行結果をモニタリングできます。Workflowの実行履歴を Scatter Chartで表示し、これにより Workflowの成否と実行時間の分布を一目で把握できます。Workflowの実行結果を確認する方法は次の通りです。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. 実行履歴を確認する Workflowの [結果を見る] ボタンをクリックします。
    3. 特定の時間帯の実行履歴を確認するには、Scatter Chartで apiworkflow-workflow_charticon アイコンをクリックし、希望する領域を指定します。
    4. 結果 IDをクリックして詳細結果を確認します。
    参考

    実行履歴は1か月間保管され、1か月が過ぎた履歴は自動で削除されます。詳細は1週間保管されます。

    自動実行スケジュールの設定

    Workflowの実行周期を設定する方法は次の通りです。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. 実行周期を設定する Workflowを選択し、 [Schedule] ボタンをクリックします。
    3. Scheduleの設定画面が表示されたら、開始/終了期間を設定します。
    4. Cron expression入力領域に自動実行周期をクローン式で入力します。
    5. Request情報を入力します。
    6. [適用] ボタンをクリックします。

    Authorityの管理

    NCP Signature認証および AWS Signature認証のためのキー情報を登録できます。API Workflowでは、NCP Signature認証情報を登録しておくと別途 Signature設定手続きなしで、簡単に NAVERクラウドプラットフォームの APIを呼び出すことができます。NCP Signatureを登録する方法を基準に説明します。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. [Authority] ボタンをクリックします。
    3. Authorityの管理画面が表示されたら、NCP Signatureの [登録] ボタンをクリックします。
    4. Access Keyと Secret Keyを入力します。
      • NCP Signatureの Access Keyと Secret Keyは、ポータル > マイページ > アカウントの管理 > 認証キーの管理メニューで確認できます。
    5. [保存] ボタンをクリックします。
    参考
    • 同じ方法で AWS Signatureを登録できます。
    • 登録された Workflowが1つ以上存在すると、[Authority] ボタンが有効になります。

    Workflowの管理

    Workflowを修正・削除する方法と、既存 Workflow情報を活用して新しい Workflowを作成する方法を説明します。

    Workflowのコピー

    既存 Workflow情報をコピーして新規 Workflowを作成する方法は次の通りです。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. コピーする Workflowを選択し、[コピーを作成] ボタンをクリックします。
      • 選択した Workflowと同じ値が入力された Workflowの作成画面が表示されます。
    3. Workflow情報を修正し、[Workflowを作成] ボタンをクリックします。

    Workflowの修正

    Workflowを修正する方法は次の通りです。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. 修正する Workflowを選択し、[修正] ボタンをクリックします。
    3. Workflowの修正画面が表示されたら、Workflowを修正し、[Workflowを修正] ボタンをクリックします。

    Workflowの削除

    Workflowを削除する方法は次の通りです。

    1. NAVERクラウドプラットフォームコンソールで、Services > Management & Governance > API Workflow > Workflowメニューを順にクリックします。
    2. 削除する Workflowを選択し、[削除] ボタンをクリックします。
    3. 削除画面が表示されたら、[確認] ボタンをクリックします。

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.