Как я могу проверить, какая версия rabbitmq работает на сервере?
Есть ли команда для проверки работоспособности rabbitmq?
Как я могу проверить, какая версия rabbitmq работает на сервере?
Есть ли команда для проверки работоспособности rabbitmq?
статус sudo rabbitmqctl
и найдите строку, которая выглядит так:
{кролик, "RabbitMQ", "2.6.1" },
Вы можете просто выполнить из командной строки:
sudo rabbitmqctl status | grep rabbit
		Если rabbitimq не запускается, я нашел, что единственный способ определить версию - через систему установщика.
Eample Debian/Ubuntu:
dpkg -s rabbitmq-server | grep Version
		Как сказал Марек на локальном сервере или на удаленном сервере (используя amqplib):
from amqplib import client_0_8 as amqp
import sys
conn = amqp.Connection(host=sys.argv[1], userid="guest", password="guest", virtual_host="/", insist=False)
for k, v in conn.server_properties.items():
    print k, v
Сохранить как checkVersion.py и запустить с помощью python checkVersion.py dev.rabbitmq.com:
% python checkVersion.py dev.rabbitmq.com
information Licensed under the MPL.  See http://www.rabbitmq.com/
product RabbitMQ
copyright Copyright (C) 2007-2011 VMware, Inc.
capabilities {}
platform Erlang/OTP
version 2.6.0
		Если у вас нет доступа к rabbitmqctl или rabbitmq-сервер не работает, на linux выполните:
ls /usr/lib/rabbitmq/lib/
 Я получил:
rabbitmq_server-3.5.6
		Поскольку я искал сделать это на С# на компьютере с Windows, и все текущие ответы для * nix, я отправлю код, который я закончил, используя:
    public string GetRabbitMqVersion()
    {
        string prefix = "rabbitmq_server-";
        var dirs = System.IO.Directory.EnumerateDirectories(@"C:\Program Files (x86)\RabbitMQ Server", string.Format("{0}*",prefix));
        foreach (var dir in dirs)
        {
            //Just grab the text after 'rabbitmq_server-' and return the first item found
            var i = dir.LastIndexOf(prefix);
            return dir.Substring(i+16);
        }
        return "Unknown";
    }
		Чтобы получить версию RMQ с помощью С#
using (var connection = connectionFactory.CreateConnection())
{
    if (connection.ServerProperties.ContainsKey("version"))
        Console.WriteLine("Version={0}",
            Encoding.UTF8.GetString((byte[])connection.ServerProperties["version"]));
}
Вывод:
Version = 3.6.3
В системах Debian вы можете просто запустить:
dpkg-query --showformat='${Version}' --show rabbitmq-server
		В вероятном случае вы используете плагин "management" (web), версия RabbitMQ появится в верхнем правом углу каждой веб-страницы вместе с версией времени выполнения Erlang.
Войдите в интерфейс управления и в правом верхнем углу вы можете найти версию. Также используйте следующую команду, чтобы найти версию
 # sudo bash
 # rabbitmqctl status | grep rabbit
Я использую следующую команду, чтобы обрезать вывод до версии,
rabbitmqctl status | grep "{rabbit,\"RabbitMQ\""
 Выход:
  {rabbit,"RabbitMQ","3.7.3"},