Using VisualVM to Monitor Database Performance
VisualVM provides information about database transactions and connection pooling. To see connection pooling information, you should install the Java M-Beans plugin for your version of VisualVM. See the VisualVM documentation for more information on M-Beans plugin.
After you install the plugin, in the MBeans tab, you can identify the numbers of connections used in the connection pool. In the c3p0 library, you can see the number of connections. It is shown as numBusyConnections.
VisualVM shows you which statements are running through this connection library. You can capture and analyze the thread dump to check which transactions are causing performance issues.
You can also use the
Support Subsystem to capture thread dumps during periods of poor database performance.
In the thread dumps, check if a large number of threads are processing functions in the com.thingworx.persistence.* library. These threads should be isolated to identify the API calls to the database server.