Talend ロギング・モニタリング

 


🧪 1. Talendでデータをデバッグする方法

✅ やること:

データ処理の途中結果を確認する方法を学びます。

📌 ポイント:

  • 通常、tLogRowを使って確認していたけど、毎回配置するのは面倒。

  • 「Debug Run → Traces Debug」を使えば、接続の途中でどんなデータが通ったか可視化できる。

🧰 やり方:

  1. 「Debug Run」タブに切り替える。

  2. 「Traces Debug」をクリック。

  3. 接続線上に"虫メガネマーク"が現れ、通ったデータ(入力・出力)を確認できる。

  4. 途中で停止(Pause)、再開(Resume)も可能。

💡 補足:

これはリアルタイムでデータの流れを確認できる便利な機能です。複雑な処理の途中で「何がおかしいのか」を見つけるのに役立ちます。


2. Talendでアサーション(条件チェック)をテストする方法

📌 アサーションとは?

→ 「期待する条件を満たしているかどうか」をチェックする機能。

使用コンポーネント:

  • tAssert:条件のチェックを行う。

  • tAssertCatcher:チェック結果を受け取って表示。

例:

「売上データが40件以上あること」を条件にアサートを作成。

((Integer)globalMap.get("tRowGenerator_1_NB_LINE")) >= 40

実行結果:

  • 条件を満たしていれば:OK

  • 満たしていなければ:Test logically failed

💡 補足:

  • tAssertはテストの自動化や信頼性チェックに使える。

  • 条件が満たされない場合、ジョブがエラーを出さなくても警告として知らせてくれる


📊 3. Talendでデータ量(ボリューム)をログ出力する方法

使用コンポーネント:

  • tFlowMeter:データ件数をカウント。

  • tFlowMeterCatcher:その情報を取得・表示。

使い方:

  1. 複数のデータフロー(tRowGenerator)を作る。

  2. tFlowMeterを挟んで、どのくらいの行数が通っているか確認。

  3. tFlowMeterCatcherでまとめてログ表示。

💡 補足:

  • 入力合計件数 = 出力件数、などの確認が可能。

  • ジョイン処理やフィルタの影響を見るのにも便利。


⚠️ 4. Talendでエラーと警告をログに出力する方法

使用コンポーネント:

  • tWarn:警告メッセージを出す。

  • tDie:エラーを発生させてジョブを停止。

  • tLogCatcher:上記の内容をまとめてログに記録。

使い方:

  • ファイルが存在しなければ tDie で停止。

  • ファイルが存在すれば、ファイル数を tWarn で警告として出力。

  • どちらも tLogCatcher でキャッチしてファイルなどに出力できる。


📈 5. Talendで実行情報(開始・終了・処理時間など)をログに記録する方法

使用コンポーネント:

  • tStatCatcher:ジョブやコンポーネントの開始・終了・処理時間を記録。

設定方法:

  • 各コンポーネントの「Advanced settings」にてtStatCatcher StatisticsをONにする。

ログに記録される情報:

  • 処理の開始・終了時刻

  • 成功・失敗

  • 所要時間(ms)

  • どのコンポーネントで記録されたか(origin)


📁 6. Talendでジョブ単位のログを出力する方法(ジョブの詳細ログ)

使用キャッチャー4種:

  • tAssertCatcher

  • tFlowMeterCatcher

  • tLogCatcher

  • tStatCatcher

実行方法:

  • それぞれのキャッチャーに出力を接続し、logDirフォルダにファイル出力設定。

  • 失敗した場合も含め、各種ログファイル(assert、flow、error、statなど)が保存される。

補足:

  • tDieでエラーが起きた場合でもログは記録される。

  • pidなどのプロセスIDも記録され、親子関係の確認も可能。


🛠 7. Talendで「より良い」ジョブログを出力する方法

改善点:

  • 各キャッチャー + 出力ファイルを個別に設定せずに済むように、ジョブ設定でログ出力の場所や形式を一括管理できる。

方法:

  1. 「ジョブ」タブ → 「Stats & Logs」サブタブへ。

  2. Use project settingsをOFFにして、出力先やログの種類を設定。

  3. 各種ログファイル(log、meter、statsなど)を自動出力。


🧩 8. Talendでプロジェクト単位のログ設定を使う方法

内容:

  • 先ほどの「Stats & Logs」設定をプロジェクト全体に反映させることで、どのジョブでも一貫したログ出力ができる。

手順:

  1. 「Job」タブ → 「Stats & Logs」で設定完了。

  2. 「Save to project settings」でプロジェクト全体に保存。

  3. 他のジョブでは「Reload from project settings」でその設定を読み込み可能。

  4. Edit project propertiesJob Settings でも設定可能。


🔚 まとめ

機能使うコンポーネント目的
データ確認Debug Run + Traces Debugフロー途中のデータを確認する
条件のチェックtAssert, tAssertCatcher条件を満たすか検証
データ量の記録tFlowMeter, tFlowMeterCatcher入出力件数のチェック
エラー・警告の記録tWarn, tDie, tLogCatcherエラー・例外・警告のログ化
実行ログ(開始・終了)tStatCatcher処理時間や成功・失敗を記録
ジョブログの一括出力各種キャッチャー + 出力先指定ジョブ単位でログをファイルにまとめる
ジョブログのスマート管理ジョブ設定 → Stats & Logsログ出力の一元管理
プロジェクト全体のログ設定Project Settingsすべてのジョブに共通設定を適用できる


前の記事:Talend ジョブオーケストレーションについて

次の記事:Talend ベストプラクティスと文書化