【发布时间】:2020-05-02 00:13:27
【问题描述】:
我们正在使用 .Net Core/RabbitMQ/MassTransit,我有一个运行良好的 Consumer[OrderCreatedEvent]。
我想要一个错误恢复机制,在应用程序启动时,我想读取并从我的错误队列中删除消息。
是否可以从 MassTransit 的错误队列中读取并删除消息?
【问题讨论】:
标签: asp.net-core rabbitmq masstransit
我们正在使用 .Net Core/RabbitMQ/MassTransit,我有一个运行良好的 Consumer[OrderCreatedEvent]。
我想要一个错误恢复机制,在应用程序启动时,我想读取并从我的错误队列中删除消息。
是否可以从 MassTransit 的错误队列中读取并删除消息?
【问题讨论】:
标签: asp.net-core rabbitmq masstransit
您可以在错误队列上创建一个接收端点,它会像任何其他接收端点一样读取消息。您需要一个可以读取消息格式并对该错误消息执行某些操作的消费者(并且可能与最初所做的不同)。
请注意,接收端点上的任何错误都将移至input-queue_error_error,依此类推……
另一种选择是在 RabbitMQ 服务器上设置一个铲子来移动消息,但请注意不要永远移动它们,因为将消息移动到错误队列可能是有正当理由的。但是,如果它与资源中断有关,并且再次重新处理这些消息是有意义的,请使用铲子将它们移回主队列。
【讨论】: