数据流中的异常分为节点异常和全局异常。
|
异常类型 |
触发后结果 |
可选处理 |
|---|---|---|
|
节点异常 |
当前节点运行失败 |
中断流程并进入全局异常处理,或继续流程进入异常分支 |
|
全局异常 |
整个流程实例中断,流程实例返回 |
使用系统通知,或调用自定义 Python 脚本、数据流进行处理 |
节点异常的配置方式,详见节点高级配置中的异常处理。
当全局异常时,支持系统或自定义的后续异常处理,例如发送通知、数据回滚等,通知流程管理员及时干预、排查问题并恢复流程。
系统:固定模板的异常通知,支持邮件、企业微信、钉钉、飞书渠道
自定义:调用 Python 脚本元素或数据流元素,支持传递以Pipeline开头的预置变量。预置变量体系详见预置变量
支持向指定邮箱发送相关异常信息。
开启后允许选择通知范围:
最新版本发布人:即当前数据流元素,最近一次发布操作的操作用户的邮箱
外部接收人:输入具体的邮箱地址,多个地址需要用半角逗号,隔开
邮件内容为默认模板,示例如下:

DEMO 元素链接:查看邮件通知 DEMO
支持添加多个渠道的机器人。添加机器人时,需要为机器人命名,并输入 Webhook 地址,通过 Webhook 调用机器人。
目前支持的渠道包括:钉钉、飞书、企业微信。

钉钉和企业微信终端无需额外配置,直接展示推送内容,内容格式固定,涵盖数据流的以下信息:
元素名称
元素链接
实例 ID
实例名称
实例开始时间
异常节点名称
异常信息
飞书还需要自行配置机器人才能实现发送通知的功能,因此我们为飞书渠道提供了更丰富的数据。页面上可以预览数据格式,以便配置机器人。
以下是各渠道推送数据格式和 Webhook 文档,供开发人员参考。
企业微信(markdown 类型的消息):企业微信群机器人配置说明
{
"msgtype": "markdown", # 消息类型:markdown
"markdown": {
"content": "" # 符合 markdown 语法的消息内容
}
}
钉钉(markdown 类型的消息):钉钉自定义机器人发送消息说明
{
"msgtype": "markdown", # 消息类型:markdown
"markdown": {
"title": "数据流执行异常通知", # 首屏会话透出的展示内容
"text": "" # 符合 markdown 语法的消息内容
}
}
{
"data": {
"subject": "数据流【XX】 执行异常通知:XX数据流实例ID", # 消息标题
"content": "请联系数据流管理员进行异常处理\n实例名称: XX数据流实例\n开始时间: 1900-01-01 00:00:00}\n异常节点: 节点1,节点2\n异常信息: 异常1,异常2\n数据流元素: [点击跳转](当前数据流元素URL})", # 消息内容
"element_name": " XX数据流实例", # 异常数据流元素名称
"element_url": "当前数据流元素URL", # 异常数据流元素链接
"run_id": "XX数据流实例ID", # 异常的数据流运行实例ID
"run_name": "XX数据流实例", # 实例名称
"start_time": "1900-01-01 00:00:00", # 异常实例的运行开始时间
"node_name": [
"节点1",
"节点2"
], # 导致异常的节点名称
"node_code": [
"code1",
"code2"
], # 导致异常的节点编码
"error_msg": [
"异常1",
"异常2"
] # 异常信息
}
}
在自定义分组下,添加【Python 脚本】,添加后,可以选择 Python 脚本元素并配置传参,配置方式参考节点PY 脚本。
可使用的预置变量为 Pipeline 级别的变量。
当多个节点同时触发全局异常时,自定义 Python 脚本会按异常触发次数执行。
举例,编排了 3 个并行节点,3 个节点都异常,并都触发了全局异常,全局异常处理调用了自定义 Python 脚本:

那么自定义 Python 脚本会被触发 3 次。以其中一次为例,Python 脚本执行记录可以在作业管理中查看:

DEMO 元素链接:查看 Python 脚本 DEMO
在自定义分组下,添加【数据流】,添加后,可以选择数据流 3.0 元素并配置传参,配置方式参考节点数据流。
与全局异常处理选择自定义 Python 脚本同理,可使用的预置变量也为 Pipeline 级别的变量,尤其常使用Pipeline.error下的变量,用于说明异常信息,例如发生异常的节点、错误栈等。
当多个节点同时触发全局异常时,自定义数据流会按异常触发次数执行。

举例,全局异常时,需要发送自定义邮件通知,可见此 DEMO:查看数据流通知 DEMO
需要配置:
平台消息模板
用于通知的数据流
主数据流全局异常时,调用通知的数据流,传参
效果:

回到顶部
咨询热线
