OozieワークフローのステップとしてHadoopmap-reduceジョブを実行しています。org.apache.hadoop.util.Toolを実装するJavaアクションを使用して開始されます。
何らかの理由でジョブが強制終了されたときに、処理中に例外が発生した場合にスタックトレースを含む通知を電子メールで送信できるようにしたいと思います。
現在、私はこのようにしています:
<action name="sendErrorNotifications">
<email xmlns="uri:oozie:email-action:0.1">
<to>some-dl@company.com</to>
<subject>Job execution failed ${wf:id()}</subject>
<body>Job execution failed, error message: [${wf:errorMessage(wf:lastErrorNode())}]</body>
</email>
<ok to="fail" />
<error to="fail" />
</action>
しかし、私が受け取るのは次のとおりです。
Job execution failed, error message: [Job failed!]
これはあまり役に立ちません:)そして私は自分ですべてのノードのログをチェックする必要があります。
より具体的なメッセージを取得するにはどうすればよいですか?例外をキャッチしてツールでoozieでキャッチ可能なものにラップするか、$ {wf:errorMessage..の代わりに何かを使用する必要があります。
ありがとう