RabbitMQ代理关闭时Masstransit发布消息

RabbitMQ代理关闭时Masstransit发布消息,rabbitmq,masstransit,Rabbitmq,Masstransit,我正在使用配置了Asp.net core 2.2 API项目的MassTransit 6.3.2将消息发布到RabbitMQ。在论坛上的任何地方,我都读到Masstransit会在RabbitMQ代理关闭时抛出错误并释放发布消息。为了检查这个场景,它实际上是如何工作的,我已经按照相同的顺序完成了以下步骤,但是结果很奇怪,我没有丢失启动代理后消费者收到的消息 你能告诉我这里发生了什么事吗?Masstransit是否在代理关闭时本地存储消息,并在其联机时发布消息?我尚未配置任何Outbox Rabb

我正在使用配置了Asp.net core 2.2 API项目的MassTransit 6.3.2将消息发布到RabbitMQ。在论坛上的任何地方,我都读到Masstransit会在RabbitMQ代理关闭时抛出错误并释放发布消息。为了检查这个场景,它实际上是如何工作的,我已经按照相同的顺序完成了以下步骤,但是结果很奇怪,我没有丢失启动代理后消费者收到的消息

你能告诉我这里发生了什么事吗?Masstransit是否在代理关闭时本地存储消息,并在其联机时发布消息?我尚未配置任何Outbox

  • RabbitMQ正在运行,使用者正在运行
  • 停止RabbitMQ服务并通过asp.net核心api发布消息
  • 调用方在一段时间后收到任务取消错误(调用方表示调用api的另一个测试控制台)
  • 等待2分钟后,我启动了RabbitMQ服务
  • 消费者服务已获取消息并已成功处理
  • 使用#5,可以证明,当经纪人上线时,消费者能够恢复并重新连接。消费者正在使用Masstransit 7.0.0

    我也在论坛上看到,当MessageBroker关闭时,人们会收到类似“Broker关闭”的日志消息,但我没有收到该消息。我在所有项目中都使用Serilog结构化日志记录。 是否需要启用任何日志设置才能从Masstransit获取日志消息

    感谢并感谢您的时间。

    可能是您的愚弄