SLF4J (2.0.6) 与 Log4JDBC 的兼容性

问题描述 投票:0回答:0

我们正在将 SLF4J 升级到 2.0.6,将 Log4J 升级到 2.20.0。我们的项目中还有用于记录 JDBC 活动的 Log4JDBC。使用的版本是:1.16 (log4jdbc-log4j2-jdbc4.1)。我们还在日志中配置了 MDC。升级后,我们在启动 tomcat 服务器时看到一些奇怪的问题。有没有人尝试过这种组合,你有没有发现任何问题?是否有任何我们缺少的配置?任何帮助将不胜感激。

03-Mar-2023 10:33:23.165 WARNING [main] org.apache.naming.NamingContext.lookup Unexpected exception resolving reference
java.sql.SQLException
    at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:359)
    at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:227)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:768)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:696)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:495)
    at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:153)
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:119)
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:108)
    at com.abc.DataSourceEncryptionFactory.createDataSource(DataSourceEncryptionFactory.java:44)
    at org.apache.tomcat.jdbc.pool.DataSourceFactory.getObjectInstance(DataSourceFactory.java:244)
    at org.apache.naming.factory.FactoryBase.getObjectInstance(FactoryBase.java:96)
    at java.naming/javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:341)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:864)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:158)
    at org.apache.naming.NamingContextBindingsEnumeration.nextElementInternal(NamingContextBindingsEnumeration.java:115)
    at org.apache.naming.NamingContextBindingsEnumeration.next(NamingContextBindingsEnumeration.java:69)
    at org.apache.naming.NamingContextBindingsEnumeration.next(NamingContextBindingsEnumeration.java:32)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:133)
    ...
Caused by: java.lang.NullPointerException
     at com.abc.MdcUtils.removeKeyHierarchies(MdcUtils.java:138)
     at com.abc.xyz.PlatformSlf4jLogDelegator.connectionInfo(PlatformSlf4jLogDelegator.java:494)
     at com.abc.xyz.PlatformSlf4jLogDelegator.connectionOpened(PlatformSlf4jLogDelegator.java:203)
     at net.sf.log4jdbc.sql.jdbcapi.ConnectionSpy.<init>(ConnectionSpy.java:205)
     at net.sf.log4jdbc.sql.jdbcapi.ConnectionSpy.<init>(ConnectionSpy.java:155)
     at net.sf.log4jdbc.sql.jdbcapi.DriverSpy.connect(DriverSpy.java:407)
     at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:346)
log4j2 slf4j log4jdbc
© www.soinside.com 2019 - 2024. All rights reserved.