验证rabbitmq的版本

时间:2011-09-29 06:21:02

标签: rabbitmq

如何验证服务器上运行的rabbitmq版本?

是否有命令验证rabbitmq是否正在运行?

11 个答案:

答案 0 :(得分:187)

  

sudo rabbitmqctl status

并查找看起来像这样的行:

  

{兔, “RabbitMQ的”, “2.6.1”},

答案 1 :(得分:23)

您只需从commandilne执行:

  

sudo rabbitmqctl status | grep rabbit

答案 2 :(得分:16)

如果rabbitimq无法启动,我发现确定版本的唯一方法是通过安装程序系统。

Eample Debian / Ubuntu:

dpkg -s rabbitmq-server | grep Version

答案 3 :(得分:9)

正如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

答案 4 :(得分:3)

如果您无法访问rabbitmqctl或rabbitmq-server未运行,请在Linux上执行:

ls /usr/lib/rabbitmq/lib/

我得到了:

rabbitmq_server-3.5.6

答案 5 :(得分:1)

由于我希望在Windows机器上使用C#执行此操作并且所有当前答案都是针对* 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";
    }

答案 6 :(得分:1)

使用C#

获取RMQ版本
using (var connection = connectionFactory.CreateConnection())
{
    if (connection.ServerProperties.ContainsKey("version"))
        Console.WriteLine("Version={0}",
            Encoding.UTF8.GetString((byte[])connection.ServerProperties["version"]));
}

输出:

  

版本= 3.6.3

答案 7 :(得分:1)

在debian系统上,你可以运行:

['battleaxe', 'dagger', 'dagger', 'dagger', 'gold coin']

答案 8 :(得分:0)

在可能的情况下,您正在使用"管理" (web)插件,RabbitMQ版本出现在每个网页的右上角,以及Erlang运行时的版本。

答案 9 :(得分:0)

登录管理ui,在右上角可以找到该版本。还可以使用以下命令查找版本

# sudo bash

# rabbitmqctl status | grep rabbit

答案 10 :(得分:0)

我使用以下命令将输出缩减为版本,

rabbitmqctl status | grep "{rabbit,\"RabbitMQ\""

输出:

  {rabbit,"RabbitMQ","3.7.3"},