View Javadoc

1   /**
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *     http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing, software
13   * distributed under the License is distributed on an "AS IS" BASIS,
14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   * See the License for the specific language governing permissions and
16   * limitations under the License.
17   */
18  
19  package org.apache.hadoop.hbase.master;
20  
21  import org.apache.hadoop.hbase.metrics.BaseSource;
22  
23  public interface MetricsAssignmentManagerSource extends BaseSource {
24  
25    /**
26     * The name of the metrics
27     */
28    String METRICS_NAME = "AssignmentManger";
29  
30    /**
31     * The context metrics will be under.
32     */
33    String METRICS_CONTEXT = "master";
34  
35    /**
36     * The name of the metrics context that metrics will be under in jmx
37     */
38    String METRICS_JMX_CONTEXT = "Master,sub=" + METRICS_NAME;
39  
40    /**
41     * Description
42     */
43    String METRICS_DESCRIPTION = "Metrics about HBase master assignment manager.";
44  
45    String RIT_COUNT_NAME = "ritCount";
46    String RIT_COUNT_OVER_THRESHOLD_NAME = "ritCountOverThreshold";
47    String RIT_OLDEST_AGE_NAME = "ritOldestAge";
48    String RIT_DURATION_NAME = "ritDuration";
49    String ASSIGN_TIME_NAME = "assign";
50    String BULK_ASSIGN_TIME_NAME = "bulkAssign";
51  
52    void updateAssignmentTime(long time);
53  
54    void updateBulkAssignTime(long time);
55  
56    /**
57     * Set the number of regions in transition.
58     *
59     * @param ritCount count of the regions in transition.
60     */
61    void setRIT(int ritCount);
62  
63    /**
64     * Set the count of the number of regions that have been in transition over the threshold time.
65     *
66     * @param ritCountOverThreshold number of regions in transition for longer than threshold.
67     */
68    void setRITCountOverThreshold(int ritCountOverThreshold);
69  
70    /**
71     * Set the oldest region in transition.
72     *
73     * @param age age of the oldest RIT.
74     */
75    void setRITOldestAge(long age);
76  
77    void updateRitDuration(long duration);
78  }