如何判断RabbitMQ中现有Classic Queue是v1还是v2?
如何判断RabbitMQ Classic Queue的v1/v2版本
关于Management UI的说明
目前RabbitMQ的Management UI确实没有直接显示Classic Queue版本的功能,你没有遗漏相关选项。
其他判断方法
使用rabbitmqctl命令行工具
执行以下命令查看队列的详细属性:rabbitmqctl list_queues name arguments在返回的
arguments字段中,若包含"x-queue-version": 2,则为v2版本;若没有该参数或者值为1,则为v1版本。通过HTTP API查询
调用RabbitMQ的HTTP API获取队列详情:curl -u 用户名:密码 http://<RabbitMQ地址>:15672/api/queues/<vhost>/<队列名>在返回的JSON数据中,查找
arguments对象下的x-queue-version字段,值为1或2对应相应版本。查看RabbitMQ日志
当队列创建时,日志中会记录队列版本信息,比如类似:Creating queue 'queue_name' in vhost '/' with version 2。你可以搜索队列名称相关的日志条目来确认版本。检查队列元数据文件(仅限单机节点)
在RabbitMQ的数据目录下(默认路径通常为/var/lib/rabbitmq/mnesia/rabbit@<节点名>),找到对应队列的元数据文件,查看其中是否包含queue_version字段及对应值。不过这种方式不推荐用于生产环境,仅作为临时排查手段。
内容的提问来源于stack exchange,提问作者franklyspeaking
相关产品推荐
相关产品推荐

