Skip to content

Commit

Permalink
HBASE-24199 Procedure related metrics is not consumed in the JMX metr…
Browse files Browse the repository at this point in the history
…ic (#1616)


Signed-off-by: stack <stack@apache.org>
  • Loading branch information
gkanade committed May 1, 2020
1 parent 3df1e60 commit 9785f5d
Show file tree
Hide file tree
Showing 6 changed files with 31 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
import org.apache.hadoop.hbase.metrics.BaseSourceImpl;
import org.apache.hadoop.hbase.metrics.OperationMetrics;
import org.apache.hadoop.metrics2.MetricHistogram;
import org.apache.hadoop.metrics2.MetricsCollector;
import org.apache.hadoop.metrics2.MetricsRecordBuilder;
import org.apache.hadoop.metrics2.lib.MutableFastCounter;
import org.apache.hadoop.metrics2.lib.MutableGaugeLong;
import org.apache.yetus.audience.InterfaceAudience;
Expand Down Expand Up @@ -157,4 +159,13 @@ public OperationMetrics getOpenMetrics() {
public OperationMetrics getCloseMetrics() {
return closeMetrics;
}

@Override
public void getMetrics(MetricsCollector metricsCollector, boolean all) {
MetricsRecordBuilder metricsRecordBuilder = metricsCollector.addRecord(metricsName);
metricsRegistry.snapshot(metricsRecordBuilder, all);
if(metricsAdapter != null) {
metricsAdapter.snapshotAllMetrics(registry, metricsRecordBuilder);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,9 @@ public void getMetrics(MetricsCollector metricsCollector, boolean all) {
}

metricsRegistry.snapshot(metricsRecordBuilder, all);
if(metricsAdapter != null) {
metricsAdapter.snapshotAllMetrics(registry, metricsRecordBuilder);
}
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,9 @@ public void getMetrics(MetricsCollector metricsCollector, boolean all) {
}

metricsRegistry.snapshot(metricsRecordBuilder, all);
if(metricsAdapter != null) {
metricsAdapter.snapshotAllMetrics(registry, metricsRecordBuilder);
}
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,8 @@ public void testRITAssignmentManagerMetrics() throws Exception {
METRICS_HELPER.assertGauge(MetricsAssignmentManagerSource.RIT_COUNT_NAME, 1, amSource);
METRICS_HELPER.assertGauge(MetricsAssignmentManagerSource.RIT_COUNT_OVER_THRESHOLD_NAME, 1,
amSource);
METRICS_HELPER.assertCounter(MetricsAssignmentManagerSource.ASSIGN_METRIC_PREFIX
+ "SubmittedCount", 2, amSource);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
import java.util.stream.Collectors;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.CompatibilityFactory;
import org.apache.hadoop.hbase.HBaseClassTestRule;
import org.apache.hadoop.hbase.ServerName;
import org.apache.hadoop.hbase.StartMiniClusterOption;
Expand All @@ -41,6 +42,7 @@
import org.apache.hadoop.hbase.master.procedure.ServerCrashProcedure;
import org.apache.hadoop.hbase.procedure2.Procedure;
import org.apache.hadoop.hbase.regionserver.HRegionServer;
import org.apache.hadoop.hbase.test.MetricsAssertHelper;
import org.apache.hadoop.hbase.testclassification.LargeTests;
import org.apache.hadoop.hbase.testclassification.MasterTests;
import org.apache.hadoop.hbase.util.JVMClusterUtil;
Expand All @@ -59,6 +61,8 @@ public class TestClusterRestartFailover extends AbstractTestRestartCluster {
HBaseClassTestRule.forClass(TestClusterRestartFailover.class);

private static final Logger LOG = LoggerFactory.getLogger(TestClusterRestartFailover.class);
private static final MetricsAssertHelper metricsHelper =
CompatibilityFactory.getInstance(MetricsAssertHelper.class);

private volatile static CountDownLatch SCP_LATCH;
private static ServerName SERVER_FOR_TEST;
Expand Down Expand Up @@ -136,6 +140,11 @@ public void test() throws Exception {
serverNode = UTIL.getHBaseCluster().getMaster().getAssignmentManager().getRegionStates()
.getServerNode(SERVER_FOR_TEST);
assertNull("serverNode should be deleted after SCP finished", serverNode);

MetricsMasterSource masterSource = UTIL.getHBaseCluster().getMaster().getMasterMetrics()
.getMetricsSource();
metricsHelper.assertCounter(MetricsMasterSource.SERVER_CRASH_METRIC_PREFIX+"SubmittedCount",
4, masterSource);
}

private void setupCluster() throws Exception {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,9 @@ public void testDefaultMasterMetrics() throws Exception {
metricsHelper.assertTag("serverName", master.getServerName().toString(), masterSource);
metricsHelper.assertTag("clusterId", master.getClusterId(), masterSource);
metricsHelper.assertTag("zookeeperQuorum", master.getZooKeeper().getQuorum(), masterSource);

metricsHelper.assertCounter(MetricsMasterSource.SERVER_CRASH_METRIC_PREFIX+"SubmittedCount",
0, masterSource);
}

@Test
Expand Down

0 comments on commit 9785f5d

Please sign in to comment.