1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.hadoop.hbase.master;
20
21 import org.apache.hadoop.hbase.classification.InterfaceAudience;
22 import org.apache.hadoop.hbase.metrics.BaseSourceImpl;
23 import org.apache.hadoop.metrics2.MetricHistogram;
24
25 @InterfaceAudience.Private
26 public class MetricsMasterFilesystemSourceImpl
27 extends BaseSourceImpl
28 implements MetricsMasterFileSystemSource {
29
30 private MetricHistogram splitSizeHisto;
31 private MetricHistogram splitTimeHisto;
32 private MetricHistogram metaSplitTimeHisto;
33 private MetricHistogram metaSplitSizeHisto;
34
35 public MetricsMasterFilesystemSourceImpl() {
36 this(METRICS_NAME, METRICS_DESCRIPTION, METRICS_CONTEXT, METRICS_JMX_CONTEXT);
37 }
38
39 public MetricsMasterFilesystemSourceImpl(String metricsName,
40 String metricsDescription,
41 String metricsContext, String metricsJmxContext) {
42 super(metricsName, metricsDescription, metricsContext, metricsJmxContext);
43 }
44
45 @Override
46 public void init() {
47 splitSizeHisto = metricsRegistry.newSizeHistogram(SPLIT_SIZE_NAME, SPLIT_SIZE_DESC);
48 splitTimeHisto = metricsRegistry.newTimeHistogram(SPLIT_TIME_NAME, SPLIT_TIME_DESC);
49 metaSplitTimeHisto =
50 metricsRegistry.newTimeHistogram(META_SPLIT_TIME_NAME, META_SPLIT_TIME_DESC);
51 metaSplitSizeHisto =
52 metricsRegistry.newSizeHistogram(META_SPLIT_SIZE_NAME, META_SPLIT_SIZE_DESC);
53 }
54
55 @Override
56 public void updateSplitTime(long time) {
57 splitTimeHisto.add(time);
58 }
59
60 @Override
61 public void updateSplitSize(long size) {
62 splitSizeHisto.add(size);
63 }
64
65
66 @Override
67 public void updateMetaWALSplitTime(long time) {
68 metaSplitTimeHisto.add(time);
69 }
70
71 @Override
72 public void updateMetaWALSplitSize(long size) {
73 metaSplitSizeHisto.add(size);
74 }
75 }