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 package org.apache.hadoop.hbase.master; 19 20 import java.util.Map; 21 22 import org.apache.hadoop.hbase.HServerLoad; 23 24 /** 25 * This is the JMX management interface for Hbase master information 26 */ 27 public interface MXBean { 28 29 /** 30 * Required for MXBean implementation 31 */ 32 public static interface RegionsInTransitionInfo { 33 /** 34 * Name of region in transition 35 */ 36 public String getRegionName(); 37 /** 38 * Current transition state 39 */ 40 public String getRegionState(); 41 /** 42 * Get Region Server name 43 */ 44 public String getRegionServerName(); 45 /** 46 * Get last update time 47 */ 48 public long getLastUpdateTime(); 49 } 50 51 /** 52 * Get ServerName 53 */ 54 public String getServerName(); 55 56 /** 57 * Get Average Load 58 * @return Average Load 59 */ 60 public double getAverageLoad(); 61 62 /** 63 * Get the Cluster ID 64 * @return Cluster ID 65 */ 66 public String getClusterId(); 67 68 /** 69 * Get the Zookeeper Quorum Info 70 * @return Zookeeper Quorum Info 71 */ 72 public String getZookeeperQuorum(); 73 74 /** 75 * Get the co-processors 76 * @return Co-processors 77 */ 78 public String[] getCoprocessors(); 79 80 /** 81 * Get hbase master start time 82 * @return Start time of master in milliseconds 83 */ 84 public long getMasterStartTime(); 85 86 /** 87 * Get the hbase master active time 88 * @return Time in milliseconds when master became active 89 */ 90 public long getMasterActiveTime(); 91 92 /** 93 * Whether this master is the active master 94 * @return True if this is the active master 95 */ 96 public boolean getIsActiveMaster(); 97 98 /** 99 * Get the live region servers 100 * @return Live region servers 101 */ 102 public Map<String, HServerLoad> getRegionServers(); 103 104 /** 105 * Get the dead region servers 106 * @return Dead region Servers 107 */ 108 public String[] getDeadRegionServers(); 109 110 /** 111 * Get information on regions in transition 112 * @return Regions in transition 113 */ 114 public RegionsInTransitionInfo[] getRegionsInTransition(); 115 116 }