ฉันจะตรวจสอบเวอร์ชั่นของ 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
ดังที่ Marek กล่าวไว้ในเซิร์ฟเวอร์ภายในเครื่องหรือบนเซิร์ฟเวอร์ระยะไกล (ใช้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-server ไม่ได้ทำงานบน linux do:
ls /usr/lib/rabbitmq/lib/
ฉันได้ :
rabbitmq_server-3.5.6
บนระบบเดเบียนคุณสามารถเรียกใช้:
dpkg-query --showformat='${Version}' --show rabbitmq-server
เนื่องจากฉันต้องการทำสิ่งนี้ใน C # บนเครื่อง Windows และคำตอบปัจจุบันทั้งหมดสำหรับ * ระวังฉันจะโพสต์รหัสที่ฉันใช้:
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";
}
ในกรณีที่เป็นไปได้ว่าคุณกำลังใช้ปลั๊กอิน "การจัดการ" (เว็บ) เวอร์ชั่น RabbitMQ จะปรากฏที่มุมขวาบนของทุกหน้าเว็บพร้อมกับเวอร์ชั่นของ Erlang
วิธีรับรุ่น 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