Verifique a versão do rabbitmq

152

Como posso verificar qual versão do rabbitmq está sendo executada em um servidor?

Existe um comando para verificar se o rabbitmq está em execução?

Hussain Fakhruddin
fonte

Respostas:

211

status de sudo rabbitmqctl

e procure a linha que se parece com isso:

{rabbit, "RabbitMQ", "2.6.1"},

Marek
fonte
Eu tenho isso em vez de Archlinux - [{coelho, 34362}, {rabbitmqctl23794,40359}] embora eu instalado RabbitMQ 3.1.3-1 :)
Sian Lerk Lau
1
E se os serviços rabbitmq forem interrompidos? Isso não funciona. Como posso recuperar a versão de um rabbitmq "shut down"?
ePat
No Windows, isso é muito semelhante. "C: \ Arquivos de Programas \ RabbitMQ Server \ rabbitmq_server-3.6.5 \ sbin \ rabbitmqctl status" O nome da pasta pode variar com a versão do Rabbit.
dylanT
36

Você pode simplesmente executar a partir da linha de comando:

sudo rabbitmqctl status | grep rabbit
Grzegorz Motyl
fonte
Talvez o formato tenha mudado - a partir da versão 3.8.4, uma string de pesquisa melhor é sudo rabbitmqctl status | grep -i "version".
Janos
22

Se o rabbitimq não puder iniciar, encontrei a única maneira de determinar a versão através do sistema instalador.

Exemplo: Debian / Ubuntu:

dpkg -s rabbitmq-server | grep Version
user224767
fonte
6
ou yum list rabbitmq-serverpara Rhel / Centos / Fedora
Elzo Valugi
10

Como Marek disse em um servidor local ou em um servidor remoto (usando 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

Salvar como checkVersion.pye executar com 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
scvalex
fonte
Isso funcionou para mim, mas wonly com Python3 e eu tive que criar checkVersion.py sob a client_0_8 pasta (no Windows)
arun
6

Se você não tem acesso ao rabbitmqctl ou o rabbitmq-server não está sendo executado, no linux, faça:

ls /usr/lib/rabbitmq/lib/

Eu tenho :

rabbitmq_server-3.5.6
user057827
fonte
3

Nos sistemas debian, você pode simplesmente executar:

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

Como eu estava procurando fazer isso em C # em uma máquina Windows e todas as respostas atuais são para * nix, postarei o código que acabei usando:

    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";
    }
Matt Klein
fonte
1

No caso provável de você estar usando o plug-in "management" (web), a versão do RabbitMQ aparece no canto superior direito de cada página da web, juntamente com a versão do tempo de execução do Erlang.

MotownJoe
fonte
1

Para obter a versão RMQ usando C #

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

Resultado:

Versão = 3.6.3

Alexey Groshev
fonte
1

Eu uso o seguinte comando para reduzir a saída para a versão,

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

Resultado:

  {rabbit,"RabbitMQ","3.7.3"},
Sufiyan Ghori
fonte
-1

Entre na interface de gerenciamento e no canto superior direito você encontra a versão. Use também o seguinte comando para encontrar a versão

# sudo bash

# rabbitmqctl status | grep rabbit

ADHITHYA SRINIVASAN
fonte