1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.hadoop.hbase.regionserver;
19
20 import org.apache.commons.logging.Log;
21 import org.apache.commons.logging.LogFactory;
22 import org.apache.hadoop.classification.InterfaceAudience;
23 import org.apache.hadoop.classification.InterfaceStability;
24 import org.apache.hadoop.hbase.CompatibilitySingletonFactory;
25
26
27
28
29
30
31
32
33 @InterfaceStability.Evolving
34 @InterfaceAudience.Private
35 public class MetricsRegionServer {
36 private final Log LOG = LogFactory.getLog(this.getClass());
37 private MetricsRegionServerSource serverSource;
38 private MetricsRegionServerWrapper regionServerWrapper;
39
40 public MetricsRegionServer(MetricsRegionServerWrapper regionServerWrapper) {
41 this.regionServerWrapper = regionServerWrapper;
42 serverSource =
43 CompatibilitySingletonFactory.getInstance(MetricsRegionServerSourceFactory.class)
44 .createServer(regionServerWrapper);
45 }
46
47
48 public MetricsRegionServerSource getMetricsSource() {
49 return serverSource;
50 }
51
52 public MetricsRegionServerWrapper getRegionServerWrapper() {
53 return regionServerWrapper;
54 }
55
56 public void updatePut(long t){
57 if (t > 1000) {
58 serverSource.incrSlowPut();
59 }
60 serverSource.updatePut(t);
61 }
62
63 public void updateDelete(long t){
64 if (t > 1000) {
65 serverSource.incrSlowDelete();
66 }
67 serverSource.updateDelete(t);
68 }
69
70 public void updateGet(long t){
71 if (t > 1000) {
72 serverSource.incrSlowGet();
73 }
74 serverSource.updateGet(t);
75 }
76
77 public void updateIncrement(long t){
78 if (t > 1000) {
79 serverSource.incrSlowIncrement();
80 }
81 serverSource.updateIncrement(t);
82 }
83
84 public void updateAppend(long t){
85 if (t > 1000) {
86 serverSource.incrSlowAppend();
87 }
88 serverSource.updateAppend(t);
89 }
90 }