From 41ad52c35f4e27daa2c9f38ed93a68006960c5ef Mon Sep 17 00:00:00 2001 From: "everywhere.z" Date: Wed, 20 Dec 2023 12:40:38 +0800 Subject: [PATCH] =?UTF-8?q?enhancement=20#I8PWWO=20CmpStep=E4=B8=AD?= =?UTF-8?q?=E5=8A=A0=E5=85=A5startTime=E5=92=8CendTime?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yomahub/liteflow/core/NodeComponent.java | 5 +++++ .../yomahub/liteflow/flow/entity/CmpStep.java | 21 +++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeComponent.java b/liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeComponent.java index 5d8c81c70..283de4216 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeComponent.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/core/NodeComponent.java @@ -8,6 +8,7 @@ package com.yomahub.liteflow.core; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.StopWatch; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; @@ -33,6 +34,7 @@ import com.yomahub.liteflow.monitor.CompStatistics; import com.yomahub.liteflow.monitor.MonitorBus; import java.lang.reflect.Method; +import java.util.Date; import java.util.Deque; import java.util.Map; import java.util.function.Predicate; @@ -104,6 +106,7 @@ public abstract class NodeComponent { cmpStep.setTag(this.getTag()); cmpStep.setInstance(this); cmpStep.setRefNode(this.getRefNode()); + cmpStep.setStartTime(new Date()); slot.addStep(cmpStep); StopWatch stopWatch = new StopWatch(); @@ -146,6 +149,8 @@ public abstract class NodeComponent { final long timeSpent = stopWatch.getTotalTimeMillis(); LOG.info("component[{}] finished in {} milliseconds", this.getDisplayName(), timeSpent); + cmpStep.setEndTime(new Date()); + // 往CmpStep中放入时间消耗信息 cmpStep.setTimeSpent(timeSpent); diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/entity/CmpStep.java b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/entity/CmpStep.java index f5eff5165..4bade848e 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/entity/CmpStep.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/entity/CmpStep.java @@ -14,6 +14,8 @@ import com.yomahub.liteflow.core.NodeComponent; import com.yomahub.liteflow.enums.CmpStepTypeEnum; import com.yomahub.liteflow.flow.element.Node; +import java.util.Date; + /** * 组件步骤对象 * @@ -29,6 +31,10 @@ public class CmpStep { private CmpStepTypeEnum stepType; + private Date startTime; + + private Date endTime; + // 消耗的时间,毫秒为单位 private Long timeSpent; @@ -219,4 +225,19 @@ public class CmpStep { this.tag = tag; } + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } }