Commit dc010ac7 by huangfusuper

异常信息的捕获

parent 03f549ad
......@@ -13,6 +13,8 @@ public interface TaskAndLogServer {
* 添加失败日志,删除任务表的任务
* @param jobTask 任务节点
* @param isInner 虚节点
* @param taskError 节点本身是否异常
* @exception UnknownHostException ddd
*/
void addRunLogAndRemoveTask(JobTask jobTask,boolean isInner) throws UnknownHostException;
void addRunLogAndRemoveTask(JobTask jobTask,boolean isInner,boolean taskError) throws UnknownHostException;
}
......@@ -49,7 +49,7 @@ public class TaskAndLogServerImpl implements TaskAndLogServer {
}
@Override
public void addRunLogAndRemoveTask(JobTask jobTask, boolean isInner) throws UnknownHostException {
public void addRunLogAndRemoveTask(JobTask jobTask, boolean isInner,boolean taskError) throws UnknownHostException {
Date thisDate = new Date();
//删除任务节点
jobTaskService.removeMythJobTaskById(jobTask.getId());
......@@ -74,8 +74,14 @@ public class TaskAndLogServerImpl implements TaskAndLogServer {
jobTaskRunLog.setHandlerName(jobTask.getHandlerName());
jobTaskRunLog.setIsVirtual(jobTask.getIsVirtual());
jobTaskRunLog.setMapFlowId(jobTask.getMapFlowId());
if (taskError) {
jobTaskRunLog.setRunCode("2");
jobTaskRunLog.setRunMsg("节点执行时异常");
}else {
jobTaskRunLog.setRunCode("6");
jobTaskRunLog.setRunMsg("上级节点执行失败");
}
jobTaskRunLog.setRunParams(jobTask.getRunParam());
jobTaskRunLog.setRunCommand(jobTask.getRunCommand());
jobTaskRunLog.setRunType("2");
......
......@@ -6,6 +6,7 @@ import com.byit.enums.NodeNameEnum;
import com.byit.enums.ScheduleTypeEnum;
import com.byit.exceptions.SuperiorNodeRunException;
import com.byit.flowservice.NodeVerification;
import com.byit.job.exceptions.BusinessException;
import com.byit.model.JobTask;
import com.byit.model.JobTaskSchedule;
import com.byit.model.RunRecording;
......@@ -107,7 +108,7 @@ public class JobTaskThreadRunHelper extends BaseThreadRunHelper {
}catch (SuperiorNodeRunException se) {
//删除这个数据 并且添加到日志
try {
taskAndLogServer.addRunLogAndRemoveTask(jobTask,true);
taskAndLogServer.addRunLogAndRemoveTask(jobTask,true,false);
} catch (UnknownHostException e) {
e.printStackTrace();
}
......@@ -133,9 +134,15 @@ public class JobTaskThreadRunHelper extends BaseThreadRunHelper {
}catch (SuperiorNodeRunException se) {
//删除这个数据 并且添加到日志
try {
taskAndLogServer.addRunLogAndRemoveTask(jobTask,false);
taskAndLogServer.addRunLogAndRemoveTask(jobTask,false,false);
} catch (UnknownHostException e) {
e.printStackTrace();
log.error("-----------------节点执行时出现异常,{}----------",e.getMessage());
}
}catch (BusinessException businessException) {
try {
taskAndLogServer.addRunLogAndRemoveTask(jobTask,false,true);
} catch (UnknownHostException e) {
log.error("-----------------节点执行时出现异常,{}----------",e.getMessage());
}
}
}
......
......@@ -145,6 +145,7 @@ public class TaskThreadRunHelper extends BaseThreadRunHelper {
List<JobTaskRunLog> jobTaskRunLogList = jobTaskRunLogService.findJobTaskRunLogNotEndNodeByRunCodeCount(dependIdByNodeId, thisJobTask.getRunId());
if (CollectionUtil.isNotEmpty(jobTaskRunLogList)) {
if(CollectionUtil.isEmpty(dependIdByNodeId)){
throw new BusinessException(NodeRunStatusPropertyEnum.NODE_RELY_ERROR.getMsg());
}
//判断父类节点是否已经全部完成,只需要判断依赖节点的数目和查询出来的日志数据是否相同
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment