質問
FTP更新処理でstatus = NGが発生した場合、ログレベル「WARN」で出力されるアップロード失敗メッセージ(remoteパスとlocalパス)をスクリプト内で取得するにはどうすればよいですか?
回答
FTP更新処理の出力スキーマを活用することで、ログに出力されるメッセージと同等の情報を取得できます。
出力スキーマの以下の属性から情報を取得できます。
pathname/@status:NG(アップロード失敗)
pathname/@remote:FTPサーバー上のパス
pathname/@local:HULFT Squareストレージ上のパス
取得手順は以下のとおりです。
1. FTP更新処理の後続にドキュメントMapperを配置する
2. 出力スキーマの pathname/@status が「NG」のレコードを条件でフィルタリングする
3. pathname/@remote および pathname/@local の値をスクリプト変数に格納する
4. 必要に応じて文字列を結合し、任意の形式でメッセージを生成する
補足
ログレベル「WARN」で出力されるアップロード失敗メッセージは、スクリプトとして「異常終了(例外)」ではなく「処理継続」の扱いとなります。このため、コンポーネント変数(error_message / error_type など)にはこのWARNメッセージの内容は格納されません。
コンポーネント変数(error_message / error_type など)は、コンポーネントが「例外」として異常終了した場合に格納される変数です。status = NGはスクリプト異常終了ではないため、これらの変数への格納は期待できません。
FTP更新処理コンポーネントで利用できるエラー関連のコンポーネント変数は以下です。
error_message:エラーのメッセージ
error_type:エラーの種類
error_trace:エラーのトレース情報
message_category:メッセージコードのカテゴリ
message_code:メッセージコードのコード
message_level:メッセージコードの重要度
参考リンク:[[FTP]更新](https://www.hulft.com/help/ja-jp/HULFTSquare/Content/Designer/Connector/ftp_modify_data.htm)
コメント
0件のコメント
記事コメントは受け付けていません。