我在多个节点上安装了rabbit mq并对它们进行了集群。从命令行我可以通过调用rabbitmqctl cluster_statu来获取节点状态。但我想在java中获取相同的细节来记录它们。有人可以为我提供一个示例Java程序,以获取有关群集上哪个节点未运行的详细信息...谢谢。
答案 0 :(得分:2)
您可以使用web management console API。
使用以下方式启用控制台:
rabbitmq-plugins enable rabbitmq_management
然后您可以使用
访问APIhttp://server-name:15672/api
阅读here了解有关API的更多详细信息。
此时,您可以通过java调用API。
答案 1 :(得分:1)
您可以尝试安装管理插件,该插件为您提供以下API(来自Java或您想要的任何程序)进行交互:
http://hg.rabbitmq.com/rabbitmq-management/raw-file/rabbitmq_v3_4_0/priv/www/api/index.html
插件文档在这里:
https://www.rabbitmq.com/management.html
具体来说,请参阅“监控”权限,该权限可以:
列出所有虚拟主机,包括无法登录的虚拟主机 AMQP查看其他用户的连接和通道查看节点级数据 例如内存使用和聚类查看真正的全局统计数据 虚拟主机
我认为虚拟主机上的数据是您正在寻找的,但您必须尝试确保,因为文档没有具体显示响应数据。请注意,vhost数据可能与您要查找的群集信息不同。