¿Cómo puedo verificar qué versión de rabbitmq se ejecuta en un servidor?
¿Hay un comando para verificar que rabbitmq se esté ejecutando?
¿Cómo puedo verificar qué versión de rabbitmq se ejecuta en un servidor?
¿Hay un comando para verificar que rabbitmq se esté ejecutando?
Respuestas:
estado de sudo rabbitmqctl
y busque una línea que se vea así:
{conejo, "RabbitMQ", "2.6.1"},
Simplemente puede ejecutar desde la línea de comando:
sudo rabbitmqctl status | grep rabbit
3.8.4
, una mejor cadena de búsqueda es sudo rabbitmqctl status | grep -i "version"
.
Si rabbitimq no puede iniciarse, encontré que la única forma de determinar la versión es a través del sistema instalador.
Ejemplo de Debian / Ubuntu:
dpkg -s rabbitmq-server | grep Version
yum list rabbitmq-server
para Rhel / Centos / Fedora
Como dijo Marek en un servidor local o en un 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
Guardar como checkVersion.py
y ejecutar 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
Si no tiene acceso a rabbitmqctl o no se está ejecutando rabbitmq-server, en linux do:
ls /usr/lib/rabbitmq/lib/
Tengo :
rabbitmq_server-3.5.6
Como estaba buscando hacer esto en C # en una máquina Windows y todas las respuestas actuales son para * nix, publicaré el código que terminé 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";
}
Para obtener la versión RMQ usando C #
using (var connection = connectionFactory.CreateConnection())
{
if (connection.ServerProperties.ContainsKey("version"))
Console.WriteLine("Version={0}",
Encoding.UTF8.GetString((byte[])connection.ServerProperties["version"]));
}
Salida:
Versión = 3.6.3
Uso el siguiente comando para recortar la salida a la versión,
rabbitmqctl status | grep "{rabbit,\"RabbitMQ\""
Salida:
{rabbit,"RabbitMQ","3.7.3"},
Inicie sesión en la interfaz de usuario de administración y en la parte superior derecha puede encontrar la versión. Utilice también el siguiente comando para encontrar la versión
# sudo bash
# rabbitmqctl status | grep rabbit