1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.hadoop.hbase.regionserver.wal;
20
21 import org.apache.commons.logging.Log;
22 import org.apache.commons.logging.LogFactory;
23 import org.apache.hadoop.hbase.metrics.BaseSourceImpl;
24 import org.apache.hadoop.metrics2.MetricHistogram;
25
26
27
28
29
30 public class MetricsEditsReplaySourceImpl extends BaseSourceImpl implements
31 MetricsEditsReplaySource {
32
33 private static final Log LOG = LogFactory.getLog(MetricsEditsReplaySourceImpl.class.getName());
34
35 private MetricHistogram replayTimeHisto;
36 private MetricHistogram replayBatchSizeHisto;
37 private MetricHistogram replayDataSizeHisto;
38
39 public MetricsEditsReplaySourceImpl() {
40 this(METRICS_NAME, METRICS_DESCRIPTION, METRICS_CONTEXT, METRICS_JMX_CONTEXT);
41 }
42
43 public MetricsEditsReplaySourceImpl(String metricsName,
44 String metricsDescription,
45 String metricsContext,
46 String metricsJmxContext) {
47 super(metricsName, metricsDescription, metricsContext, metricsJmxContext);
48 }
49
50 @Override
51 public void init() {
52 super.init();
53 replayTimeHisto = metricsRegistry.newHistogram(REPLAY_TIME_NAME, REPLAY_TIME_DESC);
54 replayBatchSizeHisto = metricsRegistry.newHistogram(REPLAY_BATCH_SIZE_NAME,
55 REPLAY_BATCH_SIZE_DESC);
56 replayDataSizeHisto = metricsRegistry
57 .newHistogram(REPLAY_DATA_SIZE_NAME, REPLAY_DATA_SIZE_DESC);
58 }
59
60 @Override
61 public void updateReplayTime(long time) {
62 replayTimeHisto.add(time);
63 }
64
65 @Override
66 public void updateReplayBatchSize(long size) {
67 replayBatchSizeHisto.add(size);
68 }
69
70 @Override
71 public void updateReplayDataSize(long size) {
72 replayDataSizeHisto.add(size);
73 }
74 }