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



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



есть ли команда, чтобы проверить, что rabbitmq работает?

1058   11  

11 ответов:

sudo rabbitmqctl статус

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

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

вы можете просто выполнить из commandilne:

sudo rabbitmqctl status / grep rabbit

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

Пример 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

поскольку я хотел сделать это в 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";
    }

чтобы получить версию RMQ с помощью C#

using (var connection = connectionFactory.CreateConnection())
{
    if (connection.ServerProperties.ContainsKey("version"))
        Console.WriteLine("Version={0}",
            Encoding.UTF8.GetString((byte[])connection.ServerProperties["version"]));
}

выход:

версия=3.6.3

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

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

# sudo bash

# rabbitmqctl status | grep rabbit

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

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

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

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

выход:

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

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

ls /usr/lib/rabbitmq/lib/

Я :

rabbitmq_server-3.5.6

Comments

    Ничего не найдено.