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 AVERAGE_LOAD_NAME = "averageLoad";
52   String LIVE_REGION_SERVERS_NAME = "liveRegionServers";
53   String DEAD_REGION_SERVERS_NAME = "deadRegionServers";
54   String NUM_REGION_SERVERS_NAME = "numRegionServers";
55   String NUM_DEAD_REGION_SERVERS_NAME = "numDeadRegionServers";
56   String ZOOKEEPER_QUORUM_NAME = "zookeeperQuorum";
57   String SERVER_NAME_NAME = "serverName";
58   String CLUSTER_ID_NAME = "clusterId";
59   String IS_ACTIVE_MASTER_NAME = "isActiveMaster";
60 
61 
62   String CLUSTER_REQUESTS_NAME = "clusterRequests";
63   String MASTER_ACTIVE_TIME_DESC = "Master Active Time";
64   String MASTER_START_TIME_DESC = "Master Start Time";
65   String AVERAGE_LOAD_DESC = "AverageLoad";
66   String LIVE_REGION_SERVERS_DESC = "Names of live RegionServers";
67   String NUMBER_OF_REGION_SERVERS_DESC = "Number of RegionServers";
68   String DEAD_REGION_SERVERS_DESC = "Names of dead RegionServers";
69   String NUMBER_OF_DEAD_REGION_SERVERS_DESC = "Number of dead RegionServers";
70   String ZOOKEEPER_QUORUM_DESC = "Zookeeper Quorum";
71   String SERVER_NAME_DESC = "Server Name";
72   String CLUSTER_ID_DESC = "Cluster Id";
73   String IS_ACTIVE_MASTER_DESC = "Is Active Master";
74 
75 
76 
77   /**
78    * Increment the number of requests the cluster has seen.
79    *
80    * @param inc Ammount to increment the total by.
81    */
incRequests(final long inc)82   void incRequests(final long inc);
83 
84 
85 
86 
87 }
88