Verifica la versione di rabbitmq


152

Come posso verificare quale versione di rabbitmq è in esecuzione su un server?

Esiste un comando per verificare che rabbitmq sia in esecuzione?

Risposte:


211

stato sudo rabbitmqctl

e cerca una linea che assomigli a quella:

{Coniglio, "RabbitMQ", "2.6.1"},


L'ho preso invece su Archlinux - [{rabbit, 34362}, {rabbitmqctl23794,40359}] anche se ho installato rabbitmq 3.1.3-1 :)
Sian Lerk Lau il

1
E se i servizi di rabbitmq vengono interrotti? Non funziona Come posso recuperare la versione di un coniglio "spento"?
e il

In Windows questo è molto simile. "C: \ Programmi \ RabbitMQ Server \ rabbitmq_server-3.6.5 \ sbin \ rabbitmqctl status" Il nome della cartella può variare con la tua versione di Rabbit.
dylanT

36

Puoi semplicemente eseguire dalla riga di comando:

sudo rabbitmqctl status | grep rabbit

Forse il formato è cambiato - a partire dalla versione 3.8.4, è una stringa di ricerca migliore sudo rabbitmqctl status | grep -i "version".
Janos

22

Se rabbitimq non può essere avviato, ho scoperto che l'unico modo per determinare la versione è tramite il sistema di installazione.

Esempio Debian / Ubuntu:

dpkg -s rabbitmq-server | grep Version

6
o yum list rabbitmq-serverper Rhel / Centos / Fedora
Elzo Valugi il

10

Come ha detto Marek su un server locale o su un server 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

Salva come checkVersion.pyed esegui con 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

Questo ha funzionato per me, ma wonly con python3 e ho dovuto creare checkVersion.py sotto il client_0_8 cartella (in Windows)
Arun

6

Se non hai accesso a rabbitmqctl o rabbitmq-server non è in esecuzione, su linux fai:

ls /usr/lib/rabbitmq/lib/

Ho ottenuto :

rabbitmq_server-3.5.6

3

Sui sistemi Debian, puoi semplicemente eseguire:

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

1

Dal momento che stavo cercando di farlo in C # su un computer Windows e tutte le risposte correnti sono per * nix, posterò il codice che ho finito 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";
    }

1

Nel caso probabile che si stia utilizzando il plug-in "gestione" (web), la versione RabbitMQ appare nell'angolo in alto a destra di ogni pagina Web, insieme alla versione del runtime di Erlang.


1

Per ottenere la versione RMQ usando C #

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

Produzione:

Version = 3.6.3


1

Uso il seguente comando per tagliare l'output fino alla versione,

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

Produzione:

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

-1

Accedi alla gestione dell'interfaccia utente e in alto a destra puoi trovare la versione. Utilizzare anche il comando seguente per trovare la versione

# sudo bash

# rabbitmqctl status | grep rabbit

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.