4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

はじめてのArcESBで悩んだところ

Posted at

はじめに

ArcESBはファイル転送やSaaS連携をノーコードで実現するシステムデータ連携ツールのひとつです。こういったノーコード系のツールは特有の考え方や使い方があるため、ノーコードとは言ってもいざ触るとなるとなかなかとっつきづらい部分があるかと思いますので、私が初めて触ったときに感じたことをまとめてみました。

ArcESBのインストール

ArcESBのインストールについてはこちらをご覧ください。とても詳細に記載されています。

サービスの起動と管理画面のログイン方法

いきなり悩みました。インストール直後は良いのですが、いざサーバを再起動したとき、「あれ?どこからスタートするの?」「ログインURLなんだっけ?」となってしまいました。

  • Windowsのスタートメニューから起動する方法

スタートメニューをクリックするとちゃんとメニューが登録されていますので、

  1. Start ArcESB 2021 Serverでサーバを起動し
  2. サーバが起動するまで少し待ったら、Launch ArcESB...でコンソールを起動します。
    image.png
  • タスクメニューから起動する方法

タスクメニューにもアイコンが追加されているのでここからも起動、再起動させることが可能です。

タスクトレイで右クリックして

  1. Start Server でスタートさせ、
  2. Start Application...で管理コンソールを立ち上げます。(ブラザが開く)

image.png

ワークスペースの単位で処理をまとめる。

ArcESBの連携処理は「FLOWS」上で作成していきます。

image.png

FLOWS タブを選択すると最初に表示されるものがデフォルトのワークスペースと呼ばれ、ここにいくつもの連携処理を記載することができます。連携業務や処理毎に管理対象をまとめたいときにはこのワークスペースを新たにいくつも作成することができるようです。画面右上の歯車マークをみると新規作成やインポート、エクスポートできることがわかります。新たに追加されたワークスペースはタブを使って自由に切り替えることができます。

image.png

ちなみにArcESBの画面上で複数作成されたワークスペースの実態は C:\ProgramData\ArcESB\Workspaces 内に保存されます。 ProgramData はプログラム用の隠しフォルダのため表示設定を行うか、エクスプローラ上で直接パスを入力してみてください。デフォルトのワークスペースは C:\ProgramData\ArcESB\data 配下になっているようです。なお、これらの保存先は設定ファイルで変更可能なようです。バックアップ時にはこのあたりの検討が必要になると思います。

コネクタ毎にフォルダが生成される

ワークスペースフォルダ配下に処理フロー作成時に利用したコネクタ名と同じ名前のフォルダが生成されます。このフォルダ配下に設定ファイル、ログ、送受信したデータが保持されるようです。ログファイルを直接確認したい場合にはこちらを確認することになると思います。

起点となるコネクタから処理は実行される

ArcESBでは様々なコネクタが用意されており、そのコネクタをドラッグ&ドロップで配置し、つなげることで処理フローを表現していくのですが、過去に私が利用していたツールでは処理フローの開始、終了位置を StartEnd といったもので表現されていたため開始位置は理解しやすかったのですが、ArcESBではそういったものは用意されていないため、直感的にどこから始まるのか?ということがイメージしづらかったです。
下図にある > が点線で囲まれていて、どこもつながっていない状態のコネクタから処理がスタートします。ひとつのワークスペースでこのような起点となるコネクタを複数配置できるので、同時にいくつも処理を走らせることができます。ただ、一般的にはひとつのワークスペースでひとつの起点となる処理でまとめるケースが多いようです。

image.png

コネクタの用途を理解して使い分ける

画面左側のメニューには複数のコネクタが表示されますが、いくつかの種類が用意されています。

  • 外部アプリケーションとの連携用
    • CData Driversを利用すると本当に無数に存在します。
  • データの変換用
    • CSV Map
    • XML Map etc...
  • 処理フロー系
    • File(ファイルの移動)
    • Copy(ファイルのコピー)
    • Schedule(スケジュール起動) etc...

カテゴリは CoreMFTEDIDataBaseOther となっていてCoreにはフロー系のものがあるので、こちらのカテゴリに属するコネクタを主に利用していくことになると思います。

コネクタ設定で行うことを理解する

コネクタをワークスペース上に配置し、選択すると画面右側からプロパティ設定画面が表示され、複数タブでこまやかな設定を行うことができます。

image.png

Settings

Settings タブでコネクタの基本的な設定を行います。連携用のコネクタであれば接続情報や取得するデータのスキーマ、取得条件等。変換用だとマッピングルール、処理フロー系だと対象なるパスの設定など、コネクタの基本的な設定を行う部分です。

Automation

Automation タブで処理の起動タイミングを設定していきます。処理の起点となる場合には起動タイミングの設定を行いますが、処理の中間のコネクタの場合は SendReceive などを自動で行うかのチェックを行うだけになります。デフォルトではチェック済みなのですが、何かのかずみで外してしまっている場合には処理がそこで止まってしまう可能性があるので、もし連携処理がうまく流れなかった場合、このチェックがされているのかどうかを確認するのもありだと思います。複数のコネクタがあるときはチェックが大変そうですね。

Input / Output

InputOutput タブでは処理フローの実行状況の確認や、Automationで設定した自動起動ではなく、開発時のテスト実行などの手動で処理フローを実行したい場合に利用します。
image.png

InputとOutputの考え方

コネクタのプロパティ設定には InputOutputがあるのですが、コネクタに対してどちらの処理方向がInputで、どちらがOutputになるのかがなかなかイメージできず悩みました。
例えば以下のようなCSVファイルからkintoneへデータを連携するような処理です。
image.png

①はフォルダからファイルを取得するというものなのでコネクタ的にはInputだとと考えたのですが、ここはOutputになるようです。Outputタブを確認するとちゃんとログも出力されています。
image.png
考え方としては連携先の立場で考えるということにしました。そうすると、フォルダの立場からいうと、ファイル出ていくので、Outputとなります。
同様に、②のkintoneへのデータ書き込みについても、kintone側から考えると、データが入ってくるのでInputとなります。ログを確認してみます。
image.png
Inputタブにだけログが出力されています。
ところが、下図のようなArcESB内のデータを処理するコネクタは通常通り、処理の順番で考えてしまえばよいようです。
image.png
CSVを取得するのでInputタブを確認し、
image.png

XMLを出力するのでOutputタブを確認します。
image.png

ワークスペースの保存を忘れずに

処理作成にはコネクタの設定をよく行うのでこの変更はすぐに保存しますが、ワークスペースそのものを保存するということを忘れることがあります。コネクタの設定を変更し、テスト実行したときにうまく動作しない場合には、ワークスペースの保存を念の為確認してみてください。画面右下に小さく以下のようなアイコンがあります。
image.png

最後に

使い慣れたらどうってことないことも最初は何がなんだかわかりません。
実際ここで書いてみると、なぜこんなことを悩んでいたんだろうかと思うのですが、同じように初めて触った方が少しでも迷わないようになればと思います。といってもまだまだ知らないことばかりなので、継続してメモを残していきたいと思います。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?