Description
Previously in older versions of logback the following was valid:
<configuration>
<appender name="STDOUT-ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="com.foo.SomeEncoder"/>
</appender>
</appender>
<root level="${ROOT_LOG_LEVEL:-info}">
<appender-ref ref="STDOUT-ASYNC"/>
</root>
</configuration>
With logback 1.3.0 and 1.4.0 this fails with:
22:49:33,671 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [STDOUT-ASYNC] 22:49:33,671 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender] 22:49:33,673 |-WARN in ch.qos.logback.core.model.processor.AppenderModelHandler - Appender named [STDOUT] not referenced. Skipping further processing. 22:49:33,673 |-ERROR in ch.qos.logback.classic.AsyncAppender[STDOUT-ASYNC] - No attached appenders found.
To get it to work, I have to switch to the "appender-ref" style.
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="com.zendesk.logging.JsonLogEncoder"/>
</appender>
<appender name="STDOUT-ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="STDOUT" />
</appender>
<root level="${ROOT_LOG_LEVEL:-info}">
<appender-ref ref="STDOUT-ASYNC"/>
</root>
</configuration>
Not sure if this an intentional change to drop support for the format we used earlier, or a bug.
Thanks