配置 'amq.rabbitmq.event' exchange 到不同的虚拟主机?

Configuring 'amq.rabbitmq.event' exchange to a different vhost?

我正在配置 RabbitMQ with the rabbitmq_event_exchange plugin. I am using this plugin to listen to RabbitMQ events. By default, the plugin is creating an exchange named 'amq.rabbitmq.event' in the default vhost(/) . But, I am trying to change vhost to 'test' (custom vhost created by me) As per the instructions 从插件页面,我添加了一个 属性 rabbitmq_event_exchange.vhost= test 在我的 rabbitmq.conf 文件中。但是当我尝试 运行 RabbitMQ

时出现异常
    Config file generation failed 10:50:18.141 [error] You've tried to 
    set rabbitmq_event_exchange.vhost, but there is no setting with 
    that name.
    10:50:18.141 [error]   Did you mean one of these?
    10:50:18.176 [error]     mqtt.exchange
    10:50:18.176 [error]     log.exchange.level
    10:50:18.176 [error]     management.listener.port
    10:50:18.176 [error] Error generating configuration in phase 
    transform_datatypes
    10:50:18.176 [error] Conf file attempted to set unknown variable: 
    rabbitmq_event_exchange.vhost

我的rabbitmq.conf文件

    management.load_definitions= /opt/definitions.json
    #MQTT config
    mqtt.default_user= guest
    mqtt.default_pass= guest
    mqtt.allow_anonymous= false
    mqtt.exchange= MQTT
    mqtt.vhost= test

    #RabbitMQ event exchange config
    rabbitmq_event_exchange.vhost= test

该插件尚未提供新的样式配置架构。我提出了一个 issue in the plugin GitHub page to make this enhancement. We have to use the advanced.config file and the classic config format to configure 自定义虚拟主机。

advanced.config

[
  {rabbitmq_event_exchange, [{vhost, <<"test">>}]}
].

参考:https://groups.google.com/forum/#!topic/rabbitmq-users/Z7_5WGc2ubE