Enable or disable extensions while the broker is running

Question

How do I enable or disable an extension while the broker is running, without having to stop and restart the broker?

Answer

To disable a HiveMQ Extension, locate the extension folder in the extensions directory of your HiveMQ installation and create the file named DISABLED:

└─ hivemq ├─ bin ├─ conf │ ├─ logback.xml ├─ data ├─ extensions │ ├─ hivemq-bridge-extension │ ├──── bridge-configuration.xml │ ├──── bridge-extension.jar │ ├──── hivemq-extension.xml │ ├──── DISABLED │ └──── ... │ └─ ... ├─ license ├─ log └─ ...

Disable the extension

In a Linux shell, use the touch command to create an empty DISABLED file:

cd /opt/hivemq/extensions/hivemq-bridge-extension touch DISABLED

Once the HiveMQ broker process notices the file named DISABLED in the extension folder, it will disable the corresponding extension and log the INFO message about this into the hivemq.log:

INFO - Extension "HiveMQ Enterprise Bridge Extension" version 4.15.0 stopped successfully.

Enable the extension

To enable the HiveMQ Extension, locate the extension folder in the extensions directory of your HiveMQ installation and remove the DISABLED file. In Linux shell you can use the following command to do so:

Once the HiveMQ broker process notices that the file named DISABLED is not present in the extension folder, it will enable the corresponding extension and log the INFO message about this into the hivemq.log: