getジョブ使用時の「ファイルなし」エラーについて
回答済みgetジョブを利用したジョブフローを作成しております。
getジョブのremote_pathパラメータに、存在しないファイル名を指定した場合、
「ファイルなし」エラーは検知できますでしょうか?
また、検知できない場合、「ファイルなし」エラーチェックはどのようにすればよろしいでしょうか?
<ジョブフロー内容>
{ try |
[__conntype__='winrs',
__host__='リモートのIPアドレス',
__user__='ユーザID',
__password__='パスワード']
->get(remote_path='リモートのファイルパス', local_path='ローカルの保存先パス')
=> [status = $STATUS, result = $RESULT]
-> { if status != 0 |
#ファイルが存在しない場合の異常が検知できない。
then:
print('get failed. status code is %code.' % status)
else:
print('get success.')
}
}
-
正式なコメント
フィックスポイント開発部の髙橋です。
現状では get() ジョブでファイルの取得に失敗したときに、その原因の詳細をジョブフローで判別することはできません。(ログファイル /var/log/kompira/kompira_jobmngrd.log にエラーの原因が記録されている場合はあります)
また、get() ジョブの失敗時は $STATUS が -1 になりますので、例えば以下のように、結合子として => ではなく =>> をご利用いただければ、status は確認できるかと思います。
get(remote_path=remote_path, local_path=local_path) =>>
{ if $STATUS == 0 |
then: print("コピーに成功しました: ${$RESULT}")
else: print("コピーに失敗しました: ${$STATUS}")
}参考になさってみてください。
以上、よろしくお願いいたします。
コメントアクション
サインインしてコメントを残してください。
コメント
2件のコメント