Як я можу перевірити, яка версія rabbitmq працює на сервері?
Чи є команда для перевірки запуску rabbitmq?
Як я можу перевірити, яка версія rabbitmq працює на сервері?
Чи є команда для перевірки запуску rabbitmq?
Відповіді:
статус sudo rabbitmqctl
і шукайте лінію, яка виглядає так:
{кролик, "RabbitMQ", "2.6.1"},
Ви можете просто виконати з командного рядка:
sudo rabbitmqctl status | grep rabbit
3.8.4
, краща пошукова рядок sudo rabbitmqctl status | grep -i "version"
.
Якщо rabbitimq не вдається запустити, я знайшов єдиний спосіб визначити версію через систему інсталятора.
Eample Debian / Ubuntu:
dpkg -s rabbitmq-server | grep Version
yum list rabbitmq-server
для Rhel / Centos / Fedora
Як сказав Марек на локальному сервері або на віддаленому сервері (використовуючи 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
Якщо у вас немає доступу до rabbitmqctl або rabbitmq-сервер не працює, в Linux зробіть:
ls /usr/lib/rabbitmq/lib/
Я отримав :
rabbitmq_server-3.5.6
Оскільки я хотів це зробити в 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
Я використовую наступну команду, щоб обрізати вихід до версії,
rabbitmqctl status | grep "{rabbit,\"RabbitMQ\""
Вихід:
{rabbit,"RabbitMQ","3.7.3"},
Увійдіть до інтерфейсу управління ui та вгорі праворуч ви можете знайти версію. Також використовуйте наступну команду, щоб знайти версію
# sudo bash
# rabbitmqctl status | grep rabbit