tLogCatcher コンポーネントを使ったエラー処理

メモ:

tLogCatcher コンポーネントを使って、エラーが発生時にメールでお知らせしてくれるよう実装してみます。

確認環境:

  • Talend Open Studio 6.3

tLogCatcher コンポーネントの使い方

Talend では、何かしらの処理が実装されている中で、どこかで発生するエラーを捕まえる為に tLogCatcher というコンポーネントが用意されています。

エラー処理を実装するには、パレットビューから「ログ & エラーハンドリング」にある 「 tLogCatcher 」 を選択しジョブビューへコンポーネント配置します。

tLogCatcher コンポーネントを配置

tLogCatcher は、ジョブのどこかで発生したエラーの全てを捕捉してくれるため、どこかのコンポーネントから繋がってくるということはありません。

次に補足したエラー情報をメールで送信するため、パレットビューから「インターネット」-「 tSendMail 」を選択しジョブビューへコンポーネントを配置します。(ここでは、メールで送信したいので tSendMail コンポーネントを使っています。)

配置した2つのコンポーネントを[ロウ] - [Main]で繋げ補足したエラー情報が tSendMail へ渡るようにします。

tLogCatcher と tSendMail

配置した tSendMail コンポーネントにメール送信に必要な情報を設定していきます。

tSendMail に必要項目の設定

tLogCatcher コンポーネントから取得可能な情報は、組み込みスキーマとして次のように定義されているため必要な情報を tSendMail コンポーネントのメッセージで送信できるよう設定します。

COLUMN 内容
moment 補足した日時
pid ジョブのプロセスID
root_pid ルートプロセスID
father_pid 親プロセスID
project プロジェクト名
job ジョブ名
context ジョブの実行に使用されるコンテキスト
priority メッセージの優先順
type メッセージタイプ
origin エラーが発生したコンポーネント名
message エラーメッセージ
code エラーレベル

メッセージ設定例:

"Job:" + row6.job + "\n" + "Origin:" + row6.origin + "\n" + "Message:" + row6.message

以上で設定は完了です。エラー処理が追加されたジョブのイメージは、次のようになります。これで、何かしらのエラーが発生すると指定したメールアドレスにエラーメッセージが届くようになります。

エラー処理されたジョブのイメージ