I am using logback 1.2.3. I am passing the logback configuration as -Dlogback.configurationFile=$SERVICE_PATH/restapilayer.logback.xml
My restapilayer.logback.xml
looks like below
<configuration debug="true">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<Target>System.out</Target>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="STDOUT" />
</root>
</configuration>
In my logs also I am seeing the configuration file being loaded.
10:51:42,695 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [/home/ubuntu/build-target/restapilayer/restapilayer.logback.xml] at [file:/home/ubuntu/build-target/restapilayer/restapilayer.logback.xml]
10:51:42,860 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
10:51:42,863 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
10:51:42,869 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
10:51:42,894 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to DEBUG
10:51:42,895 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT]
10:51:42,895 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
10:51:42,896 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@3fd7a715 - Registering current configuration as safe fallback point
2018-01-13 10:51:42 [main] INFO com.vnera.common.utils.CommonUtils - adding uncaught exception handler hook...
INFO [2018-01-13 10:51:44] o.e.j.u.log:[?:?:?] - [main] - Logging initialized @1792ms
Then while trying to log I am seeing the logback configuration as null and it seems logback is running with default config
INFO [2018-01-12 16:25:34] c.v.r.c.v.r.VneraBackendService:[?:?:?] - [main] - Logback used _null_ as the configuration file_
I am using the below code to get the logback config
logger.debug("Testing Debug logging");
LoggerContext loggerContext = ((ch.qos.logback.classic.Logger)logger).getLoggerContext();
URL mainURL = ConfigurationWatchListUtil.getMainWatchURL(loggerContext);
System.out.println(mainURL);
// or even
logger.info("Logback used '{}' as the configuration file.", mainURL);
Can someone let me know what is going wrong? How can I debug this issue?
Maven dependency tree is added here.