首页 > 解决方案 > 如何向事件网格自定义主题 Azure 发送事件网格订阅者逻辑应用响应

问题描述

我有基于服务总线的事件网格发布者逻辑应用程序、订阅者逻辑应用程序和事件网格自定义主题

每当我发布事件时,每次我都会得到 200 OK 响应。我想要一个重试机制,我应该只在订阅者成功处理时完成服务总线消息,并且事件网格应该知道订阅者响应的响应。

这是我回来的回应 在此处输入图像描述

在数据有效负载事件网格发布中添加了validationCode

在此处输入图像描述

从订阅者发送响应 在此处输入图像描述 ,这是我在主题订阅中的事件过滤器 在此处输入图像描述

如何在我的逻辑应用程序中将响应发送回事件网格发布者逻辑应用程序?

标签: azure-logic-appsazure-eventgrid

解决方案


事件网格不支持请求/响应类型的场景。您必须使用中间服务来处理响应,例如将响应发送到不同的服务总线队列。

在这种情况下,您可以利用消息延迟,其中在第一个逻辑应用程序中将延迟消息,同时在事件网格消息中传递消息的序列号。

第二个逻辑应用程序将处理该事件并将一条消息推送到响应队列中,其中包含它处理的消息的序列号以及成功/失败消息。

从响应队列中的消息触发的第三个逻辑应用程序将使用序列号获取消息并在成功时完成它。如果响应消息指示失败,您可以死信原始消息或根据您的方案重新排队。

另一种方法可能是直接调用第二个逻辑应用程序,除非除解耦之外的其他原因需要事件网格。


推荐阅读