2 * Copyright The Apache Software Foundation
4 * Licensed to the Apache Software Foundation (ASF) under one or more
5 * contributor license agreements. See the NOTICE file distributed with this
6 * work for additional information regarding copyright ownership. The ASF
7 * licenses this file to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
15 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
16 * License for the specific language governing permissions and limitations
19 package org
.apache
.hadoop
.hbase
.regionserver
;
21 import org
.apache
.hadoop
.hbase
.CompatibilitySingletonFactory
;
22 import org
.apache
.yetus
.audience
.InterfaceAudience
;
24 @InterfaceAudience.Private
25 public class MetricsTable
{
26 private final MetricsTableAggregateSource tableSourceAgg
;
27 private MetricsTableWrapperAggregate wrapper
;
29 public MetricsTable(final MetricsTableWrapperAggregate wrapper
) {
30 tableSourceAgg
= CompatibilitySingletonFactory
.getInstance(MetricsRegionServerSourceFactory
.class)
32 this.wrapper
= wrapper
;
35 public MetricsTableWrapperAggregate
getTableWrapperAgg() {
39 public MetricsTableAggregateSource
getTableSourceAgg() {
40 return tableSourceAgg
;
43 public void incrSplitRequest(String table
) {
44 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
).incrSplitRequest();
47 public void incrSplitSuccess(String table
) {
48 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
).incrSplitSuccess();
51 public void updateSplitTime(String table
, long t
) {
52 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
).updateSplitTime(t
);
55 public void updateFlushTime(String table
, long t
) {
56 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
).updateFlushTime(t
);
59 public void updateFlushMemstoreSize(String table
, long bytes
) {
60 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
).updateFlushMemstoreSize(bytes
);
63 public void updateFlushOutputSize(String table
, long bytes
) {
64 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
).updateFlushOutputSize(bytes
);
67 public void updateCompactionTime(String table
, boolean isMajor
, long t
) {
68 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
).updateCompactionTime(isMajor
, t
);
71 public void updateCompactionInputFileCount(String table
, boolean isMajor
, long c
) {
72 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
)
73 .updateCompactionInputFileCount(isMajor
, c
);
76 public void updateCompactionInputSize(String table
, boolean isMajor
, long bytes
) {
77 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
)
78 .updateCompactionInputSize(isMajor
, bytes
);
81 public void updateCompactionOutputFileCount(String table
, boolean isMajor
, long c
) {
82 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
)
83 .updateCompactionOutputFileCount(isMajor
, c
);
86 public void updateCompactionOutputSize(String table
, boolean isMajor
, long bytes
) {
87 tableSourceAgg
.getOrCreateTableSource(table
, wrapper
)
88 .updateCompactionOutputSize(isMajor
, bytes
);