我们需要一种方法来处理死信队列中的消息,但Azure服务总线资源管理器似乎不支持
application/vnd.masstransit+json
内容类型来重新发送所选消息。
评估了很少的方法,但找不到合适的指南来继续采用某种方法。
方法1
将死信队列消息转发到单独的队列。
我们无法在公共交通中找到在 IReceiveEndpointConnector 级别设置 ForwardDeadLetteredMessagesTo 的解决方案。
下面似乎是可能的,但我们希望它在队列范围而不是总线。
config.UsingAzureServiceBus((context, cfg) =>
{
cfg.ForwardDeadLetteredMessagesTo = "queue-name";
}
下面的好像不太可能。
IReceiveEndpointConnector handle = connector.ConnectReceiveEndpoint(subscriberName, (context, configurator) => {
configurator.ForwardDeadLetteredMessagesTo = "queue-name"; //Not Possible
}
方法2
使用(预定作业)死信消费者处理死信队列消息并将其推回主队列重试。找不到有关如何使用队列的死信子队列的文档。
上述方法的任何解决方案或任何其他更好的重新处理死信队列消息的方法都值得赞赏。