跳到主要内容

错误触发节点#

通过错误触发节点可创建错误工作流。当其他关联工作流运行失败时,该节点将获取失败工作流及错误详情,并执行错误工作流。

使用方法#

  1. 创建新工作流,将错误触发节点作为首个节点
  2. 为工作流命名(例如Error Handler
  3. 点击保存
  4. 在需要使用此错误工作流的流程中:
    1. 选择选项 选项菜单图标 > 设置
    2. 错误工作流中选择刚创建的工作流(若命名为Error Handler,则选择Error handler
    3. 点击保存 此后当该工作流出错时,关联的错误工作流将自动运行

注意事项:

  • 包含错误触发节点的工作流无需手动激活
  • 默认情况下,包含错误触发节点的工作流会将自身作为错误工作流
  • 手动运行工作流时无法测试错误工作流,错误触发节点仅在自动工作流出错时运行

模板与示例#

浏览错误触发集成模板搜索所有模板

相关资源#

可通过停止并报错节点向错误触发节点发送自定义消息。

了解更多关于n8n工作流中错误工作流的说明。

错误数据#

错误触发节点接收的默认错误数据如下:

[
{
"execution": {
"id": "231",
"url": "https://n8n.example.com/execution/231",
"retryOf": "34",
"error": {
"message": "Example Error Message",
"stack": "Stacktrace"
},
"lastNodeExecuted": "Node With Error",
"mode": "manual"
},
"workflow": {
"id": "1",
"name": "Example Workflow"
}
}
]

所有信息始终存在,但以下情况除外:

  • execution.id:需要执行记录已保存至数据库。若错误发生在主工作流的触发节点则不存在此信息,因为此时工作流尚未开始执行。
  • execution.url:需要执行记录已保存至数据库。若错误发生在主工作流的触发节点则不存在此信息,因为此时工作流尚未开始执行。
  • execution.retryOf:仅当当前执行是对失败执行进行重试时存在。

若错误发生在主工作流的触发节点(而非后续阶段),发送至错误工作流的数据结构将有所不同:execution{} 中的信息会减少,而 trigger{} 中的信息会更丰富:

{
"trigger": {
"error": {
"context": {},
"name": "WorkflowActivationError",
"cause": {
"message": "",
"stack": ""
},
"timestamp": 1654609328787,
"message": "",
"node": {
. . .
}
},
"mode": "trigger"
},
"workflow": {
"id": "",
"name": ""
}
}