Bagaimana saya bisa memverifikasi versi rabbitmq mana yang berjalan di server?
Apakah ada perintah untuk memverifikasi bahwa rabbitmq sedang berjalan?
Bagaimana saya bisa memverifikasi versi rabbitmq mana yang berjalan di server?
Apakah ada perintah untuk memverifikasi bahwa rabbitmq sedang berjalan?
Jawaban:
status sudo rabbitmqctl
dan cari garis yang terlihat seperti itu:
{kelinci, "RabbitMQ", "2.6.1"},
Anda cukup menjalankan dari baris perintah:
sudo rabbitmqctl status | grep rabbit
3.8.4
, string pencarian yang lebih baik sudo rabbitmqctl status | grep -i "version"
.
Jika rabbitimq tidak dapat memulai saya menemukan satu-satunya cara untuk menentukan versi adalah melalui sistem installer.
Eample Debian / Ubuntu:
dpkg -s rabbitmq-server | grep Version
yum list rabbitmq-server
untuk Rhel / Centos / Fedora
Seperti yang Marek katakan pada server lokal, atau, pada server jarak jauh (menggunakan 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
Simpan sebagai checkVersion.py
dan jalankan dengan 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
Jika Anda tidak memiliki akses ke rabbitmqctl atau rabbitmq-server tidak berjalan, di linux lakukan:
ls /usr/lib/rabbitmq/lib/
Saya mendapatkan :
rabbitmq_server-3.5.6
Karena saya ingin melakukan ini dalam C # pada mesin Windows dan semua jawaban saat ini adalah untuk * nix, saya akan memposting kode yang akhirnya saya gunakan:
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";
}
Untuk mendapatkan versi RMQ menggunakan C #
using (var connection = connectionFactory.CreateConnection())
{
if (connection.ServerProperties.ContainsKey("version"))
Console.WriteLine("Version={0}",
Encoding.UTF8.GetString((byte[])connection.ServerProperties["version"]));
}
Keluaran:
Versi = 3.6.3
Saya menggunakan perintah berikut untuk memangkas output ke versi,
rabbitmqctl status | grep "{rabbit,\"RabbitMQ\""
Keluaran:
{rabbit,"RabbitMQ","3.7.3"},
Login ke manajemen ui dan di kanan atas Anda dapat menemukan versi. Juga gunakan perintah berikut untuk menemukan versi
# sudo bash
# rabbitmqctl status | grep rabbit