Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Monitoring JDBC Performance with JDbMonitor

DZone's Guide to

Monitoring JDBC Performance with JDbMonitor

· Performance Zone ·
Free Resource

xMatters delivers integration-driven collaboration that relays data between systems, while engaging the right people to proactively resolve issues. Read the Monitoring in a Connected Enterprise whitepaper and learn about 3 tools for resolving incidents quickly.


There may be some situations where we need to monitor our JDBC calls. There are few mechanisms available for monitoring JDBC calls. I have tried JDbMonitor in some of my projects because it is easy to use and remove without any code change.

JDbMonitor works as a proxy between our application the JDBC driver. Essentially there may be some performance issue if we use this in a production environment. JDbMonitor provides a GUI application to monitor our JDBC calls.

image credit : http://www.jdbmonitor.com

In the current version(1.1) it supports
  • Statemt
  • PreparedStatement
but callable and batch operations are not supported yet.

Lets have a look on how to configure JDbMonitor to monitor our JDBC calls in step by step.
Step 1 : Add (jdbmonitor-driver.jar,jdbmonitor-common.jar and the JDBC driver) to your class path.
In my case I am using MySQL driver.



Step 2 : Point JDBC Driver to com.jdbmonitor.MonitorDriver where the connection is created.

package com.kani;

import java.sql.Connection;
import java.sql.DriverManager;

public class ConnectionManager {
 
 private static final String HOST="localhost";
 private static final String DBNAME="test_db";
 private static final String USERNAME="root";
 private static final String PASSWORD="";
 
    public static Connection getNewDBConnection() {
        Connection conn = null;
        try {
            Class.forName("com.jdbmonitor.MonitorDriver");
            conn = DriverManager.getConnection("jdbc:mysql://"+HOST+"/"+DBNAME, USERNAME, PASSWORD);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return conn;
    }
}

Step 3 : Run jdbmonitor client program. and connect(f2)


it should show all the supported JDBC operations if it is connected successfully.



Note : If you are using a property file you can remove JDBmonitor without any code change. And it is possible to monitor underlying Hibernate JDBC operations easily.

3 Steps to Monitoring in a Connected Enterprise. Check out xMatters.

Topics:

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}