2

我有一个发布大量事件的事件网格,以及一个需要使用其中一些事件的逻辑应用程序。不能保证这些事件是有序的,需要先处理另一个事件的事件可能会过早地出现在逻辑应用程序中,从而导致它们失败。
从文档中,我可以看到事件网格支持重试策略,时间间隔越来越长。这将解决我的问题。
但是,似乎有问题的逻辑应用程序总是从事件网格中确认事件,即使该进程提前停止,Terminate 操作处于失败状态并带有错误代码。
从逻辑应用概述中,运行显示为失败。但是事件网格从不尝试重试,并且似乎认为事件是成功的。如何使事件网格重试失败的逻辑应用运行?

4

2 回答 2

1

似乎一旦Azure logic app触发了,Azure event grid就认为处理了中的事件。

我认为您可以在Azure logic app失败的步骤配置重试策略,请参阅重试策略

在此处输入图像描述

Httpaction为例:</p>

你可以点击···右上角的Httpaction,然后点击Settings,在下面选择你想要的类型Retry Policy:</p>

在此处输入图像描述

于 2020-12-02T05:51:41.913 回答
0

事件网格将根据您终止逻辑应用的方式重试。如果您使用 http 响应操作(状态代码 500)终止,则事件网格将尝试重试。

现在,根据您的 Logic 应用程序中发生的情况,处理失败的方式是它在 HTTP 响应操作上终止,状态码为 500。

于 2021-07-15T20:11:15.803 回答