帮助文档

前往官网
最新更新时间:2023-05-08 16:29:44

简介

错误捕获(Try-Catch)组件由一个执行子流和一个或多个捕获错误子流组成。通过配置,可以捕获执行子流运行时抛出的错误和系统错误,也可与抛出错误组件搭配使用,捕获用户自定义错误。如果执行子流发生错误,将运行第一个匹配的捕获错误子流,如果没有匹配,则抛出错误到外层。

操作指引

连接说明

参数配置

参数数据类型描述是否必填默认值
事务枚举(无;本地事务)和 Database 组件搭配使用,执行失败时回滚数据库操作
错误类型string流执行过程中抛出的错误类型,通过下拉列表选择,支持任意多选,支持选择全部错误或者某一类错误
重试次数int发生此类错误时重试执行子流的次数(0-5次),每个捕获错误单独统计不重试
重试间隔int重试时两次执行的间隔(1-300秒)60

 

事务在开启错误捕获节点配置。

错误类型和重试在捕获错误节点配置。

数据预览

输入到子流中的 message

message 属性
payload继承错误捕获上一个组件的 payload
error继承错误捕获上一个组件的 error
attribute继承错误捕获上一个组件的 attribute
variable继承错误捕获上一个组件的 variable

输出

组件输出的 message 信息如下:

message 属性
payload
  • 执行子流正常运行,payload 的结果为执行子流输出的 payload。
  • 若抛出错误,且错误被捕获,则 payload 的结果为捕获错误子流输出的 payload。
  • 若抛出的错误未被捕获,则流终止运行。
error
  • 执行子流抛出错误,且未被捕获,或者捕获错误子流中抛出错误,则 error 保存了错误信息,为 dict 类型,包含“Code”和“Description”字段:“Code”字段表示错误类型,“Description”字段表示错误描述。
  • 否则 error 为空。
attribute
  • 执行子流正常运行,attribute 的结果为执行子流输出的 attribute。
  • 若抛出错误,且错误被捕获,则 attribute 的结果为捕获错误子流输出的 attribute。
  • 若抛出的错误未被捕获,则流终止运行。
variable
  • 执行子流正常运行,variable 的结果为子流输出的 variable。
  • 若抛出错误,且错误被捕获,则 variable 的结果为捕获错误子流输出的 variable。
  • 若抛出的错误未被捕获,则流终止运行。

案例

  1. 新增自定义错误类型请求失败。

  2. 当请求失败时,抛出该错误。

  3. 捕获该错误,执行重试策略,会重新执行执行子流中的 HTTP 请求,条件判断。重试后仍失败,则记录日志。

如果您在文档使用中遇到问题或者有改进建议,请点击 在线反馈