Ich habe eine Java-Aktion auf Oozie ausgeführt. Ich möchte eine vollständige Java-Ausnahme erhalten, falls diese Java-Aktion fehlschlägt. Die Java-Aktion verwendet einfach eine JAR-Datei. Hier ist die Java-AktionGet Ausnahme StackTrace als Ausgabe von Oozie Java Aktion
<workflow-app name='proj-wf' xmlns="uri:oozie:workflow:0.2">
<start to='startIndex'/>
<action name='startIndex'>
<java>
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<prepare>
</prepare>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<main-class>com.myproj.MyDriverJob</main-class>
<arg>-Dlww.commit.on.close=true</arg>
<capture-output/>
</java>
<ok to='end'/>
<error to='end'/>
</action>
<kill name='kill'>
<message>Java failed, error message[${wf:errorMessage(wf:lastErrorNode())}] </message>
</kill>
<end name='end'/>
</workflow-app>
Wie sendet es den Fehler in meiner Java-Klasse zurück. Ich bin auf der Suche nach einer Möglichkeit, die Ausnahme StackTrace zurück zu meinem Server zu senden.
Sie können einfach die Hadoop-Protokolldatei anzeigen, um die Ausnahme-Stack-Ablaufverfolgung anzuzeigen. –
@Asankasanjaya aktualisiert die Frage. Ich bin auf der Suche nach einer Möglichkeit, Exception Stacktrace zurück zu meinem Server zu senden. – 100rabh
Was meinst du genau mit _ "my server" _> meinst du hinzufügen in das Oozie Job Log (nicht machbar AFAIK), oder sende eine Warnung an eine benutzerdefinierte Monitoring App mit dem Stack als Payload (nicht machbar von YARN AFAIK) ? –