LiteFlow LiteFlow
💒首页
  • v2.13.2(当前版本)
  • What's New

    • 🌈What' s New In LiteFlow v2.13.2?
  • 历史版本

    • v2.12.X
    • v2.11.X
    • v2.10.X
    • v2.9.X
    • v2.8.X
  • 升级指南

    • 🌈2.13.0升级指南
    • 2.12.4升级指南
    • 2.12.0升级指南
    • 升级到2.9.3说明
    • 升级到2.9.X说明
    • 升级到2.8.X说明
    • 升级到2.7.X说明
👑LF CLUB社区
  • 常见问题
  • 专题解释

    • 如何理解上下文这个概念?
    • Slot是一个什么样的概念,在框架中起到什么样的作用?
💖赞助
🧩插件
🔥PPT
  • 项目介绍
  • 项目成员
  • 更新记录
  • 参与开发
👥加入群聊
🧤谁在使用
  • Gitee (opens new window)
  • GitCode (opens new window)
  • Github (opens new window)

广告采用随机轮播方式显示 ❤️成为赞助商
💒首页
  • v2.13.2(当前版本)
  • What's New

    • 🌈What' s New In LiteFlow v2.13.2?
  • 历史版本

    • v2.12.X
    • v2.11.X
    • v2.10.X
    • v2.9.X
    • v2.8.X
  • 升级指南

    • 🌈2.13.0升级指南
    • 2.12.4升级指南
    • 2.12.0升级指南
    • 升级到2.9.3说明
    • 升级到2.9.X说明
    • 升级到2.8.X说明
    • 升级到2.7.X说明
👑LF CLUB社区
  • 常见问题
  • 专题解释

    • 如何理解上下文这个概念?
    • Slot是一个什么样的概念,在框架中起到什么样的作用?
💖赞助
🧩插件
🔥PPT
  • 项目介绍
  • 项目成员
  • 更新记录
  • 参与开发
👥加入群聊
🧤谁在使用
  • Gitee (opens new window)
  • GitCode (opens new window)
  • Github (opens new window)
  • 🍤LiteFlow简介
  • 🍓项目特性
  • 🍟快速开始(Hello world)

  • 🍢配置项

  • 🗂规则文件

  • 🔗常规组件

  • 🧩EL规则的写法

  • 🌮数据上下文

  • 🛩执行器

  • 🍋脚本组件

  • 🍇声明式组件

  • 🎲用代码动态构造规则

  • 🎨高级特性

    • 🍒前置和后置组件
    • 🥠替补组件
    • 🍉组件参数
    • 🍑组件别名
    • 🍍组件标签
    • 🥝组件事件回调
    • 🥑隐式子流程
    • 🍕私有投递
    • 🍣组件重试
    • 🍖平滑热刷新
    • 🍪组件切面
    • 🍡步骤信息
    • 🧊异常
    • 🧇打印信息详解
    • 🧁自定义请求Id
    • 🌭不同格式规则加载
    • 🥗异步线程池自定义
    • 🍿自定义组件执行器
    • 🍥简单监控
    • 🧉XML的DTD
  • ⛱测试用例以及示例

  • 🪂性能表现
  • v2.9.X文档
  • 🎨高级特性
铂赛东
2022-07-03

🍡步骤信息

LiteFlow为执行的过程提供了详细的步骤信息。

获取一条流程执行的步骤信息是通过LiteflowResponse对象来获取的:

LiteflowResponse response = flowExecutor.execute2Resp("chain1", "初始参数", CustomContext.class);
Map<String, CmpStep> stepMap = response.getExecuteSteps();
//或者你也可以通过以下的语句来获得一个步骤队列
Queue<CmpStep> stepQueue = response.getExecuteStepQueue();

以上这2个方法的区别是:

提示

获得Map返回值的那个方法,如果有多个相同的组件,那么以上这个方法获得的Map中这个组件id的value是最终的那个步骤信息。

而获得Queue<CmpStep>这个返回值的方法,返回值里包含了所有的步骤信息,相同的组件在规则里定义n次,那么这里也有n个步骤。

在CmpStep这个对象里,你可以通过以下方法获得你要的数据:

  • isSuccess:此组件是否执行成功
  • getNodeId:获得组件Id
  • getNodeName:获得组件名称
  • getTag:获得组件标签值
  • getTimeSpent:获得组件的耗时,单位为毫秒
  • getException:获取此组件抛出的异常,如果isSuccess为false的话。但是这里要注意下:有exception,success一定为false,但是success为false,不一定有exception,因为有可能没执行到,或者没执行结束(any的情况)。

提示

如果你的某一个组件抛出了异常,在默认配置情况下,流程会中断。那么response.getCause()和相应组件步骤里的exception都是一致的。且没执行的组件不会有相应步骤信息。

帮助我们改善此文档 (opens new window)
上次更新: 2023/03/17, 01:44:42
🍪组件切面
🧊异常

← 🍪组件切面 🧊异常→

Theme by Vdoing | Copyright © 2020-2025 铂赛东 | MIT License
沪ICP备18012955号-2
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式