Pregunta Archivo de configuración para RabbitMQ como servicio de Windows


Estoy configurando una instancia de RabbitMQ para que se ejecute en mi estación de trabajo de desarrollo para hacer pruebas.

Me gustaría jugar con la configuración (conf respecto del control de flujo en mi caso).

He instalado erlang, rabbitmq-server-3.1.1, set RABBITMQ_BASE a un determinado directorio, establecer RABBITMQ_CONFIG_FILE a c:/path/to/myconf (por lo que hace referencia c:\path\to\myconf.config).

Ahora abro mi cmd y ejecuto la instalación del servicio rabbitmq. El administrador web muestra que mi servidor RMQ está en funcionamiento.

Pero el valor para disk_free_limit He establecido que no coincide.

No sé si el archivo de configuración no se lee o si mi archivo de configuración tiene errores y, por lo tanto, se ignora.

Contenido de mi archivo conf:

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

Informe de inicio en los registros (muestra que mi archivo conf no se ha leído):

=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/rabbit@DEV-WORKSTATION-sasl.log
database dir   : c:/rabbitmq_server-3.1.1/RabbitMQ/db/rabbit@DEV-WORKSTATION-mnesia

Gracias por tu ayuda.


5
2018-06-12 15:18


origen


Quité el RABBITMQ_CONFIG_FILE env var y se fue RABBITMQ_BASE. Moví mi archivo de configuración a %RABBITMQ_BASE%\rabbitmq.config. Y ahora los ajustes se leen correctamente. ¿Es un error que pasa solo bajo windows? - Olivier H
La pregunta de por qué se omite el archivo de configuración aún está esperando una respuesta, incluso si puedo trabajar ahora :) - Olivier H
Cuando tu dices %RABBITMQ_BASE%\rabbitmq.config, es lo mismo que %APPDATA%\RabbitMQ\rabbitmq.config? Casualmente, estoy intentando configurar lo mismo. disk_free_limit configuración, hasta ahora sin éxito, incluso al poner la configuración en la ubicación predeterminada. Siempre dice "config file (s): (none)" y rabbitmqctl status confirma que no recogió mi configuración. - Eugene Beresovsky
Cuando se ejecuta rabbitmq-serverusará %APPDATA%\RabbitMQ\rabbitmq.config, pero no cuando se ejecuta como un servicio. - Eugene Beresovsky
Lo averigué. Mi comentario a la respuesta de @ MosheKatz elabora. - Eugene Beresovsky


Respuestas:


Asegúrese de configurar el RABBITMQ_CONFIG_FILE Variable de entorno en el lugar correcto. Necesita estar en el System variables sección en Panel de control > Sistema > Avanzado... > Variables de entorno.

Tenga en cuenta que todo lo que hace el script de inicio del servicio RabbitMQ es:

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

que simplemente verifica si la variable está configurada y la establece en el valor predeterminado si no está configurada. Luego pasa a verificar si el archivo, anexando un .config extensión, existe:

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

(Realmente no puedo decir que recomiendo hacer esto, pero, si realmente quieres, puedes cambiar c:/rabbitmq_server-3.1.1/RabbitMQ/sbin/rabbitmq-service.bat por lo que la línea anterior utiliza la ubicación que desea como predeterminada.)


5
2018-06-13 19:29



Es importante tener en cuenta que la sección del código anterior en rabbitmq-service.bat Solo se ejecuta una vez al instalar el servicio. Por lo tanto, si agrega un archivo de configuración más adelante, tendrá que volver a instalar el servicio para que se pueda seleccionar la configuración del archivo de configuración. - Eugene Beresovsky


Tuve el mismo problema y luché para resolverlo. Creo que las opciones proporcionadas en el menú de inicio están haciendo las cosas incorrectamente. Una vez que corrí desde la línea de comando funcionó bien.

establezca el RABBITMQ_CONFIG_FILE en su archivo de configuración 1. Agregue su archivo de configuración 2. parada de rabbitmq-service 3. rabbitmq-service quitar 4. instalación de rabbitmq-service

Entonces fue capaz de recoger el archivo de configuración


5
2018-02-24 06:21



Las alegrías ... eliminar el servicio y volver a instalar me sirvió, pero aún así ignoró la variable env RABBITMQ_CONFIG_FILE y buscó rabbitmq.conf en el directorio RABBITMQ_BASE - Ocean Airdrop