手动执行、部分执行与生产环境执行#
n8n 在手动执行(通过点击 测试工作流 按钮)和自动执行(当工作流处于 激活 状态并由事件或计划触发时)工作流时存在一些重要区别。
手动执行#
手动执行允许您直接从画布运行工作流来测试工作流逻辑。这些执行是"临时性"的:仅当您手动选择 执行工作流 按钮时才会运行。
手动执行通过允许您按照流程逻辑逐步测试并查看数据转换,使构建工作流变得更加容易。您可以通过提供不同的输入项和修改节点选项来测试条件分支、数据格式更改和循环行为。
固定执行数据
在执行手动执行时,您可以使用数据固定来"固定"或"冻结"节点的输出数据。您还可以选择编辑固定的数据。
在后续运行中,n8n 将替换固定数据并继续遵循流程逻辑,而不是执行固定的节点。这使您能够在不对可变数据进行操作或重复查询外部服务的情况下进行迭代。生产环境执行会忽略所有固定数据。
部分执行#
在编辑器标签页的工作流底部点击执行工作流按钮会手动运行整个工作流。您也可以执行部分运行来只运行工作流中的特定步骤。部分执行是指仅运行工作流节点子集的手动执行操作。
要进行部分执行,请选择一个节点,打开其详细视图,然后选择执行步骤。这将执行特定节点以及填充其输入数据所需的任何前置节点。您还可以临时禁用工作流链中的特定节点,以便在构建时避免与这些服务交互。
部分执行在更新特定节点逻辑时特别有用,因为它允许您使用相同的输入数据重新执行该节点。
排查部分执行问题#
在执行部分工作流时,您可能会遇到以下常见问题:
目标节点未连接到任何触发器。部分执行需要触发器节点。
当您尝试执行未连接触发器的工作流部分时会出现此错误。手动执行(包括部分执行)会尽可能模拟生产环境执行流程,因此需要触发器节点来描述工作流逻辑的执行时机。
解决方法是将手动触发器连接到您尝试执行的节点所在的工作流中,这通常是最简单的解决方案。
请执行整个工作流而非单个节点。(现有执行数据量过大)
当对具有大量分支的工作流执行部分执行时可能出现此错误。部分执行需要以特定方式向n8n后端发送数据和逻辑,这种方式对完整执行不是必须的。当工作流超过消息允许的最大尺寸限制时就会触发此错误。
解决方法是在执行部分工作流时使用限制节点来限制节点输出。当工作流按预期运行后,您可以在启用生产环境执行前禁用或删除限制节点。
生产环境执行#
生产环境执行发生在触发事件或计划自动运行工作流时。
要配置生产环境执行,您必须附加一个触发器节点(除手动触发器外的任何触发器均可),并将工作流切换开关设为激活状态。一旦激活,每当触发条件满足时,工作流就会自动执行。
与手动执行不同,生产环境执行的流程不会显示在工作流的编辑器标签页中。相反,您可以根据工作流设置在工作流的执行记录标签页中查看执行情况。在那里,您可以使用编辑器调试功能来排查和解决问题。