You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Pastrie (JIRA)" <ji...@apache.org> on 2016/11/21 15:02:59 UTC
[jira] [Created] (LOG4J2-1721) Composite configuration using
log4jConfiguration context parameter
Pastrie created LOG4J2-1721:
-------------------------------
Summary: Composite configuration using log4jConfiguration context parameter
Key: LOG4J2-1721
URL: https://issues.apache.org/jira/browse/LOG4J2-1721
Project: Log4j 2
Issue Type: Improvement
Components: Configurators, Web/Servlet
Affects Versions: 2.7
Reporter: Pastrie
Log4j allows multiple configuration files to be used by specifying them as a list of comma separated file paths on log4j.configurationFile property. This feature is not available in web environment since the log4jConfiguration context parameter accepts a Path/File/URI.
My proposal is to apply some small changes in the Log4jWebInitializerImpl class
- change method getConfigURI to return List<URI> instead of URI.
if (configLocation != null) {
if (configLocation.contains(",")) {
final String[] parts = configLocation.split(",");
final List<URI> uris = new ArrayList<>(parts.length);
for (final String part : parts) {
final URL url = servletContext.getResource(part);
if (url != null) {
final URI uri = url.toURI();
LOGGER.debug("getConfigURI found resource [{}] in servletContext at [{}]", uri, configLocation);
uris.add(url);
}
}
}
- change method initializeNonJndi
[...]
final List<URI> listUri = getConfigURI(location);
this.loggerContext = Configurator.initialize(this.name, this.getClassLoader(), listUri, this.servletContext);
}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org