From bc5e5191332310155c4f7b8fedd06f9c3696a296 Mon Sep 17 00:00:00 2001 From: tyleryuwang Date: Fri, 2 Jul 2021 10:52:26 +0800 Subject: [PATCH] =?UTF-8?q?bugfix:=20=E4=BF=AE=E5=A4=8D=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=88=86=E5=8F=91=E4=BB=BB=E5=8A=A1=E6=89=A7=E8=A1=8C=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E7=9A=84=E9=97=AE=E9=A2=98=20#21?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../executor/AbstractGseTaskExecutor.java | 25 ++++++++++++++++--- .../engine/listener/GseStepListener.java | 6 ++--- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/executor/AbstractGseTaskExecutor.java b/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/executor/AbstractGseTaskExecutor.java index d2a2866732..1dc9cbda64 100644 --- a/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/executor/AbstractGseTaskExecutor.java +++ b/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/executor/AbstractGseTaskExecutor.java @@ -37,16 +37,33 @@ import com.tencent.bk.job.execute.engine.model.TaskVariablesAnalyzeResult; import com.tencent.bk.job.execute.engine.result.ResultHandleManager; import com.tencent.bk.job.execute.engine.result.ha.ResultHandleTaskKeepaliveManager; -import com.tencent.bk.job.execute.model.*; +import com.tencent.bk.job.execute.model.AccountDTO; +import com.tencent.bk.job.execute.model.GseTaskIpLogDTO; +import com.tencent.bk.job.execute.model.GseTaskLogDTO; +import com.tencent.bk.job.execute.model.StepInstanceDTO; +import com.tencent.bk.job.execute.model.StepInstanceVariableValuesDTO; +import com.tencent.bk.job.execute.model.TaskInstanceDTO; import com.tencent.bk.job.execute.monitor.metrics.ExecuteMonitor; import com.tencent.bk.job.execute.monitor.metrics.GseTasksExceptionCounter; -import com.tencent.bk.job.execute.service.*; +import com.tencent.bk.job.execute.service.AccountService; +import com.tencent.bk.job.execute.service.AgentService; +import com.tencent.bk.job.execute.service.GseTaskLogService; +import com.tencent.bk.job.execute.service.LogService; +import com.tencent.bk.job.execute.service.StepInstanceVariableValueService; +import com.tencent.bk.job.execute.service.TaskInstanceService; +import com.tencent.bk.job.execute.service.TaskInstanceVariableService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.springframework.util.StopWatch; -import java.util.*; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; /** * GSE任务执行基础类 @@ -263,7 +280,7 @@ protected GseTaskIpLogDTO buildGseTaskIpLog(String cloudAreaIdAndIp, IpStatus st protected Map buildReferenceGlobalVarValueMap(StepInstanceVariableValuesDTO stepInputVariables) { Map globalVarValueMap = new HashMap<>(); - if (CollectionUtils.isEmpty(stepInputVariables.getGlobalParams())) { + if (stepInputVariables == null || CollectionUtils.isEmpty(stepInputVariables.getGlobalParams())) { return globalVarValueMap; } stepInputVariables.getGlobalParams().forEach(globalParam -> { diff --git a/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/listener/GseStepListener.java b/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/listener/GseStepListener.java index 8bc34c698e..128932024a 100644 --- a/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/listener/GseStepListener.java +++ b/src/backend/job-execute/service-job-execute/src/main/java/com/tencent/bk/job/execute/engine/listener/GseStepListener.java @@ -81,14 +81,14 @@ public void handleMessage(@Payload StepControlMessage gseStepControlMessage, } else { log.error("Error gse step control action:{}", action); } - } catch (Exception e) { + } catch (Throwable e) { String errorMsg = "Handling gse step control message error,stepInstanceId:" + stepInstanceId; - log.warn(errorMsg, e); + log.error(errorMsg, e); handleException(e); } } - private void handleException(Exception e) throws MessageHandleException { + private void handleException(Throwable e) throws MessageHandleException { // 服务关闭,消息被拒绝,重新入队列 if (e instanceof MessageHandlerUnavailableException) { throw (MessageHandlerUnavailableException) e;