[ 
https://issues.apache.org/jira/browse/QPID-7468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15942821#comment-15942821
 ] 

Rob Godfrey commented on QPID-7468:
-----------------------------------

So, I'd probably not bother using reflection or trying to allow for different 
versions of logback to be used.  I think that if you are embedding the broker 
you need to take responsibility for configuring logging externally to the 
broker (or provide alternative mechanisms for configuring through the broker).  
The LogBack logging plugins for the broker make the assumption that the broker 
"owns" the setup and configuration of logging, and thus it should be safe for 
it to assume a logback version.  Upgrading to the latest versions still makes 
sense, but I think rather than using reflection here we should just make it 
clearer and easier how to embed the broker.

> Upgrade logback to 1.1.7 and SLF4J to 1.7.22
> --------------------------------------------
>
>                 Key: QPID-7468
>                 URL: https://issues.apache.org/jira/browse/QPID-7468
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: qpid-java-6.0.4
>            Reporter: Alberto
>             Fix For: qpid-java-broker-7.0.0
>
>         Attachments: upgradeLogBack_1_1_10.diff, upgradeLogBack_1_1_7.diff
>
>
> The current version used in qpid-broker 6.0.4 for logback is 1.1.3. With the 
> version 1.1.7 logback broke backwards compatibility in  StatusManager 
> interface (ch.qos.logback.core.status.StatusManager).
> After this change, BrokerFileLoggerImpl is failing to add the 
> `BrokerFileLoggerStatusListener` to the loggerContext due to binary 
> incompatibility  (See line 210 of BrokerFileLoggerImpl for more info).
> {code:java}
>  @Override
>     protected Appender<ILoggingEvent> createAppenderInstance(Context 
> loggerContext)
>     {
>         SystemConfig<?> systemConfig = 
> (SystemConfig<?>)getParent(Broker.class).getParent(SystemConfig.class);
>         _logbackStatusListener = new BrokerFileLoggerStatusListener(this, 
> systemConfig);
>         _statusManager = loggerContext.getStatusManager();
>         _statusManager.add(_logbackStatusListener);
>         final RollingFileAppender<ILoggingEvent> appender = new 
> RollingFileAppender<>();
>         AppenderUtils.configureRollingFileAppender(this, loggerContext, 
> appender);
>         return appender;
>     }
> {code}
> We've noticed this after update spring boot to the latest version 
> 1.4.1.Release which includes logback 1.1.7.
> As a workaround, you can still downgrade your version of logback in your 
> project to 1.1.3 but it would be nice to have it upgraded



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to