RabbitMQ 作为 Windows 服务的配置文件

RabbitMQ 作为 Windows 服务的配置文件

我正在设置一个 RabbitMQ 实例,在我的开发工作站上运行,以便进行测试。

我想玩一下配置(在我的例子中是有关流量控制的配置)。

我已经安装了 erlang、rabbitmq-server-3.1.1,设置RABBITMQ_BASE到了某个目录,设置RABBITMQ_CONFIG_FILEc:/path/to/myconf(所以它引用了c:\path\to\myconf.config)。

现在我打开 cmd 并执行 rabbitmq-service install。Web 管理器显示我的 RMQ 服务器已启动并正在运行。

但我设置的值disk_free_limit不匹配。

我不知道是否未读取配置文件或者我的配置文件是否有错误因此被忽略。

我的配置文件的内容:

[
    {rabbit,
        [
            {disk_free_limit, 250000000}
        ]
    }
].

日志中的启动报告(它显示我的conf文件未被读取):

=INFO REPORT==== 12-Jun-2013::17:06:44 ===
node           : rabbit@DEV-WORKSTATION
home dir       : C:\Windows
config file(s) : (none)
cookie hash    : 2SazL+DgWDMqrHlr4w8R8A==
log            : c:/rabbitmq_server-3.1.1/RabbitMQ/log/DEV-WORKSTATION.log
sasl log       : c:/rabbitmq_server-3.1.1/RabbitMQ/log/[email protected]
database dir   : c:/rabbitmq_server-3.1.1/RabbitMQ/db/rabbit@DEV-WORKSTATION-mnesia

感谢您的帮助。

答案1

我遇到了同样的问题,并努力想出解决办法。我认为开始菜单中提供的选项操作不正确。一旦我从命令行运行,它就运行正常了。

将 RABBITMQ_CONFIG_FILE 设置为你的配置文件 1. 添加你的配置文件 2. rabbitmq-service stop 3. rabbitmq-service remove 4. rabbitmq-service install

然后它就可以获取配置文件了

答案2

确保RABBITMQ_CONFIG_FILE在正确的位置设置环境变量。它需要位于> > >System variables中的部分。Control PanelSystemAdvanced...Environment Variables

请注意,RabbitMQ 服务启动脚本所做的全部工作是:

if "!RABBITMQ_CONFIG_FILE!"=="" (
    set RABBITMQ_CONFIG_FILE=!RABBITMQ_BASE!\rabbitmq
)

它只是检查变量是否已设置,如果未设置,则将其设置为默认值。然后它继续检查文件是否.config存在并附加扩展名:

if exist "!RABBITMQ_CONFIG_FILE!.config" (
    set RABBITMQ_CONFIG_ARG=-config "!RABBITMQ_CONFIG_FILE!"
) else (
    set RABBITMQ_CONFIG_ARG=
)

(我实际上不能说我建议这样做,但是,如果你真的愿意,你可以改变,c:/rabbitmq_server-3.1.1/RabbitMQ/sbin/rabbitmq-service.bat以便上面的行使用你想要的位置作为默认位置。)

相关内容