We are upgrading SLF4J to 2.0.6 and Log4J to 2.20.0. We also have Log4JDBC in our project for logging JDBC activities. The version being used is: 1.16 (log4jdbc-log4j2-jdbc4.1). We also have MDC configured in our logs. Post the upgrade, we are seeing some strange issues while starting our tomcat server. Has anyone tried this combination and have you observed any issues? Is there any configuration that we are missing? Any help would be appreciated.
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)