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  /**
24   * Interface that classes that expose metrics about the master will implement.
25   */
26  public interface MetricsMasterSource extends BaseSource {
27  
28    /**
29     * The name of the metrics
30     */
31    String METRICS_NAME = "Server";
32  
33    /**
34     * The context metrics will be under.
35     */
36    String METRICS_CONTEXT = "master";
37  
38    /**
39     * The name of the metrics context that metrics will be under in jmx
40     */
41    String METRICS_JMX_CONTEXT = "Master,sub=" + METRICS_NAME;
42  
43    /**
44     * Description
45     */
46    String METRICS_DESCRIPTION = "Metrics about HBase master server";
47  
48    // Strings used for exporting to metrics system.
49    String MASTER_ACTIVE_TIME_NAME = "masterActiveTime";
50    String MASTER_START_TIME_NAME = "masterStartTime";
51    String MASTER_FINISHED_INITIALIZATION_TIME_NAME = "masterFinishedInitializationTime";
52    String AVERAGE_LOAD_NAME = "averageLoad";
53    String LIVE_REGION_SERVERS_NAME = "liveRegionServers";
54    String DEAD_REGION_SERVERS_NAME = "deadRegionServers";
55    String DRAINING_REGION_SERVER_NAME = "draininigRegionServers";
56    String NUM_REGION_SERVERS_NAME = "numRegionServers";
57    String NUM_DEAD_REGION_SERVERS_NAME = "numDeadRegionServers";
58    String NUM_DRAINING_REGION_SERVERS_NAME = "numDrainingRegionServers";
59    String ZOOKEEPER_QUORUM_NAME = "zookeeperQuorum";
60    String SERVER_NAME_NAME = "serverName";
61    String CLUSTER_ID_NAME = "clusterId";
62    String IS_ACTIVE_MASTER_NAME = "isActiveMaster";
63    String SPLIT_PLAN_COUNT_NAME = "splitPlanCount";
64    String MERGE_PLAN_COUNT_NAME = "mergePlanCount";
65  
66    String CLUSTER_REQUESTS_NAME = "clusterRequests";
67    String MASTER_ACTIVE_TIME_DESC = "Master Active Time";
68    String MASTER_START_TIME_DESC = "Master Start Time";
69    String MASTER_FINISHED_INITIALIZATION_TIME_DESC = "Timestamp when Master has finished initializing";
70    String AVERAGE_LOAD_DESC = "AverageLoad";
71    String LIVE_REGION_SERVERS_DESC = "Names of live RegionServers";
72    String NUMBER_OF_REGION_SERVERS_DESC = "Number of RegionServers";
73    String DEAD_REGION_SERVERS_DESC = "Names of dead RegionServers";
74    String NUMBER_OF_DEAD_REGION_SERVERS_DESC = "Number of dead RegionServers";
75    String ZOOKEEPER_QUORUM_DESC = "Zookeeper Quorum";
76    String DRAINING_REGION_SERVER_DESC = "Names of draining RegionServers";
77    String NUMBER_OF_DRAINING_REGION_SERVERS_DESC = "Number of draining RegionServers";
78    String SERVER_NAME_DESC = "Server Name";
79    String CLUSTER_ID_DESC = "Cluster Id";
80    String IS_ACTIVE_MASTER_DESC = "Is Active Master";
81    String SPLIT_PLAN_COUNT_DESC = "Number of Region Split Plans executed";
82    String MERGE_PLAN_COUNT_DESC = "Number of Region Merge Plans executed";
83  
84  
85    /**
86     * Increment the number of requests the cluster has seen.
87     *
88     * @param inc Ammount to increment the total by.
89     */
90    void incRequests(final long inc);
91  
92  
93  
94  
95  }