I have a hadoop map-reduce job running as a step in Oozie workflow. It is started using java action which implements org.apache.hadoop.util.Tool.
When the job is being killed for some reason I want to be able to email a notification which should contain the stacktrace if there was an exception during processing.
Currently I do it this way:
<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>
But all I receive is just:
Job execution failed, error message: [Job failed!]
Which is not very useful :) and I need to go and check all the nodes' logs by myself.
How can I get more specific messages? Should I catch my exceptions and wrap into some oozie-catchable one in the Tool, or just use something instead of ${wf:errorMessage...
Thanks