【问题标题】:How can I get the status of a rabbitmq-shovel by the http api如何通过 http api 获取 rabbitmq-shovel 的状态
【发布时间】:2015-08-15 13:24:42
【问题描述】:

使用 "rabbitmqctl eval 'rabbit_shovel_status:status().'" 我可以在我的 rabbitmq 服务器中获取铲子的状态。

我激活了模块“rabbitmq_shovel”和“rabbitmq_shovel_management”。

我使用 HTTP API 创建了一些动态铲子,我遇到的问题是,我希望能够使用 HTTP API 获取铲子的状态,但我找不到这样做的方法。

有没有办法使用 HTTP API 来做到这一点?或者我应该使用'rabbitmqctl eval ...'?

我不想使用 rabbitmqctl,因为我想在我自己的 API 中公开这些数据,所以我的应用程序应该能够访问它,而无需执行“exec”。

【问题讨论】:

    标签: rabbitmq rabbitmqctl rabbitmq-shovel


    【解决方案1】:

    如果你使用 C#,你可以像这样使用 HareDu:

    var result = await _services.GetService<IBrokerObjectFactory>()
        .GetAllShovels();
    

    https://github.com/ahives/HareDu2/blob/master/docs/shovel-get.md

    【讨论】:

      【解决方案2】:

      是的,您可以使用:

      http://localhost:15672/api/shovels
      

      您必须安装: rabbitmq_shovel_management

      结果是一个像这样的json:

      [  
         {  
            "node":"rabbit@gabrieleMacBook",
            "timestamp":"2015-06-02 15:34:27",
            "name":"test",
            "vhost":"/",
            "type":"dynamic",
            "state":"running",
            "definition":{  
               "src-queue":"test",
               "dest-queue":"test2"
            },
            "src_uri":"amqp://xxxxxxx",
            "dest_uri":"amqp://xxxxxxx"
         }
      ]
      

      【讨论】:

        猜你喜欢
        • 2012-07-11
        • 1970-01-01
        • 2014-02-09
        • 2013-08-31
        • 2015-06-09
        • 2021-02-13
        • 2021-04-23
        • 2014-01-24
        • 1970-01-01
        相关资源
        最近更新 更多