JWT007 opened a new issue, #3360: URL: https://github.com/apache/logging-log4j2/issues/3360
**Log4j 2.24** The XmlConfiguration implementation is non-final meaning it is possible to subclass it to provide additional custom functionality; however: the most relevant class field `rootElement` is private making it near impossible to do anything useful in the subclass. It would be helpful (and prevent making a complete copy of the implementation) to at the very least provide a protected accessor for this field: i.e. `protected Element getRootElement()` This way, a custom subclass has a chance to perform some custom handling in `public void setup()` before the hierarchy is constructed. Most of the AbstractConfiguration configuration-relevant fields are protected (i.e. rootNode) - but it seems someone didn't stick to that approach in the XmlConfiguration implementation. SIDE NOTE: It seems the complexity of the currrent XmlConfiguration could be greatly reduced by sticking a little more closely to SRP (single-responsibility principle) and offloading the instantiation/configuration of the DocumentBuilderFactory and maybe the validation to separate utility classes . -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org