The broker configures Log4J at startup due to its heritage of running in a standalone VM. We have made the broker easier to run embedded in recent times, but it still always configures Log4J at startup. It was requested that we enable preventing it from doing this so the embedding application can configure things itself.
Support will be added to the BrokerOptions object to allow requesting the Broker instance not perform log4j logging configuration when it is being run embedded. This will also prevent the brokers LoggingManagement MBean from being initialised, as it is dependant on the logging configuration perfomed by the broker and it also has direct support for managing the Log4j configuration file which may not exist in this case.