2012-08-06 13 views
8

Wir versuchen, von c3p0 zu bonecp Verbindungspool zu verschieben. Wir verwenden Hibernate als ORM-Tool.Überwachung Bone cp Verbindungspool

Gibt es nun eine Möglichkeit, die Verbindungen in Boncecp zu überwachen, wie die maximal verfügbare und belegte Verbindung im Pool zu einem bestimmten Zeitpunkt kennen zu lernen und ob es noch nicht zurückgegebene Verbindungen zum Pool usw. gibt?

Danke für die Hilfe

Antwort

7

Viele Informationen Überwachung erfolgt über die BoneCP Connection-Pool-Klasse (BoneCP) zugänglich. Dies wird als Managed Bean registriert, wenn Sie also jconsole verwenden oder ein anderes Monitoring-Tool sollten Sie eine Detailansicht auf diese Informationen erhalten, zB:

BoneCP MBean Screenshot

Bei Bedarf können Sie erhalten die BoneCP Instanz von einem BoneCPDataSource mit BoneCPDataSource#getPool():

/** 
* Get a status information of the JDBC connections. 
* 
* @return The status information of the JDBC connections. 
*/ 
public String getConnectionStatus() { 
    String status = "unknown"; 
    if (dataSource instanceof BoneCPDataSource) { 

     BoneCPDataSource bcpDataSource = (BoneCPDataSource) dataSource; 
     BoneCP bcp = bcpDataSource.getPool(); 
     status = "JDBC connections: " + bcp.getTotalLeased() 
      + " in use/" + bcp.getTotalFree() 
      + " in pool/total created " 
      + bcp.getTotalCreatedConnections(); 

    } 
    return status; 
} 
+0

+ Matt Ball Danke für die Bearbeitung! – FrVaBe