You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by mb...@apache.org on 2012/07/13 01:16:30 UTC
svn commit: r1360997 - in
/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift:
ThriftMBean.java ThriftMetrics.java ThriftServerRunner.java
Author: mbautin
Date: Thu Jul 12 23:16:30 2012
New Revision: 1360997
URL: http://svn.apache.org/viewvc?rev=1360997&view=rev
Log:
[jira] [HBASE-6360] [89-fb] Make thrift proxy stats visible in jconsole.
Author: michalgr
Summary: Make thrift proxy stats visible in jconsole.
Test Plan: Checked if stats are visible in jconsole and cmdline-jmxclient.
Reviewers: kranganathan
Reviewed By: kranganathan
Differential Revision: https://reviews.facebook.net/D4065
Added:
hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMBean.java
Modified:
hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMetrics.java
hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServerRunner.java
Added: hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMBean.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMBean.java?rev=1360997&view=auto
==============================================================================
--- hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMBean.java (added)
+++ hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMBean.java Thu Jul 12 23:16:30 2012
@@ -0,0 +1,26 @@
+package org.apache.hadoop.hbase.thrift;
+
+import javax.management.ObjectName;
+
+import org.apache.hadoop.hbase.metrics.MetricsMBeanBase;
+import org.apache.hadoop.metrics.util.MBeanUtil;
+import org.apache.hadoop.metrics.util.MetricsRegistry;
+
+public class ThriftMBean extends MetricsMBeanBase{
+
+ private final ObjectName mbeanName;
+
+ public ThriftMBean(MetricsRegistry registry, String rsName) {
+ super(registry, rsName);
+
+ mbeanName = MBeanUtil.registerMBean(rsName,
+ rsName, this);
+ }
+
+ public void shutdown() {
+ if (mbeanName != null){
+ MBeanUtil.unregisterMBean(mbeanName);
+ }
+ }
+
+}
Modified: hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMetrics.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMetrics.java?rev=1360997&r1=1360996&r2=1360997&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMetrics.java (original)
+++ hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftMetrics.java Thu Jul 12 23:16:30 2012
@@ -66,6 +66,8 @@ public class ThriftMetrics implements Up
private MetricsTimeVaryingRate slowThriftCall =
new MetricsTimeVaryingRate("slowThriftCall", registry);
+ private final ThriftMBean mbean;
+
public ThriftMetrics(int port, Configuration conf, Class<?> iface) {
slowResponseTime = conf.getLong(
SLOW_RESPONSE_NANO_SEC, DEFAULT_SLOW_RESPONSE_NANO_SEC);
@@ -79,6 +81,12 @@ public class ThriftMetrics implements Up
context.registerUpdater(this);
createMetricsForMethods(iface);
+
+ mbean = new ThriftMBean(registry, CONTEXT_NAME);
+ }
+
+ public void shutdown(){
+ mbean.shutdown();
}
public void incTimeInQueue(long time) {
Modified: hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServerRunner.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServerRunner.java?rev=1360997&r1=1360996&r2=1360997&view=diff
==============================================================================
--- hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServerRunner.java (original)
+++ hbase/branches/0.89-fb/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServerRunner.java Thu Jul 12 23:16:30 2012
@@ -265,6 +265,7 @@ public class ThriftServerRunner implemen
tserver.stop();
tserver = null;
}
+ metrics.shutdown();
}
/**