akka 检查rabbitMQ消息是否路由成功

velaa5lx  于 2022-11-23  发布在  RabbitMQ
关注(0)|答案(1)|浏览(118)

我正在使用akka-stream-alpakka-amqp将消息发布到rabbitmq exchange,我想知道是否有方法确定message是否正确路由到当前响应为akka-streams的队列。无论消息是否已路由,我都会获得http状态200
示例消息创建

val headers = new java.util.HashMap[String, AnyRef]()
headers.put("hash-on", hashOn)
headers.put("message-type", messageType)
val basicProps = new BasicProperties().builder().headers(headers).build()

OutgoingMessage(
  bytes = ByteString(body),
  immediate = false,
  mandatory = false)
  .withProperties(basicProps)

Source.single(outgoingMessage).runWith(sink)
bsxbgnwa

bsxbgnwa1#

您要查找是'发布者确认'功能
您必须在频道上设置confirm.select,然后以mandatory发送消息。
然后,对于发送到代理的每条消息,您将获得basic.ackbasic.nack响应,在此之前,您将收到basic.return信息,其中包含消息是否已路由的信息。

相关问题