ファイル転送のしくみ

HULFT IoTでは、監視対象にするファイルと転送条件を組み合わせて、HULFTへのファイル転送を設定します。Agentは、IoT機器にある監視対象になっているファイルを、一定の間隔で確認します。ファイルが指定された転送条件に合致していた場合、AgentはそのファイルをHULFTへ転送します。

ファイル転送の流れ

HULFT IoTのファイル転送の流れを次の図に示します。

図2.1 HULFT IoTのファイル転送の流れ

1. 機器からの情報によって、ファイルが更新されます。

2. Agentは監視対象ファイルの状態を定期的に監視します。

3. Agentが転送条件に合致しているファイルを検知します。(トリガー発火)

4. AgentはファイルをHULFTに転送します。

5. AgentはHULFTからの応答を、エージェント動作設定画面の[ソケットリードタイムアウト]に指定された時間が経過するまで待ちます。

6. HULFTは、Agentに応答を返します。

(1) プロファイルの「転送設定」

監視対象ファイル、転送条件、および転送順序の組み合わせを、HULFT IoTでは「転送設定」と呼びます。「転送設定」は、プロファイル転送設定画面で指定します。ユーザーは、一つの「プロファイル」に複数の「転送設定」を作成することで、同じファイルを異なる条件で監視できます。

監視対象ファイルの指定

ファイル名を指定して特定のファイルだけを監視します。パス名を指定したり、ファイル名にワイルドカードとしてアスタリスク(*)を使用すれば、ディレクトリ直下の複数のファイルを監視することもできます。

転送条件の指定

ファイルをHULFTに転送するタイミングを指定します。「転送設定」ごとに、次のどちらか一方を指定できます。

  • ファイルが一定のサイズに到達していた場合に転送する。
  • ファイルの最終更新日から一定の期間が経過していた場合に転送する。
注意

サイズを指定した場合、監視期間中に条件を満たすサイズに到達したことがあっても、Agentがファイルの状態を確認した瞬間に条件を満たしていなければ、HULFTには転送されません。

ディレクトリ内で複数のファイルを監視していても、条件に合致したファイルだけが転送されます。

注意

条件に合致しているファイルは、監視対象のディレクトリから削除されない限り、Agentがファイルの状態を確認するたびに、同じファイルであってもHULFTに転送されます。

HULFTへの転送が完了したファイルは削除するように「転送設定」で指定するか、または正常時ジョブでファイルを削除してください。

転送順序の指定

同じトリガー発火タイミングで複数のファイルをHULFTに転送するとき、転送順序を指定できます。「転送設定」ごとに、検索対象と昇順・降順の組み合わせを次のように指定できます。

  • ファイルの更新日時を検索対象にして、昇順に転送する。

    古いファイルから順に転送されます。

  • ファイルの更新日時を検索対象にして、降順に転送する。

    新しいファイルから順に転送されます。

  • ファイル名を検索対象にして、昇順に転送する。

    例えば、A.txt、B.txt、C.txtの順に転送されます。

  • ファイル名を検索対象にして、降順に転送する。

    例えば、C.txt、B.txt、A.txtの順に転送されます。

更新日時を検索対象にするか、ファイル名を検索対象にするか、プロファイル転送設定画面の[検索対象]で指定します。同様に、昇順に検索するか、降順に検索するかを[検索順序]で指定します。

[検索対象]と[検索順序]は、「転送設定」ごとに有効です。

例えば、転送設定Aと転送設定Bで、どちらも[検索対象]に[ファイル名]を指定し、[検索順序]に[昇順]を指定した場合、転送設定Aが監視対象にしているファイル名の昇順、転送設定Bが監視対象にしているファイル名の昇順で、それぞれ転送します。このため、Agentが処理する転送設定の順番によっては、転送されるファイルのファイル名の順番が前後します。

転送設定Aで転送対象になったファイルと、転送設定B で転送対象になったファイルがそれぞれ複数あったとき、転送設定と転送順序の関係は、次の図のようになります。

図2.2 転送設定と転送順序の関係

[検索対象]に[更新日時]を指定した場合も同様です。Agentが処理する転送設定の順番によって、転送されるファイルの更新日時の順番が前後します。

転送設定Aと転送設定Bのトリガーが同時に発火した場合でも、転送設定ごとに転送されますので、上記のとおりファイル名や更新日時の順番が前後することがあります。

配信多重度と検索順序の組み合わせ

複数の転送設定のトリガーが同時に発火したとき、「配信多重度」の制限にかかって、次のトリガー発火まで転送が持ち越されるファイルが発生する場合があります。この場合、プロファイル転送設定画面の[検索順序]を指定していても、Agentが転送設定を処理した順番によっては、先に転送したいファイルが転送されずに、Agentに残ることがあります。

この場合は、次のような対策を検討してください。

  • 複数の転送設定のトリガーが同時に発火したときでもすべてのファイルを転送できるよう、エージェント動作設定画面で[配信多重度]を変更する。
  • 異なるタイミングでトリガーが発火するように、転送設定ごとに、プロファイル転送設定画面で[監視間隔]を変更する。

「配信多重度」については、「(2) Agentの「動作設定」」を参照してください。

(2) Agentの「動作設定」

エージェント動作設定画面では、HULFTへファイルを配信するときのAgentの動作を設定します。

ソケットリードタイムアウトの指定

Agentは、指定された時間が経過してもHULFTからの応答が来ない場合には、HULFTとの通信エラーが起きたと判断します。この待ち時間を「ソケットリードタイムアウト」と呼びます。エージェント動作設定画面で[ソケットリードタイムアウト]を設定します。

自動再配信の指定

HULFTと通信エラーが起きても、Agentは自動的にファイルをHULFTに再配信します。エージェント動作設定画面で[自動再配信リトライ回数]と[自動再配信リトライ間隔]を設定します。

再配信は、転送が中断された個所から転送する「チェックポイント再配信」で実施します。なお、「チェックポイント再配信」は、集信側のHULFTで条件が満たされていないとできません。1つでも条件が満たされていないときは、先頭からの再配信になります。

詳細については、HULFTの「オペレーション マニュアル」を参照してください。

配信多重度の指定

Agentが同時に起動する、配信プロセス(huliotsendプロセス)の最大数を設定できます。この最大数を「配信多重度」と呼びます。

Agentが同時に起動する配信プロセスの最大数が、Agentが同時にHULFTへ配信するファイルの最大数となります。同時に起動する配信プロセスの数が多いほど、一度に配信するファイルの数が多くなり、システムや回線への負荷も大きくなります。「配信多重度」はエージェント動作設定画面で設定します。現在使用しているシステムの状態に合わせて、適切な値に設定してください。

Agent内の転送ファイルの数がエージェント動作設定画面で設定した[配信多重度]を超えた場合、Agentは超えた分の転送ファイルを、プロファイル転送設定画面で指定された[監視間隔]が経過したあとの、次回のトリガー発火タイミングに持ち越します。

[配信多重度]の変更は、AgentがManagerにポーリングしたときに検知され、反映されます。

  • Agentの動作中に[配信多重度]を減少させた場合:

    配信中のファイルの数が[配信多重度]より少なくなるまで、新しい配信プロセスは起動されません。この場合、配信多重度を超えている分のファイルの配信が終了するまで一時的に、起動中の配信プロセスの数が[配信多重度]を超えることがあります。

  • Agentの動作中に[配信多重度]を増加させた場合:

    次のファイルを配信するとき、Agentは新しい[配信多重度]を適用します。