【问题标题】:Do a wire tap on all exchanges on a RabbitMQ server对 RabbitMQ 服务器上的所有交换进行窃听
【发布时间】:2019-09-19 11:14:42
【问题描述】:

我想创建一个 UI 来查看流经 RabbitMQ 服务器中所有交换的所有消息(当然不是管理控制台)。

我也在使用 Mass Transit 而不是 rabbit,但我不确定这是否重要。

这是否完全有可能,而不必为每个消费者一个一个地编写一个消费者代码?如果有,有什么起点吗?

【问题讨论】:

    标签: rabbitmq messaging masstransit


    【解决方案1】:

    用于发布和发送的消息交换都绑定到与消息传递队列同名的交换。因此,您可以将代理上的自己的窃听交换绑定到任何队列交换,并将消息窃听到您选择的另一个队列。

    您可以在documentation查看RabbitMQ拓扑布局。

    这样做是为了方便窃听任何端点,因为所有消息都流经单个扇出交换。

    【讨论】:

      【解决方案2】:

      这是一个相当广泛的问题,因为“看到”的含义并不完全清楚,但无论如何,您都可以在您的公共汽车上创建一个观察者。它记录在这里,我认为它相当简单:https://masstransit-project.com/MassTransit/usage/observers.html

      在观察者中,当任何消息到达 MT 消息总线时,您可以处理各种事件,并执行某种操作(如打印消息、添加日志记录、指标等)。如果您有一个微服务场景,最好将观察者添加到您的共享库中并将其添加到您的各个应用程序的总线中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-26
        • 1970-01-01
        • 2021-01-22
        • 2012-01-27
        • 1970-01-01
        相关资源
        最近更新 更多