そこで、質問です。
集信にて、一IDで複数のデータを時間差で受信しております。
(時間差:30秒、1データのサイズ:1KBレベル)
そして、そのIDでデータ受信を正常に完了した後に後続ジョブを設定しており、
そこでは、単純にファイルを移動するBATを起動しております。
そこで、たまにエラーとなる事象が発生します。
そのIDでデータ受信完了後(完了コード=0)にジョブが起動されない時があります。
上記で記載したように、一IDにて複数のデータが配信されてくる為、後続ジョブが
起動されファイルが移動されないと、次のデータの際に"既にファイルが存在します"
のエラーとなってしまいます。
正常時だとデータ受信完了後、直ぐに(1秒未満)後続ジョブが起動されます。
データ受信完了(完了コード=0)はデータがHDに正常に保存された際の完了ステータス
ですよね。
毎日では無いのですが、たまに発生する事象です。
何が原因なのでしょうか。
何かご存知の方がいれば、解決策を教えて頂きたいです。
どうぞ、よろしくお願い致します。
-------------------------------------------------------------------
バッチファイルということは、集信側はWindows版HULFTですね。
> たまにエラーとなる
集信は"0"で正常終了しているなら、集信後正常時ジョブで
エラーとなっている、ということでしょうか。
ジョブがエラーとなっている場合、ジョブの終了ステータスから、
何らかの原因がわかるかもしれません。
(終了ステータスは、集信履歴から確認できます)
> 毎日では無いのですが、たまに発生する事象です。
どのくらいの頻度で発生するのでしょうか。
また、発生する時間帯や頻度に規則性はあるのでしょうか。
規則性がある場合、該当の時間帯に行っている処理についても、
確認してみてください。
例)ウィスルスキャンを行っている等。
> 次のデータの際に"既にファイルが存在します"
「既にファイルが存在する」ならば、ファイルは正常に集信できていますね。
集信後ジョブにてファイルのリネームに失敗しているように見受けられますので、
集信後ジョブの終了ステータスを確認しないと、原因は分かりかねます。
エラーコードなどを記載していただければ、解決策をご提示することが
できるかもしれません。
まず、前提として、集信ファイル名、または集信後ジョブのファイルの
移動先には共有ディスク上のファイルを指定していませんか。
HULFT6では、ネットワークドライブなどローカル以外の場所のファイルを
指定することは動作保証外となります。
-------------------------------------------------------------------
ネットワークドライブ上にファイルを移動させる処理をしている場合、
原因切り分けのためにローカルドライブ上に移動させる処理に変更し、
同様のエラーが発生するかを確認してください。
> 集信履歴を見て、ファイル重複以外のエラーはありません。
ファイル重複のエラーになる原因は「集信後ジョブで集信ファイルを移動する
ことができなかった」ことと思われます。
もしかしたら、HULFT6の障害の可能性もありますが、Windows版のHULFT6で「集信後
ジョブが遅延する」という内容の障害があったかどうか、恐縮ですが存じ上げておりません。
※HULFT6の障害の内容は、リリース文書に記載されています。
なお、今後原因を追求するためには、再現時のデバッグログを取得する必要があるかもしれません。
Hulcon.logからは、ジョブの開始時間と終了時間を確認して、集信後ジョブが
どのくらい遅延していたのかを確認することは可能です。
しかし、具体的にどのような処理で、どれくらい時間がかかっていたか、
ということまではHulcon.logでは分からないため、原因を追求することは
難しいと思います。