You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2013/01/24 21:09:38 UTC
svn commit: r1438155 -
/uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java
Author: degenaro
Date: Thu Jan 24 20:09:38 2013
New Revision: 1438155
URL: http://svn.apache.org/viewvc?rev=1438155&view=rev
Log:
UIMA-2597 Job Driver (JD) now adds the Exception stack trace to jd.err.log for failing work items, facilitating user diagnosis of problem DUCC Jobs so encumbered.
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java?rev=1438155&r1=1438154&r2=1438155&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-jd/src/main/java/org/apache/uima/ducc/jd/JobDriver.java Thu Jan 24 20:09:38 2013
@@ -1172,7 +1172,7 @@ public class JobDriver extends Thread im
switch(directive) {
case ProcessContinue_CasNoRetry:
duccOut.info(location, workItem.getJobId(), workItem.getProcessId(), message);
- workItemError(workItem, directive);
+ workItemError(workItem, e, directive);
remove(workItem);
casSource.recycle(workItem.getCAS());
accountingWorkItemIsError(workItem.getProcessId());
@@ -1182,7 +1182,7 @@ public class JobDriver extends Thread im
break;
case ProcessStop_CasNoRetry:
duccOut.info(location, workItem.getJobId(), workItem.getProcessId(), message);
- workItemError(workItem, directive);
+ workItemError(workItem, e, directive);
remove(workItem);
casSource.recycle(workItem.getCAS());
accountingWorkItemIsError(workItem.getProcessId());
@@ -1277,15 +1277,19 @@ public class JobDriver extends Thread im
workItemError(workItem, e, null);
}
+ /*
private void workItemError(WorkItem workItem, Directive directive) {
workItemError(workItem, null, directive);
}
+ */
private void workItemError(WorkItem workItem, Exception e, Directive directive) {
String location = " workItemError";
driverStatusReport.countWorkItemsProcessingError();
String nodeId = "?";
String pid = "?";
+ DuccId djid = workItem.getJobId();
+ DuccId dpid = workItem.getProcessId();
try {
String key = ""+workItem.getCAS().hashCode();
if(casDispatchMap.containsKey(key)) {
@@ -1295,19 +1299,21 @@ public class JobDriver extends Thread im
pid = threadLocation.getProcessId();
}
}
- String workItemId = "seqNo:"+workItem.getSeqNo()+" "+"wiId:"+workItem.getCasDocumentText()+" "+"node:"+nodeId+" "+"PID:"+pid;
+ String message = "seqNo:"+workItem.getSeqNo()+" "+"wiId:"+workItem.getCasDocumentText()+" "+"node:"+nodeId+" "+"PID:"+pid;
+ if(directive != null) {
+ message += " "+"directive:"+directive;
+ }
+
+ duccOut.error(location, djid, dpid, message);
+ duccErr.error(location, djid, dpid, message);
if(e != null) {
- duccOut.error(location, workItem.getJobId(), workItem.getProcessId(), workItemId, e);
- duccErr.error(location, workItem.getJobId(), workItem.getProcessId(), workItemId, e);
- }
- else {
- duccOut.error(location, workItem.getJobId(), workItem.getProcessId(), workItemId+" "+"directive:"+directive);
- duccErr.error(location, workItem.getJobId(), workItem.getProcessId(), workItemId+" "+"directive:"+directive);
+ duccOut.error(location, djid, dpid, e);
+ duccErr.error(location, djid, dpid, e);
}
}
catch(Exception exception) {
- duccOut.error(location, workItem.getJobId(), workItem.getProcessId(), exception);
- duccErr.error(location, workItem.getJobId(), workItem.getProcessId(), exception);
+ duccOut.error(location, djid, dpid, exception);
+ duccErr.error(location, djid, dpid, exception);
}
}