node.js - 如何在 Node.js 中以编程方式获取远程运行的 RabbitMQ 服务器的版本?

标签 node.js rabbitmq

我有一个 Node 服务器,使用 rabbot 连接到 RabbitMQ 。这工作正常,我可以发布消息、消费消息等。

现在我希望能够询问 RabbitMQ 服务器具体运行的是哪个版本。

我希望我能够发布一条消息,询问版本并通过回复队列获得答案。或者我也可以通过 HTTP 发出请求,我没有偏好。但奇怪的是,我找不到任何方法可以做到这一点。因此我的问题是:如何在 Node.js 中以编程方式获取远程运行的 RabbitMQ 服务器的版本?

<小时/>

非重复:Verify version of rabbitmq

以上内容并不重复,因为它不需要以编程方式找到版本,也不提供任何 Node.js 解决方案。此外,大多数解决方案仅适用于本地rabbitmq服务器,不适用于远程服务器。

最佳答案

RabbitMQ 团队监控 this mailing list并且有时只在 StackOverflow 上回答问题。

<小时/>

您可以使用 HTTP API 获取此信息:

$ curl -4su guest:guest localhost:15672/api/overview | jq '.rabbitmq_version'
"3.6.14+2.gd704c55"

请注意,您必须启用 rabbitmq_management 插件。

如果您喜欢冒险,也可以使用 erl命令远程连接并获取正在运行的应用程序及其详细信息的列表。 RabbitMQ 版本将是rabbit 应用程序的版本。这基本上就是rabbitmqctl 脚本的工作原理。

关于node.js - 如何在 Node.js 中以编程方式获取远程运行的 RabbitMQ 服务器的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47227125/

相关文章:

rabbitmq - 使用 RabbitMQ 的延迟消息循环

javascript - REST API 服务器的 Hapi.js 文档生成器

node.js - 无法通过 NPM 安装 Mongoose

javascript - Express + bodyParser.json() + Postman,req.body为空

ruby-on-rails - 从单独的进程调用 sidekiq 工作程序

spring-boot - RabbitMQ在事务中发送消息

java - Spring Boot AMQP @RabbitListener 没有收到消息

node.js - 如何使用 Mongoose 获取 MongoDB 集合的大小(字节)?

javascript - Protractor 中的过滤器函数的 promise 是如何得到解决的?

python - celery :如何限制队列中的任务数量并在满时停止喂食?