From 612e053cd9c1ef9a2c4b3aeb69e6fc2e29882e6f Mon Sep 17 00:00:00 2001 From: zeaslity Date: Wed, 8 Feb 2023 12:13:16 +0800 Subject: [PATCH] =?UTF-8?q?[=20server=20]=20[=20agent=20]-=20=20=E6=94=B6?= =?UTF-8?q?=E9=9B=86Agent=E7=9A=84=E7=89=88=E6=9C=AC=E4=BF=A1=E6=81=AF=20?= =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=AE=8C=E6=88=90=20-=202;=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0OpenFeign;=20=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../message/handler/OMHandlerExecutor.java | 1 + .../io/wdd/agent/executor/CommandExecutor.java | 1 + server/pom.xml | 9 ++++++++- .../io/wdd/rpc/agent/OctopusAgentService.java | 16 ++++++++++++++++ .../wdd/rpc/agent/OctopusAgentServiceImpl.java | 12 ++++++++++++ .../wdd/rpc/openfeign/AgentOperationFeign.java | 4 ++++ .../source/shell/function/load50cpu_2_hour.sh | 8 ++++---- 7 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 server/src/main/java/io/wdd/rpc/openfeign/AgentOperationFeign.java diff --git a/agent/src/main/java/io/wdd/agent/config/message/handler/OMHandlerExecutor.java b/agent/src/main/java/io/wdd/agent/config/message/handler/OMHandlerExecutor.java index 96765ad..7e1631b 100644 --- a/agent/src/main/java/io/wdd/agent/config/message/handler/OMHandlerExecutor.java +++ b/agent/src/main/java/io/wdd/agent/config/message/handler/OMHandlerExecutor.java @@ -48,6 +48,7 @@ public class OMHandlerExecutor extends AbstractOctopusMessageHandler { } ); + // add in 2023-1-17 if (CollectionUtils.isNotEmpty(executionMessage.getScriptCommandList())) { // 传递的是 页面定时任务脚本 diff --git a/agent/src/main/java/io/wdd/agent/executor/CommandExecutor.java b/agent/src/main/java/io/wdd/agent/executor/CommandExecutor.java index 79d6275..2e1d428 100644 --- a/agent/src/main/java/io/wdd/agent/executor/CommandExecutor.java +++ b/agent/src/main/java/io/wdd/agent/executor/CommandExecutor.java @@ -42,6 +42,7 @@ public class CommandExecutor { */ public void execute(ExecutionMessage executionMessage) { + // todo 需要长时间执行的任务 与目前的系统设计存在冲突 防卡死后台进程`出现问题 // 防止阻塞消息队列中的其他信息,需要使用异步执行 AgentCommonThreadPool.pool.submit( () -> this.execute( diff --git a/server/pom.xml b/server/pom.xml index fb2c740..b745c47 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -26,9 +26,16 @@ ${project.parent.version} - + + + + + org.springframework.cloud + spring-cloud-starter-openfeign + 2.2.9.RELEASE diff --git a/server/src/main/java/io/wdd/rpc/agent/OctopusAgentService.java b/server/src/main/java/io/wdd/rpc/agent/OctopusAgentService.java index b69bb90..c0c31d0 100644 --- a/server/src/main/java/io/wdd/rpc/agent/OctopusAgentService.java +++ b/server/src/main/java/io/wdd/rpc/agent/OctopusAgentService.java @@ -1,5 +1,7 @@ package io.wdd.rpc.agent; +import io.wdd.server.beans.vo.ServerInfoVO; + import java.util.Map; public interface OctopusAgentService { @@ -13,4 +15,18 @@ public interface OctopusAgentService { Map getAllAgentVersion(); + /** + * 获取所有Agent的核心信息,方便更新系统信息 + * + * @return agent-topic-name value -agentServerInfo + */ + Map getAllAgentCoreInfo(); + + + /** + * 执行 Agent 关键操作的接口 + * 关机 + * */ + String shutdownAgentDanger(String agentTopicName); + } diff --git a/server/src/main/java/io/wdd/rpc/agent/OctopusAgentServiceImpl.java b/server/src/main/java/io/wdd/rpc/agent/OctopusAgentServiceImpl.java index 40b8c73..b6def43 100644 --- a/server/src/main/java/io/wdd/rpc/agent/OctopusAgentServiceImpl.java +++ b/server/src/main/java/io/wdd/rpc/agent/OctopusAgentServiceImpl.java @@ -8,6 +8,7 @@ import io.wdd.common.beans.rabbitmq.OctopusMessage; import io.wdd.common.beans.rabbitmq.OctopusMessageType; import io.wdd.common.utils.TimeUtils; import io.wdd.rpc.message.sender.OMessageToAgentSender; +import io.wdd.server.beans.vo.ServerInfoVO; import io.wdd.server.config.ServerCommonPool; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -70,6 +71,17 @@ public class OctopusAgentServiceImpl implements OctopusAgentService { return result; } + @Override + public Map getAllAgentCoreInfo() { + return null; + + } + + @Override + public String shutdownAgentDanger(String agentTopicName) { + return null; + } + private void waitCollectAllAgentVersionInfo(HashMap result, LocalDateTime startTime) { CompletableFuture getAllAgentVersionInfo = new CompletableFuture<>(); diff --git a/server/src/main/java/io/wdd/rpc/openfeign/AgentOperationFeign.java b/server/src/main/java/io/wdd/rpc/openfeign/AgentOperationFeign.java new file mode 100644 index 0000000..9df0001 --- /dev/null +++ b/server/src/main/java/io/wdd/rpc/openfeign/AgentOperationFeign.java @@ -0,0 +1,4 @@ +package io.wdd.rpc.openfeign; + +public class AgentOperationFeign { +} diff --git a/source/src/main/java/io/wdd/source/shell/function/load50cpu_2_hour.sh b/source/src/main/java/io/wdd/source/shell/function/load50cpu_2_hour.sh index d3d7615..5a4a1a1 100644 --- a/source/src/main/java/io/wdd/source/shell/function/load50cpu_2_hour.sh +++ b/source/src/main/java/io/wdd/source/shell/function/load50cpu_2_hour.sh @@ -7,10 +7,10 @@ current_time=$(date +%s) elapsed_time=$((current_time - start_time)) -if [[ $(ps -ef | grep -v "color" |grep -c "/octopus-agent/shell/function/load50cpu_2_hour") -gt 0 ]]; then - log "已经存在CPU占用进程 !杀死该进程" - kill -9 $(ps -ef | grep -v "color" |grep "/octopus-agent/shell/function/load50cpu_2_hour" | awk '{print$2}') -fi +#if [[ $(ps -ef | grep -v "color" |grep -c "/octopus-agent/shell/function/load50cpu_2_hour") -gt 0 ]]; then +# log "已经存在CPU占用进程 !杀死该进程" +# kill -9 $(ps -ef | grep -v "color" |grep "/octopus-agent/shell/function/load50cpu_2_hour" | awk '{print$2}') +#fi log "开始执行CPU占用任务,占用时间为 2小时!"