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.commons.logging.Log;
22 import org.apache.commons.logging.LogFactory;
23 import org.apache.hadoop.hbase.classification.InterfaceAudience;
24 import org.apache.hadoop.hbase.classification.InterfaceStability;
25 import org.apache.hadoop.hbase.CompatibilitySingletonFactory;
26
27
28
29
30
31
32
33
34 @InterfaceStability.Evolving
35 @InterfaceAudience.Private
36 public class MetricsMaster {
37 private final Log LOG = LogFactory.getLog(this.getClass());
38 private MetricsMasterSource masterSource;
39 private MetricsMasterProcSource masterProcSource;
40 private MetricsMasterQuotaSource masterQuotaSource;
41
42 public MetricsMaster(MetricsMasterWrapper masterWrapper) {
43 masterSource = CompatibilitySingletonFactory.getInstance(MetricsMasterSourceFactory.class).create(masterWrapper);
44 masterProcSource =
45 CompatibilitySingletonFactory.getInstance(MetricsMasterProcSourceFactory.class).create(masterWrapper);
46 masterQuotaSource =
47 CompatibilitySingletonFactory.getInstance(MetricsMasterQuotaSourceFactory.class).create(masterWrapper);
48 }
49
50
51 public MetricsMasterSource getMetricsSource() {
52 return masterSource;
53 }
54
55 public MetricsMasterProcSource getMetricsProcSource() {
56 return masterProcSource;
57 }
58
59 public MetricsMasterQuotaSource getMetricsQuotaSource() {
60 return masterQuotaSource;
61 }
62
63
64
65
66 public void incrementRequests(final long inc) {
67 masterSource.incRequests(inc);
68 }
69
70
71
72
73
74
75 public void setNumSpaceQuotas(final long numSpaceQuotas) {
76 masterQuotaSource.updateNumSpaceQuotas(numSpaceQuotas);
77 }
78
79
80
81
82
83
84 public void setNumTableInSpaceQuotaViolation(final long numTablesInViolation) {
85 masterQuotaSource.updateNumTablesInSpaceQuotaViolation(numTablesInViolation);
86 }
87
88
89
90
91
92
93 public void setNumNamespacesInSpaceQuotaViolation(final long numNamespacesInViolation) {
94 masterQuotaSource.updateNumNamespacesInSpaceQuotaViolation(numNamespacesInViolation);
95 }
96
97
98
99
100
101
102 public void setNumRegionSizeReports(final long numRegionReports) {
103 masterQuotaSource.updateNumCurrentSpaceQuotaRegionSizeReports(numRegionReports);
104 }
105
106
107
108
109
110
111
112 public void incrementQuotaObserverTime(final long executionTime) {
113 masterQuotaSource.incrementSpaceQuotaObserverChoreTime(executionTime);
114 }
115 }