Logic App Standard:启用后无法关闭 Trigger Concurrency
发布: (2025年12月12日 GMT+8 19:49)
3 min read
原文: Dev.to
Source: Dev.to
问题概述
在使用 Azure Logic Apps Standard 时,回滚工作流并尝试关闭先前配置的触发器并发限制可能会遇到问题。
- 触发器并发限制已在工作流中设置。
- 工作流能够正常运行。
- 在回滚时尝试移除并发配置会导致 保存 或 发布 操作失败。
错误示例
Trigger concurrency runtime configuration cannot be removed
产生原因
在 Logic Apps Standard 中,触发器并发被视为 运行时配置。一旦启用:
- 该配置即为不可变。
- 不能关闭。
- 回滚到没有并发设置的工作流版本会被阻止。
这是平台的预期行为。
影响
- 删除并重新创建不含并发限制的 Logic App 工作流可以解决此问题,但这会 删除整个运行历史,导致运营和审计连续性中断。
- 在许多生产环境中,丢失运行历史是不可接受的。
变通方法:编辑已部署的 workflow.json
可以在不删除 Logic App 或丢失运行历史的情况下,使已部署的工作流与 Azure 锁定的运行时配置保持一致。
步骤
-
在 Azure 门户中打开 Logic App
Azure Portal → Logic App Standard -
启动高级工具(Kudu)
- 点击 Advanced Tools → Go。
-
打开调试控制台
- 选择 PowerShell 或 CMD。
-
定位工作流文件
site/wwwroot/.../workflow.json -
移除触发器并发配置
找到runtimeConfiguration部分并删除concurrency块,例如:{ "runtimeConfiguration": { "concurrency": { "runs": 5 } } }删除后,该部分应完全省略或保持为空。
-
保存文件。
-
重启 Logic App(如有必要)以使更改生效。
可视化帮助
以下 GIF 演示了使用 Kudu 控制台编辑工作流的过程:
(在此插入 GIF 或截图)
总结
- 通过门户启用后,触发器并发无法关闭。
- 回滚移除并发的工作流会失败。
- 直接编辑已部署的
workflow.json可以删除运行时配置,使回滚成功,同时保留原有运行历史。
参考资料
- Sandro Pereira 对平台限制的详细说明。