Проверить версию rabbitmq


152

Как я могу проверить, какая версия rabbitmq работает на сервере?

Есть ли команда для проверки работоспособности rabbitmq?

Ответы:


212

статус sudo rabbitmqctl

и найдите строку, которая выглядит так:

{Кролик, "RabbitMQ", "2.6.1"},


Я получил это вместо этого на Archlinux - [{rabbit, 34362}, {rabbitmqctl23794,40359}], хотя я установил rabbitmq 3.1.3-1 :)
Sian Lerk Lau

1
А если услуги rabbitmq остановлены? Это не работает Как я могу получить версию "выключенного" rabbitmq?
andPat

В Windows это очень похоже. «C: \ Program Files \ RabbitMQ Server \ rabbitmq_server-3.6.5 \ sbin \ rabbitmqctl status» Имя папки может отличаться в зависимости от вашей версии Rabbit.
dylanT

36

Вы можете просто выполнить из командной строки:

sudo rabbitmqctl status | grep rabbit

Может быть, формат изменился - по сравнению с версией 3.8.4, лучшая строка поиска sudo rabbitmqctl status | grep -i "version".
Янос

22

Если rabbitimq не может запуститься, я нашел единственный способ определить версию через систему установки.

Пример Debian / Ubuntu:

dpkg -s rabbitmq-server | grep Version

6
или yum list rabbitmq-serverдля Rhel / Centos / Fedora
Эльзо Валуги

10

Как сказал Марек на локальном сервере или на удаленном сервере (используя 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

У меня это сработало, но с Python3 у меня получилось, и мне пришлось создать checkVersion.py в папке client_0_8 (в windows)
Арун

6

Если у вас нет доступа к rabbitmqctl или rabbitmq-сервер не работает, на linux выполните:

ls /usr/lib/rabbitmq/lib/

Я получил :

rabbitmq_server-3.5.6

3

В системах Debian вы можете просто запустить:

dpkg-query --showformat='${Version}' --show rabbitmq-server

1

Так как я пытался сделать это в C # на компьютере с 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";
    }

1

В вероятном случае, если вы используете плагин «управления» (веб), версия RabbitMQ появляется в верхнем правом углу каждой веб-страницы вместе с версией среды выполнения Erlang.


1

Чтобы получить версию RMQ, используя C #

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


1

Я использую следующую команду, чтобы обрезать вывод до версии,

rabbitmqctl status | grep "{rabbit,\"RabbitMQ\""

Вывод:

  {rabbit,"RabbitMQ","3.7.3"},

-1

Войдите в интерфейс управления и в правом верхнем углу вы можете найти версию. Также используйте следующую команду, чтобы найти версию

# sudo bash

# rabbitmqctl status | grep rabbit

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.