Description
We are deploying our application with tomcat and we are specifing the custom context name in our web.xml like this:
<!-- name for logback lookup -->
<env-entry>
<env-entry-name>logback/context-name</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>contextA</env-entry-value>
</env-entry>
With logback 1.2.9, when tomcat is launched with the -Dlogback.ContextSelector=JNDI
, the application correctly loads the file logback-contextA.xml
and inits the logger with its content. In version 1.3.14, the JNDI lookup is not done. Investigating the issue, we found out that now the code is relying on java services to detect the binding and it's using ch.qos.logback.classic.spi.LogbackServiceProvider
to init the logger, but in this class the call to contextSelectorBinder.init(defaultLoggerContext, KEY);
is commented, so the context selector binder is not called at all. It seems that the comment has been added in this commit.
Are we missing something there or is it a bug in the service provider not calling the context selector init method?