Always check the localhost.log for the word connections



In multiTenantConnectionProvider - turn hibernate statistic on:


lSettings.put("hibernate.generate_statistics","true");


also add hikari leak threashold in not already in


lSettings.put("hibernate.hikari.leakDetectionThreshold","10000");


can also reduce the no of connection so easier to trigger the issue


 lSettings.put("hibernate.hikari.minimumIdle""1");

        // Maximum number of actual connection in the pool

        lSettings.put("hibernate.hikari.maximumPoolSize""10")


In logback ensure logging hibernate stats and hikari


    

      

    <appender name="HIKARI"  class="ch.qos.logback.core.rolling.RollingFileAppender">

        <file>${LOG_HOME}/hikari.log</file>

            <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">

                  <fileNamePattern>${LOG_HOME}/hikari.%d{yyyy-MM-dd}.%i.log</fileNamePattern>

                  <maxFileSize>10MB</maxFileSize>

                  <totalSizeCap>5GB</totalSizeCap>

                  <maxHistory>20</maxHistory>

              </rollingPolicy>

              <layout class="ch.qos.logback.classic.PatternLayout">

                    <pattern>[%-5level] -%d{yyyy-MM-dd HH:mm:ss:SSS} -%X{tenant} - [%X{IP}] - %c{2}:%L - %m%n</pattern>

              </layout>

    </appender>

 

      <logger name="com.zaxxer.hikari" level="ALL" additivity="false">

        <appender-ref ref="HIKARI" />

    </logger>

    

        <appender name="HIBERNATE"  class="ch.qos.logback.core.rolling.RollingFileAppender">

        <file>${LOG_HOME}/hibernate.log</file>

            <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">

                  <fileNamePattern>${LOG_HOME}/hibernate.%d{yyyy-MM-dd}.%i.log</fileNamePattern>

                  <maxFileSize>10MB</maxFileSize>

                  <totalSizeCap>5GB</totalSizeCap>

                  <maxHistory>20</maxHistory>

              </rollingPolicy>

              <layout class="ch.qos.logback.classic.PatternLayout">

                    <pattern>[%-5level] -%d{yyyy-MM-dd HH:mm:ss:SSS} -%X{tenant} - [%X{IP}] - %c{2}:%L - %m%n</pattern>

              </layout>

    </appender>

 

 

    <logger name="org.hibernate" level="TRACE">

        <appender-ref ref="HIBERNATE" />

    </logger>