如何传递“exclusive”作为rabbitmqadmin的参数来声明队列?

Ank*_*kit 2 command-line-interface rabbitmq

在Java中有一个选项:

  • 队列 - 队列的名称
  • Durable: true - 如果我们声明一个持久队列(该队列将在服务器重新启动后继续存在)
  • Exclusive: true - 如果我们声明一个独占队列(仅限于此连接)
  • autoDelete: true - 如果我们声明一个自动删除队列(服务器将在不再使用时删除它)
  • 参数:其他 - 队列的属性(构造参数)

channel.queueDeclare(endPointName, true, false, false, null);

对于rabbitmqadmin,命令行如何使用rabbitmqadmin命令行工具传递exclusive=false参数?

rabbitmqadmin工具的文档没有此用例的示例。

我正在寻找这样的 shell 脚本命令:

rabbitmqadmin declare queue name="endPointName" durable=true exclusive=false arguments={"x-message-ttl":86400000}
Run Code Online (Sandbox Code Playgroud)

pin*_*ain 6

默认情况下,如果没有expires设置参数,false则使用值,因此您必须通过argumentjson 格式的参数传递它。shell 命令应如下所示:

$ rabbitmqadmin declare queue name=endPointName durable=true arguments='{"exclusive":false,"x-message-ttl":86400000}'
queue declared
Run Code Online (Sandbox Code Playgroud)

确保您有有效的 json strnig,除非您遇到格式问题。另外,将 json 字符串放在单引号或双引号内将被删除。

然后在管理面板中会看到类似这样的内容: