Wie kann ich überprüfen, welche Version von rabbitmq auf einem Server ausgeführt wird?
Gibt es einen Befehl, um zu überprüfen, ob rabbitmq ausgeführt wird?
Wie kann ich überprüfen, welche Version von rabbitmq auf einem Server ausgeführt wird?
Gibt es einen Befehl, um zu überprüfen, ob rabbitmq ausgeführt wird?
Antworten:
sudo rabbitmqctl status
und suchen Sie nach einer Linie, die so aussieht:
{Kaninchen, "RabbitMQ", "2.6.1"},
Sie können einfach über die Befehlszeile ausführen:
sudo rabbitmqctl status | grep rabbit
3.8.4
ist eine bessere Suchzeichenfolge sudo rabbitmqctl status | grep -i "version"
.
Wenn rabbitimq nicht gestartet werden kann, habe ich die einzige Möglichkeit gefunden, die Version über das Installationssystem zu bestimmen.
Beispiel Debian / Ubuntu:
dpkg -s rabbitmq-server | grep Version
yum list rabbitmq-server
für Rhel / Centos / Fedora
Wie Marek auf einem lokalen Server oder auf einem Remote-Server (mit amqplib ) sagte :
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
Speichern unter checkVersion.py
und ausführen mit 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
Wenn Sie keinen Zugriff auf rabbitmqctl haben oder der rabbitmq-Server nicht ausgeführt wird, gehen Sie unter Linux wie folgt vor:
ls /usr/lib/rabbitmq/lib/
Ich habe :
rabbitmq_server-3.5.6
Da ich dies in C # auf einem Windows-Computer tun wollte und alle aktuellen Antworten für * nix sind, werde ich den Code veröffentlichen, den ich letztendlich verwendet habe:
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";
}
So erhalten Sie die RMQ-Version mit C #
using (var connection = connectionFactory.CreateConnection())
{
if (connection.ServerProperties.ContainsKey("version"))
Console.WriteLine("Version={0}",
Encoding.UTF8.GetString((byte[])connection.ServerProperties["version"]));
}
Ausgabe:
Version = 3.6.3
Ich benutze den folgenden Befehl, um die Ausgabe auf die Version zu reduzieren:
rabbitmqctl status | grep "{rabbit,\"RabbitMQ\""
Ausgabe:
{rabbit,"RabbitMQ","3.7.3"},
Melden Sie sich bei der Management-Benutzeroberfläche an und oben rechts finden Sie die Version. Verwenden Sie auch den folgenden Befehl, um die Version zu finden
# sudo bash
# rabbitmqctl status | grep rabbit