Commit 907d7119 by huangfusuper

测试一个异常

parent 56c4cfb2
......@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.byit.dto.executor.DispatchResponseDto;
import com.byit.dto.executor.JobRunResultDto;
import com.byit.dto.executor.ScriptDto;
import com.byit.dto.plugin.RunLog;
import com.byit.dto.web.ReturnResult;
import com.byit.enums.JobResultEnum;
import com.byit.executor.api.ScriptExecutorService;
......@@ -15,15 +16,18 @@ import com.byit.node.impl.RunScriptProcessingMachine;
import com.byit.pool.RunThreadPool;
import com.byit.rpc.remoting.provider.annotation.RpcService;
import com.byit.utils.ExecutorLogUtil;
import com.byit.utils.KeyUtil;
import com.byit.utils.RequestUtil;
import com.byit.utils.ServiceInfoUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import static com.alibaba.fastjson.serializer.SerializerFeature.WriteClassName;
/**
* 命令式方式执行的执行机
* @author huangfu
......@@ -36,6 +40,7 @@ public class ImperativeExecutionImpl implements ScriptExecutorService {
private final LogDataProcessingMachine logDataProcessingMachine;
private final RunScriptProcessingMachine runScriptProcessingMachine;
private final ParameterVerificationProcessingMachine parameterVerificationProcessingMachine;
private final StringRedisTemplate stringRedisTemplate;
private static final Integer NODE_RUN_SUCCESS_CODE = 0;
/**
......@@ -43,11 +48,12 @@ public class ImperativeExecutionImpl implements ScriptExecutorService {
*/
private static final Integer NODE_KILL_CODE = -100;
public ImperativeExecutionImpl(CommandAndScriptProcessingMachine commandAndScriptProcessingMachine, LogDataProcessingMachine logDataProcessingMachine, RunScriptProcessingMachine runScriptProcessingMachine, ParameterVerificationProcessingMachine parameterVerificationProcessingMachine) {
public ImperativeExecutionImpl(CommandAndScriptProcessingMachine commandAndScriptProcessingMachine, LogDataProcessingMachine logDataProcessingMachine, RunScriptProcessingMachine runScriptProcessingMachine, ParameterVerificationProcessingMachine parameterVerificationProcessingMachine, StringRedisTemplate stringRedisTemplate) {
this.commandAndScriptProcessingMachine = commandAndScriptProcessingMachine;
this.logDataProcessingMachine = logDataProcessingMachine;
this.runScriptProcessingMachine = runScriptProcessingMachine;
this.parameterVerificationProcessingMachine = parameterVerificationProcessingMachine;
this.stringRedisTemplate = stringRedisTemplate;
}
@Override
......@@ -102,6 +108,13 @@ public class ImperativeExecutionImpl implements ScriptExecutorService {
ReturnResult<String> returnResult = new ReturnResult<>();
returnResult.setCode(ReturnResult.FAIL.getCode());
returnResult.setMsg(ExecutorLogUtil.getMessage(e));
boolean isRunNode = scriptDto.getRunId().contains("REAL:EXEC:");
if(isRunNode) {
RunLog runLog = RunLog.builder().isEnd(true).isSuccess(false).runLog("调度执行机出现异常").build();
String runKey = KeyUtil.generateRunKey(scriptDto.getLogId());
//TODO 向队列队尾插入一个值
stringRedisTemplate.opsForList().rightPush(runKey, JSON.toJSONString(runLog, WriteClassName));
}
jobRunResultDto.setReturnResult(returnResult);
}
//设置结束时间
......
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