001/* 002 * Licensed to the Apache Software Foundation (ASF) under one 003 * or more contributor license agreements. See the NOTICE file 004 * distributed with this work for additional information 005 * regarding copyright ownership. The ASF licenses this file 006 * to you under the Apache License, Version 2.0 (the 007 * "License"); you may not use this file except in compliance 008 * with the License. You may obtain a copy of the License at 009 * 010 * http://www.apache.org/licenses/LICENSE-2.0 011 * 012 * Unless required by applicable law or agreed to in writing, software 013 * distributed under the License is distributed on an "AS IS" BASIS, 014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 015 * See the License for the specific language governing permissions and 016 * limitations under the License. 017 */ 018package org.apache.hadoop.hbase.regionserver; 019 020import org.apache.hadoop.hbase.metrics.BaseSource; 021import org.apache.hadoop.hbase.metrics.JvmPauseMonitorSource; 022import org.apache.yetus.audience.InterfaceAudience; 023 024/** 025 * Interface for classes that expose metrics about the regionserver. 026 */ 027@InterfaceAudience.Private 028public interface MetricsRegionServerSource extends BaseSource, JvmPauseMonitorSource { 029 030 /** 031 * The name of the metrics 032 */ 033 String METRICS_NAME = "Server"; 034 035 /** 036 * The name of the metrics context that metrics will be under. 037 */ 038 String METRICS_CONTEXT = "regionserver"; 039 040 /** 041 * Description 042 */ 043 String METRICS_DESCRIPTION = "Metrics about HBase RegionServer"; 044 045 /** 046 * The name of the metrics context that metrics will be under in jmx 047 */ 048 String METRICS_JMX_CONTEXT = "RegionServer,sub=" + METRICS_NAME; 049 050 /** 051 * Update the Put time histogram 052 * @param t time it took 053 */ 054 void updatePut(long t); 055 056 /** 057 * Update the PutBatch time histogram if a batch contains a Put op 058 * @param t time it took 059 */ 060 void updatePutBatch(long t); 061 062 /** 063 * Update the Delete time histogram 064 * @param t time it took 065 */ 066 void updateDelete(long t); 067 068 /** 069 * Update the Delete time histogram if a batch contains a delete op 070 * @param t time it took 071 */ 072 void updateDeleteBatch(long t); 073 074 /** 075 * Update checkAndDelete histogram 076 * @param t time it took 077 */ 078 void updateCheckAndDelete(long t); 079 080 /** 081 * Update checkAndPut histogram 082 * @param t time it took 083 */ 084 void updateCheckAndPut(long t); 085 086 /** 087 * Update checkAndMutate histogram 088 * @param time time it took 089 * @param blockBytesScanned how many block bytes were scanned for the check portion of the request 090 */ 091 void updateCheckAndMutate(long time, long blockBytesScanned); 092 093 /** 094 * Update the Get time histogram . 095 * @param time time it took 096 * @param blockBytesScanned how many block bytes were scanned for the request 097 */ 098 void updateGet(long time, long blockBytesScanned); 099 100 /** 101 * Update the Increment time histogram. 102 * @param time time it took 103 * @param blockBytesScanned how many block bytes were scanned fetching the current value to 104 * increment 105 */ 106 void updateIncrement(long time, long blockBytesScanned); 107 108 /** 109 * Update the Append time histogram. 110 * @param time time it took 111 * @param blockBytesScanned how many block bytes were scanned fetching the current value to append 112 */ 113 void updateAppend(long time, long blockBytesScanned); 114 115 /** 116 * Update the Replay time histogram. 117 * @param t time it took 118 */ 119 void updateReplay(long t); 120 121 /** 122 * Update the scan metrics. 123 * @param time response time of scan 124 * @param responseCellSize size of the scan resposne 125 * @param blockBytesScanned size of block bytes scanned to retrieve the response 126 */ 127 void updateScan(long time, long responseCellSize, long blockBytesScanned); 128 129 /** 130 * Increment the number of slow Puts that have happened. 131 */ 132 void incrSlowPut(); 133 134 /** 135 * Increment the number of slow Deletes that have happened. 136 */ 137 void incrSlowDelete(); 138 139 /** 140 * Increment the number of slow Gets that have happened. 141 */ 142 void incrSlowGet(); 143 144 /** 145 * Increment the number of slow Increments that have happened. 146 */ 147 void incrSlowIncrement(); 148 149 /** 150 * Increment the number of slow Appends that have happened. 151 */ 152 void incrSlowAppend(); 153 154 /** 155 * Update the split transaction time histogram 156 * @param t time it took, in milliseconds 157 */ 158 void updateSplitTime(long t); 159 160 /** 161 * Increment number of a requested splits 162 */ 163 void incrSplitRequest(); 164 165 /** 166 * Increment number of successful splits 167 */ 168 void incrSplitSuccess(); 169 170 /** 171 * Update the flush time histogram 172 * @param t time it took, in milliseconds 173 */ 174 void updateFlushTime(long t); 175 176 /** 177 * Update the flush memstore size histogram 178 * @param bytes the number of bytes in the memstore 179 */ 180 void updateFlushMemStoreSize(long bytes); 181 182 /** 183 * Update the flush output file size histogram 184 * @param bytes the number of bytes in the output file 185 */ 186 void updateFlushOutputSize(long bytes); 187 188 /** 189 * Update the compaction time histogram, both major and minor 190 * @param isMajor whether compaction is a major compaction 191 * @param t time it took, in milliseconds 192 */ 193 void updateCompactionTime(boolean isMajor, long t); 194 195 /** 196 * Update the compaction input number of files histogram 197 * @param isMajor whether compaction is a major compaction 198 * @param c number of files 199 */ 200 void updateCompactionInputFileCount(boolean isMajor, long c); 201 202 /** 203 * Update the compaction total input file size histogram 204 * @param isMajor whether compaction is a major compaction 205 * @param bytes the number of bytes of the compaction input file 206 */ 207 void updateCompactionInputSize(boolean isMajor, long bytes); 208 209 /** 210 * Update the compaction output number of files histogram 211 * @param isMajor whether compaction is a major compaction 212 * @param c number of files 213 */ 214 void updateCompactionOutputFileCount(boolean isMajor, long c); 215 216 /** 217 * Update the compaction total output file size 218 * @param isMajor whether compaction is a major compaction 219 * @param bytes the number of bytes of the compaction input file 220 */ 221 void updateCompactionOutputSize(boolean isMajor, long bytes); 222 223 void incrScannerLeaseExpired(); 224 225 // Strings used for exporting to metrics system. 226 String REGION_COUNT = "regionCount"; 227 String REGION_COUNT_DESC = "Number of regions"; 228 String STORE_COUNT = "storeCount"; 229 String STORE_COUNT_DESC = "Number of Stores"; 230 String WALFILE_COUNT = "hlogFileCount"; 231 String WALFILE_COUNT_DESC = "Number of WAL Files"; 232 String WALFILE_SIZE = "hlogFileSize"; 233 String WALFILE_SIZE_DESC = "Size of all WAL Files"; 234 String STOREFILE_COUNT = "storeFileCount"; 235 String STOREFILE_COUNT_DESC = "Number of Store Files"; 236 String STORE_REF_COUNT = "storeRefCount"; 237 String STORE_REF_COUNT_DESC = "Store reference count"; 238 String MAX_COMPACTED_STORE_FILE_REF_COUNT = "maxCompactedStoreFileRefCount"; 239 String MEMSTORE_SIZE = "memStoreSize"; 240 String MEMSTORE_SIZE_DESC = "Size of the memstore"; 241 String MEMSTORE_HEAP_SIZE = "memStoreHeapSize"; 242 String MEMSTORE_HEAP_SIZE_DESC = "On-heap Size of the memstore"; 243 String MEMSTORE_OFFHEAP_SIZE = "memStoreOffHeapSize"; 244 String MEMSTORE_OFFHEAP_SIZE_DESC = "Off-heap Size of the memstore"; 245 String STOREFILE_SIZE = "storeFileSize"; 246 String STOREFILE_SIZE_GROWTH_RATE = "storeFileSizeGrowthRate"; 247 String MAX_STORE_FILE_AGE = "maxStoreFileAge"; 248 String MIN_STORE_FILE_AGE = "minStoreFileAge"; 249 String AVG_STORE_FILE_AGE = "avgStoreFileAge"; 250 String NUM_REFERENCE_FILES = "numReferenceFiles"; 251 String MAX_STORE_FILE_AGE_DESC = "Max age of store files hosted on this RegionServer"; 252 String MIN_STORE_FILE_AGE_DESC = "Min age of store files hosted on this RegionServer"; 253 String AVG_STORE_FILE_AGE_DESC = "Average age of store files hosted on this RegionServer"; 254 String NUM_REFERENCE_FILES_DESC = "Number of reference file on this RegionServer"; 255 String STOREFILE_SIZE_DESC = "Size of storefiles being served."; 256 String STOREFILE_SIZE_GROWTH_RATE_DESC = 257 "Bytes per second by which the size of storefiles being served grows."; 258 String TOTAL_REQUEST_COUNT = "totalRequestCount"; 259 String TOTAL_REQUEST_COUNT_DESC = 260 "Total number of requests this RegionServer has answered; increments the count once for " 261 + "EVERY access whether an admin operation, a Scan, a Put or Put of 1M rows, or a Get " 262 + "of a non-existent row"; 263 String TOTAL_ROW_ACTION_REQUEST_COUNT = "totalRowActionRequestCount"; 264 String TOTAL_ROW_ACTION_REQUEST_COUNT_DESC = 265 "Total number of region requests this RegionServer has answered; counts by row-level " 266 + "action at the RPC Server (Sums 'readRequestsCount' and 'writeRequestsCount'); counts" 267 + "once per access whether a Put of 1M rows or a Get that returns 1M Results"; 268 String READ_REQUEST_COUNT = "readRequestCount"; 269 String FILTERED_READ_REQUEST_COUNT = "filteredReadRequestCount"; 270 String FILTERED_READ_REQUEST_COUNT_DESC = 271 "Number of read requests this region server has answered."; 272 String READ_REQUEST_COUNT_DESC = 273 "Number of read requests with non-empty Results that this RegionServer has answered."; 274 String READ_REQUEST_RATE_PER_SECOND = "readRequestRatePerSecond"; 275 String READ_REQUEST_RATE_DESC = 276 "Rate of answering the read requests by this region server per second."; 277 String CP_REQUEST_COUNT = "cpRequestCount"; 278 String CP_REQUEST_COUNT_DESC = 279 "Number of coprocessor service requests this region server has answered."; 280 String WRITE_REQUEST_COUNT = "writeRequestCount"; 281 String WRITE_REQUEST_COUNT_DESC = "Number of mutation requests this RegionServer has answered."; 282 String WRITE_REQUEST_RATE_PER_SECOND = "writeRequestRatePerSecond"; 283 String WRITE_REQUEST_RATE_DESC = 284 "Rate of answering the mutation requests by this region server per second."; 285 String CHECK_MUTATE_FAILED_COUNT = "checkMutateFailedCount"; 286 String CHECK_MUTATE_FAILED_COUNT_DESC = 287 "Number of Check and Mutate calls that failed the checks."; 288 String CHECK_MUTATE_PASSED_COUNT = "checkMutatePassedCount"; 289 String CHECK_MUTATE_PASSED_COUNT_DESC = 290 "Number of Check and Mutate calls that passed the checks."; 291 String STOREFILE_INDEX_SIZE = "storeFileIndexSize"; 292 String STOREFILE_INDEX_SIZE_DESC = "Size of indexes in storefiles on disk."; 293 String STATIC_INDEX_SIZE = "staticIndexSize"; 294 String STATIC_INDEX_SIZE_DESC = "Uncompressed size of the static indexes."; 295 String STATIC_BLOOM_SIZE = "staticBloomSize"; 296 String STATIC_BLOOM_SIZE_DESC = "Uncompressed size of the static bloom filters."; 297 298 String BLOOM_FILTER_REQUESTS_COUNT = "bloomFilterRequestsCount"; 299 String BLOOM_FILTER_REQUESTS_COUNT_DESC = "Count of requests to bloom filters."; 300 301 String BLOOM_FILTER_NEGATIVE_RESULTS_COUNT = "bloomFilterNegativeResultsCount"; 302 String BLOOM_FILTER_NEGATIVE_RESULTS_COUNT_DESC = 303 "Count of bloom filter requests which returned a negative result."; 304 305 String BLOOM_FILTER_ELIGIBLE_REQUESTS_COUNT = "bloomFilterEligibleRequestsCount"; 306 String BLOOM_FILTER_ELIGIBLE_REQUESTS_COUNT_DESC = 307 "Count of requests which could have used bloom filters but didn't because they weren't configured or loaded"; 308 309 String NUMBER_OF_MUTATIONS_WITHOUT_WAL = "mutationsWithoutWALCount"; 310 String NUMBER_OF_MUTATIONS_WITHOUT_WAL_DESC = 311 "Number of mutations that have been sent by clients with the write ahead logging turned off."; 312 String DATA_SIZE_WITHOUT_WAL = "mutationsWithoutWALSize"; 313 String DATA_SIZE_WITHOUT_WAL_DESC = 314 "Size of data that has been sent by clients with the write ahead logging turned off."; 315 String PERCENT_FILES_LOCAL = "percentFilesLocal"; 316 String PERCENT_FILES_LOCAL_DESC = 317 "The percent of HFiles that are stored on the local hdfs data node. If not using " 318 + "region replicas, this should equal percentFilesLocalPrimaryRegions"; 319 String PERCENT_FILES_LOCAL_PRIMARY_REGIONS = "percentFilesLocalPrimaryRegions"; 320 String PERCENT_FILES_LOCAL_PRIMARY_REGIONS_DESC = 321 "The percent of HFiles used by primary regions that are stored on the local hdfs data node. " 322 + "This is the category of locality that you want to reach 100% when using region replicas"; 323 String PERCENT_FILES_LOCAL_SECONDARY_REGIONS = "percentFilesLocalSecondaryRegions"; 324 String PERCENT_FILES_LOCAL_SECONDARY_REGIONS_DESC = 325 "The percent of HFiles used by secondary regions that are stored on the local hdfs data node. " 326 + "This is not likely to reach 100%"; 327 String SPLIT_QUEUE_LENGTH = "splitQueueLength"; 328 String SPLIT_QUEUE_LENGTH_DESC = "Length of the queue for splits."; 329 String COMPACTION_QUEUE_LENGTH = "compactionQueueLength"; 330 String LARGE_COMPACTION_QUEUE_LENGTH = "largeCompactionQueueLength"; 331 String SMALL_COMPACTION_QUEUE_LENGTH = "smallCompactionQueueLength"; 332 String COMPACTION_QUEUE_LENGTH_DESC = "Length of the queue for compactions."; 333 String LARGE_COMPACTION_QUEUE_LENGTH_DESC = "Length of the queue for compactions with input size " 334 + "larger than throttle threshold (2.5GB by default)"; 335 String SMALL_COMPACTION_QUEUE_LENGTH_DESC = "Length of the queue for compactions with input size " 336 + "smaller than throttle threshold (2.5GB by default)"; 337 String FLUSH_QUEUE_LENGTH = "flushQueueLength"; 338 String FLUSH_QUEUE_LENGTH_DESC = "Length of the queue for region flushes"; 339 String BLOCK_CACHE_FREE_SIZE = "blockCacheFreeSize"; 340 String BLOCK_CACHE_FREE_DESC = "Size of the block cache that is not occupied."; 341 String BLOCK_CACHE_COUNT = "blockCacheCount"; 342 String BLOCK_CACHE_COUNT_DESC = "Number of block in the block cache."; 343 String BLOCK_CACHE_DATA_BLOCK_COUNT = "blockCacheDataBlockCount"; 344 String BLOCK_CACHE_DATA_BLOCK_COUNT_DESC = "Number of DATA block in the block cache."; 345 String BLOCK_CACHE_SIZE = "blockCacheSize"; 346 String BLOCK_CACHE_SIZE_DESC = "Size of the block cache."; 347 String BLOCK_CACHE_HIT_COUNT = "blockCacheHitCount"; 348 String BLOCK_CACHE_HIT_COUNT_DESC = "Count of the hit on the block cache."; 349 String BLOCK_CACHE_PRIMARY_HIT_COUNT = "blockCacheHitCountPrimary"; 350 String BLOCK_CACHE_PRIMARY_HIT_COUNT_DESC = "Count of hit on primary replica in the block cache."; 351 String BLOCK_CACHE_HIT_CACHING_COUNT = "blockCacheHitCachingCount"; 352 String BLOCK_CACHE_HIT_CACHING_COUNT_DESC = 353 "Count of the hit on the block cache, for cacheable requests."; 354 String BLOCK_CACHE_MISS_COUNT = "blockCacheMissCount"; 355 String BLOCK_COUNT_MISS_COUNT_DESC = 356 "Number of requests for a block that missed the block cache."; 357 String BLOCK_CACHE_PRIMARY_MISS_COUNT = "blockCacheMissCountPrimary"; 358 String BLOCK_COUNT_PRIMARY_MISS_COUNT_DESC = 359 "Number of requests for a block of primary replica that missed the block cache."; 360 String BLOCK_CACHE_MISS_CACHING_COUNT = "blockCacheMissCachingCount"; 361 String BLOCK_COUNT_MISS_CACHING_COUNT_DESC = 362 "Number of requests for a block that missed the block cache, for cacheable requests."; 363 String BLOCK_CACHE_EVICTION_COUNT = "blockCacheEvictionCount"; 364 String BLOCK_CACHE_EVICTION_COUNT_DESC = 365 "Count of the number of blocks evicted from the block cache." 366 + "(Not including blocks evicted because of HFile removal)"; 367 String BLOCK_CACHE_PRIMARY_EVICTION_COUNT = "blockCacheEvictionCountPrimary"; 368 String BLOCK_CACHE_PRIMARY_EVICTION_COUNT_DESC = 369 "Count of the number of blocks evicted from primary replica in the block cache."; 370 String BLOCK_CACHE_HIT_PERCENT = "blockCacheCountHitPercent"; 371 String BLOCK_CACHE_HIT_PERCENT_DESC = "Percent of block cache requests that are hits"; 372 String BLOCK_CACHE_EXPRESS_HIT_PERCENT = "blockCacheExpressHitPercent"; 373 String BLOCK_CACHE_EXPRESS_HIT_PERCENT_DESC = 374 "The percent of the time that requests with the cache turned on hit the cache."; 375 String BLOCK_CACHE_FAILED_INSERTION_COUNT = "blockCacheFailedInsertionCount"; 376 String BLOCK_CACHE_FAILED_INSERTION_COUNT_DESC = 377 "Number of times that a block cache " + "insertion failed. Usually due to size restrictions."; 378 String BLOCK_CACHE_DATA_MISS_COUNT = "blockCacheDataMissCount"; 379 String BLOCK_CACHE_ENCODED_DATA_MISS_COUNT = "blockCacheEncodedDataMissCount"; 380 String BLOCK_CACHE_LEAF_INDEX_MISS_COUNT = "blockCacheLeafIndexMissCount"; 381 String BLOCK_CACHE_BLOOM_CHUNK_MISS_COUNT = "blockCacheBloomChunkMissCount"; 382 String BLOCK_CACHE_META_MISS_COUNT = "blockCacheMetaMissCount"; 383 String BLOCK_CACHE_ROOT_INDEX_MISS_COUNT = "blockCacheRootIndexMissCount"; 384 String BLOCK_CACHE_INTERMEDIATE_INDEX_MISS_COUNT = "blockCacheIntermediateIndexMissCount"; 385 String BLOCK_CACHE_FILE_INFO_MISS_COUNT = "blockCacheFileInfoMissCount"; 386 String BLOCK_CACHE_GENERAL_BLOOM_META_MISS_COUNT = "blockCacheGeneralBloomMetaMissCount"; 387 String BLOCK_CACHE_DELETE_FAMILY_BLOOM_MISS_COUNT = "blockCacheDeleteFamilyBloomMissCount"; 388 String BLOCK_CACHE_TRAILER_MISS_COUNT = "blockCacheTrailerMissCount"; 389 String BLOCK_CACHE_DATA_HIT_COUNT = "blockCacheDataHitCount"; 390 String BLOCK_CACHE_ENCODED_DATA_HIT_COUNT = "blockCacheEncodedDataHitCount"; 391 String BLOCK_CACHE_LEAF_INDEX_HIT_COUNT = "blockCacheLeafIndexHitCount"; 392 String BLOCK_CACHE_BLOOM_CHUNK_HIT_COUNT = "blockCacheBloomChunkHitCount"; 393 String BLOCK_CACHE_META_HIT_COUNT = "blockCacheMetaHitCount"; 394 String BLOCK_CACHE_ROOT_INDEX_HIT_COUNT = "blockCacheRootIndexHitCount"; 395 String BLOCK_CACHE_INTERMEDIATE_INDEX_HIT_COUNT = "blockCacheIntermediateIndexHitCount"; 396 String BLOCK_CACHE_FILE_INFO_HIT_COUNT = "blockCacheFileInfoHitCount"; 397 String BLOCK_CACHE_GENERAL_BLOOM_META_HIT_COUNT = "blockCacheGeneralBloomMetaHitCount"; 398 String BLOCK_CACHE_DELETE_FAMILY_BLOOM_HIT_COUNT = "blockCacheDeleteFamilyBloomHitCount"; 399 String BLOCK_CACHE_TRAILER_HIT_COUNT = "blockCacheTrailerHitCount"; 400 String L1_CACHE_FREE_SIZE = "l1CacheFreeSize"; 401 String L1_CACHE_FREE_SIZE_DESC = "Amount of free bytes in the L1 cache"; 402 String L1_CACHE_SIZE = "l1CacheSize"; 403 String L1_CACHE_SIZE_DESC = "Size of the L1 cache in bytes"; 404 String L1_CACHE_COUNT = "l1CacheCount"; 405 String L1_CACHE_COUNT_DESC = "Count of blocks in the L1 cache"; 406 String L1_CACHE_EVICTION_COUNT = "l1CacheEvictionCount"; 407 String L1_CACHE_EVICTION_COUNT_DESC = "Count of blocks evicted from the L1 cache"; 408 409 String L1_CACHE_HIT_COUNT = "l1CacheHitCount"; 410 String L1_CACHE_HIT_COUNT_DESC = "L1 cache hit count."; 411 String L1_CACHE_HIT_CAGHING_COUNT = "l1CacheHitCachingCount"; 412 String L1_CACHE_HIT_CAGHING_COUNT_DESC = 413 "Count of the hit on the L1 cache, for cacheable requests"; 414 String L1_CACHE_MISS_COUNT = "l1CacheMissCount"; 415 String L1_CACHE_MISS_COUNT_DESC = "L1 cache miss count."; 416 String L1_CACHE_MISS_CACHING_COUNT = "l1CacheMissCachingCount"; 417 String L1_CACHE_MISS_CACHING_COUNT_DESC = 418 "Count of the misses on the L1 cache, for cacheable requests"; 419 String L1_CACHE_HIT_RATIO = "l1CacheHitRatio"; 420 String L1_CACHE_HIT_RATIO_DESC = "L1 cache hit ratio."; 421 String L1_CACHE_HIT_CACHING_RATIO = "l1CacheHitCachingRatio"; 422 String L1_CACHE_HIT_CACHING_RATIO_DESC = "Hit Caching ratio of L1 cache"; 423 String L1_CACHE_MISS_RATIO = "l1CacheMissRatio"; 424 String L1_CACHE_MISS_RATIO_DESC = "L1 cache miss ratio."; 425 String L1_CACHE_MISS_CACHING_RATIO = "l1CacheMissCachingRatio"; 426 String L1_CACHE_MISS_CACHING_RATIO_DESC = "Miss Caching ratio of L1 cache"; 427 String L2_CACHE_FREE_SIZE = "l2CacheFreeSize"; 428 String L2_CACHE_FREE_SIZE_DESC = "Amount of free bytes in the L2 cache"; 429 String L2_CACHE_SIZE = "l2CacheSize"; 430 String L2_CACHE_SIZE_DESC = "Size of the L2 cache in bytes"; 431 String L2_CACHE_COUNT = "l2CacheCount"; 432 String L2_CACHE_COUNT_DESC = "Count of blocks in the L2 cache"; 433 String L2_CACHE_EVICTION_COUNT = "l2CacheEvictionCount"; 434 String L2_CACHE_EVICTION_COUNT_DESC = "Count of blocks evicted from the L2 cache"; 435 String L2_CACHE_HIT_COUNT = "l2CacheHitCount"; 436 String L2_CACHE_HIT_COUNT_DESC = "L2 cache hit count."; 437 String L2_CACHE_HIT_CACHING_COUNT = "l2CacheHitCachingCount"; 438 String L2_CACHE_HIT_CACHING_COUNT_DESC = 439 "Count of the hit on the L2 cache, for cacheable requests"; 440 String L2_CACHE_MISS_COUNT = "l2CacheMissCount"; 441 String L2_CACHE_MISS_COUNT_DESC = "L2 cache miss count."; 442 String L2_CACHE_MISS_CACHING_COUNT = "l2CacheMissCachingCount"; 443 String L2_CACHE_MISS_CACHING_COUNT_DESC = 444 "Count of the misses on the L2 cache, for cacheable requests"; 445 String L2_CACHE_HIT_RATIO = "l2CacheHitRatio"; 446 String L2_CACHE_HIT_RATIO_DESC = "L2 cache hit ratio."; 447 String L2_CACHE_HIT_CACHING_RATIO = "l2CacheHitCachingRatio"; 448 String L2_CACHE_HIT_CACHING_RATIO_DESC = "Hit Caching ratio of L2 cache"; 449 String L2_CACHE_MISS_RATIO = "l2CacheMissRatio"; 450 String L2_CACHE_MISS_RATIO_DESC = "L2 cache miss ratio."; 451 String L2_CACHE_MISS_CACHING_RATIO = "l2CacheMissCachingRatio"; 452 String L2_CACHE_MISS_CACHING_RATIO_DESC = "Miss Caching ratio of L2 cache"; 453 String RS_START_TIME_NAME = "regionServerStartTime"; 454 String ZOOKEEPER_QUORUM_NAME = "zookeeperQuorum"; 455 String SERVER_NAME_NAME = "serverName"; 456 String CLUSTER_ID_NAME = "clusterId"; 457 String RS_START_TIME_DESC = "RegionServer Start Time"; 458 String ZOOKEEPER_QUORUM_DESC = "ZooKeeper Quorum"; 459 String SERVER_NAME_DESC = "Server Name"; 460 String CLUSTER_ID_DESC = "Cluster Id"; 461 String UPDATES_BLOCKED_TIME = "updatesBlockedTime"; 462 String UPDATES_BLOCKED_DESC = 463 "Number of MS updates have been blocked so that the memstore can be flushed."; 464 String DELETE_KEY = "delete"; 465 String CHECK_AND_DELETE_KEY = "checkAndDelete"; 466 String CHECK_AND_PUT_KEY = "checkAndPut"; 467 String CHECK_AND_MUTATE_KEY = "checkAndMutate"; 468 String DELETE_BATCH_KEY = "deleteBatch"; 469 String GET_SIZE_KEY = "getSize"; 470 String GET_KEY = "get"; 471 String INCREMENT_KEY = "increment"; 472 String PUT_KEY = "put"; 473 String PUT_BATCH_KEY = "putBatch"; 474 String APPEND_KEY = "append"; 475 String REPLAY_KEY = "replay"; 476 String SCAN_KEY = "scan"; 477 String SCAN_SIZE_KEY = "scanSize"; 478 String SCAN_TIME_KEY = "scanTime"; 479 480 String BLOCK_BYTES_SCANNED_KEY = "blockBytesScannedCount"; 481 String BLOCK_BYTES_SCANNED_DESC = "Count of block bytes scanned by read requests"; 482 String GET_BLOCK_BYTES_SCANNED_KEY = "getBlockBytesScanned"; 483 String SCAN_BLOCK_BYTES_SCANNED_KEY = "scanBlockBytesScanned"; 484 String CHECK_AND_MUTATE_BLOCK_BYTES_SCANNED_KEY = "checkAndMutateBlockBytesScanned"; 485 String INCREMENT_BLOCK_BYTES_SCANNED_KEY = "incrementBlockBytesScanned"; 486 String APPEND_BLOCK_BYTES_SCANNED_KEY = "appendBlockBytesScanned"; 487 String SLOW_PUT_KEY = "slowPutCount"; 488 String SLOW_GET_KEY = "slowGetCount"; 489 String SLOW_DELETE_KEY = "slowDeleteCount"; 490 String SLOW_INCREMENT_KEY = "slowIncrementCount"; 491 String SLOW_APPEND_KEY = "slowAppendCount"; 492 String SLOW_PUT_DESC = "The number of batches containing puts that took over 1000ms to complete"; 493 String SLOW_DELETE_DESC = 494 "The number of batches containing delete(s) that took over 1000ms to complete"; 495 String SLOW_GET_DESC = "The number of Gets that took over 1000ms to complete"; 496 String SLOW_INCREMENT_DESC = "The number of Increments that took over 1000ms to complete"; 497 String SLOW_APPEND_DESC = "The number of Appends that took over 1000ms to complete"; 498 499 String FLUSHED_CELLS = "flushedCellsCount"; 500 String FLUSHED_CELLS_DESC = "The number of cells flushed to disk"; 501 String FLUSHED_CELLS_SIZE = "flushedCellsSize"; 502 String FLUSHED_CELLS_SIZE_DESC = "The total amount of data flushed to disk, in bytes"; 503 String COMPACTED_CELLS = "compactedCellsCount"; 504 String COMPACTED_CELLS_DESC = "The number of cells processed during minor compactions"; 505 String COMPACTED_CELLS_SIZE = "compactedCellsSize"; 506 String COMPACTED_CELLS_SIZE_DESC = 507 "The total amount of data processed during minor compactions, in bytes"; 508 String MAJOR_COMPACTED_CELLS = "majorCompactedCellsCount"; 509 String MAJOR_COMPACTED_CELLS_DESC = "The number of cells processed during major compactions"; 510 String MAJOR_COMPACTED_CELLS_SIZE = "majorCompactedCellsSize"; 511 String MAJOR_COMPACTED_CELLS_SIZE_DESC = 512 "The total amount of data processed during major compactions, in bytes"; 513 String CELLS_COUNT_COMPACTED_TO_MOB = "cellsCountCompactedToMob"; 514 String CELLS_COUNT_COMPACTED_TO_MOB_DESC = "The number of cells moved to mob during compaction"; 515 String CELLS_COUNT_COMPACTED_FROM_MOB = "cellsCountCompactedFromMob"; 516 String CELLS_COUNT_COMPACTED_FROM_MOB_DESC = 517 "The number of cells moved from mob during compaction"; 518 String CELLS_SIZE_COMPACTED_TO_MOB = "cellsSizeCompactedToMob"; 519 String CELLS_SIZE_COMPACTED_TO_MOB_DESC = 520 "The total amount of cells move to mob during compaction, in bytes"; 521 String CELLS_SIZE_COMPACTED_FROM_MOB = "cellsSizeCompactedFromMob"; 522 String CELLS_SIZE_COMPACTED_FROM_MOB_DESC = 523 "The total amount of cells move from mob during compaction, in bytes"; 524 String MOB_FLUSH_COUNT = "mobFlushCount"; 525 String MOB_FLUSH_COUNT_DESC = "The number of the flushes in mob-enabled stores"; 526 String MOB_FLUSHED_CELLS_COUNT = "mobFlushedCellsCount"; 527 String MOB_FLUSHED_CELLS_COUNT_DESC = "The number of mob cells flushed to disk"; 528 String MOB_FLUSHED_CELLS_SIZE = "mobFlushedCellsSize"; 529 String MOB_FLUSHED_CELLS_SIZE_DESC = "The total amount of mob cells flushed to disk, in bytes"; 530 String MOB_SCAN_CELLS_COUNT = "mobScanCellsCount"; 531 String MOB_SCAN_CELLS_COUNT_DESC = "The number of scanned mob cells"; 532 String MOB_SCAN_CELLS_SIZE = "mobScanCellsSize"; 533 String MOB_SCAN_CELLS_SIZE_DESC = "The total amount of scanned mob cells, in bytes"; 534 String MOB_FILE_CACHE_ACCESS_COUNT = "mobFileCacheAccessCount"; 535 String MOB_FILE_CACHE_ACCESS_COUNT_DESC = "The count of accesses to the mob file cache"; 536 String MOB_FILE_CACHE_MISS_COUNT = "mobFileCacheMissCount"; 537 String MOB_FILE_CACHE_MISS_COUNT_DESC = "The count of misses to the mob file cache"; 538 String MOB_FILE_CACHE_HIT_PERCENT = "mobFileCacheHitPercent"; 539 String MOB_FILE_CACHE_HIT_PERCENT_DESC = "The hit percent to the mob file cache"; 540 String MOB_FILE_CACHE_EVICTED_COUNT = "mobFileCacheEvictedCount"; 541 String MOB_FILE_CACHE_EVICTED_COUNT_DESC = "The number of items evicted from the mob file cache"; 542 String MOB_FILE_CACHE_COUNT = "mobFileCacheCount"; 543 String MOB_FILE_CACHE_COUNT_DESC = "The count of cached mob files"; 544 545 String HEDGED_READS = "hedgedReads"; 546 String HEDGED_READS_DESC = "The number of times we started a hedged read"; 547 String HEDGED_READ_WINS = "hedgedReadWins"; 548 String HEDGED_READ_WINS_DESC = 549 "The number of times we started a hedged read and a hedged read won"; 550 String HEDGED_READ_IN_CUR_THREAD = "hedgedReadOpsInCurThread"; 551 String HEDGED_READ_IN_CUR_THREAD_DESC = "The number of times we execute a hedged read" 552 + " in current thread as a fallback for task rejection"; 553 554 String TOTAL_BYTES_READ = "totalBytesRead"; 555 String TOTAL_BYTES_READ_DESC = "The total number of bytes read from HDFS"; 556 String LOCAL_BYTES_READ = "localBytesRead"; 557 String LOCAL_BYTES_READ_DESC = "The number of bytes read from the local HDFS DataNode"; 558 String SHORTCIRCUIT_BYTES_READ = "shortCircuitBytesRead"; 559 String SHORTCIRCUIT_BYTES_READ_DESC = "The number of bytes read through HDFS short circuit read"; 560 String ZEROCOPY_BYTES_READ = "zeroCopyBytesRead"; 561 String ZEROCOPY_BYTES_READ_DESC = "The number of bytes read through HDFS zero copy"; 562 563 String BLOCKED_REQUESTS_COUNT = "blockedRequestCount"; 564 String BLOCKED_REQUESTS_COUNT_DESC = "The number of blocked requests because of memstore size is " 565 + "larger than blockingMemStoreSize"; 566 567 String SPLIT_KEY = "splitTime"; 568 String SPLIT_REQUEST_KEY = "splitRequestCount"; 569 String SPLIT_REQUEST_DESC = "Number of splits requested"; 570 String SPLIT_SUCCESS_KEY = "splitSuccessCount"; 571 String SPLIT_SUCCESS_DESC = "Number of successfully executed splits"; 572 573 String FLUSH_TIME = "flushTime"; 574 String FLUSH_TIME_DESC = "Histogram for the time in millis for memstore flush"; 575 String FLUSH_MEMSTORE_SIZE = "flushMemstoreSize"; 576 String FLUSH_MEMSTORE_SIZE_DESC = "Histogram for number of bytes in the memstore for a flush"; 577 String FLUSH_OUTPUT_SIZE = "flushOutputSize"; 578 String FLUSH_OUTPUT_SIZE_DESC = "Histogram for number of bytes in the resulting file for a flush"; 579 String FLUSHED_OUTPUT_BYTES = "flushedOutputBytes"; 580 String FLUSHED_OUTPUT_BYTES_DESC = "Total number of bytes written from flush"; 581 String FLUSHED_MEMSTORE_BYTES = "flushedMemstoreBytes"; 582 String FLUSHED_MEMSTORE_BYTES_DESC = "Total number of bytes of cells in memstore from flush"; 583 584 String COMPACTION_TIME = "compactionTime"; 585 String COMPACTION_TIME_DESC = 586 "Histogram for the time in millis for compaction, both major and minor"; 587 String COMPACTION_INPUT_FILE_COUNT = "compactionInputFileCount"; 588 String COMPACTION_INPUT_FILE_COUNT_DESC = 589 "Histogram for the compaction input number of files, both major and minor"; 590 String COMPACTION_INPUT_SIZE = "compactionInputSize"; 591 String COMPACTION_INPUT_SIZE_DESC = 592 "Histogram for the compaction total input file sizes, both major and minor"; 593 String COMPACTION_OUTPUT_FILE_COUNT = "compactionOutputFileCount"; 594 String COMPACTION_OUTPUT_FILE_COUNT_DESC = 595 "Histogram for the compaction output number of files, both major and minor"; 596 String COMPACTION_OUTPUT_SIZE = "compactionOutputSize"; 597 String COMPACTION_OUTPUT_SIZE_DESC = 598 "Histogram for the compaction total output file sizes, both major and minor"; 599 String COMPACTED_INPUT_BYTES = "compactedInputBytes"; 600 String COMPACTED_INPUT_BYTES_DESC = 601 "Total number of bytes that is read for compaction, both major and minor"; 602 String COMPACTED_OUTPUT_BYTES = "compactedOutputBytes"; 603 String COMPACTED_OUTPUT_BYTES_DESC = 604 "Total number of bytes that is output from compaction, both major and minor"; 605 606 String MAJOR_COMPACTION_TIME = "majorCompactionTime"; 607 String MAJOR_COMPACTION_TIME_DESC = "Histogram for the time in millis for compaction, major only"; 608 String MAJOR_COMPACTION_INPUT_FILE_COUNT = "majorCompactionInputFileCount"; 609 String MAJOR_COMPACTION_INPUT_FILE_COUNT_DESC = 610 "Histogram for the compaction input number of files, major only"; 611 String MAJOR_COMPACTION_INPUT_SIZE = "majorCompactionInputSize"; 612 String MAJOR_COMPACTION_INPUT_SIZE_DESC = 613 "Histogram for the compaction total input file sizes, major only"; 614 String MAJOR_COMPACTION_OUTPUT_FILE_COUNT = "majorCompactionOutputFileCount"; 615 String MAJOR_COMPACTION_OUTPUT_FILE_COUNT_DESC = 616 "Histogram for the compaction output number of files, major only"; 617 String MAJOR_COMPACTION_OUTPUT_SIZE = "majorCompactionOutputSize"; 618 String MAJOR_COMPACTION_OUTPUT_SIZE_DESC = 619 "Histogram for the compaction total output file sizes, major only"; 620 String MAJOR_COMPACTED_INPUT_BYTES = "majorCompactedInputBytes"; 621 String MAJOR_COMPACTED_INPUT_BYTES_DESC = 622 "Total number of bytes that is read for compaction, major only"; 623 String MAJOR_COMPACTED_OUTPUT_BYTES = "majorCompactedOutputBytes"; 624 String MAJOR_COMPACTED_OUTPUT_BYTES_DESC = 625 "Total number of bytes that is output from compaction, major only"; 626 627 String RPC_GET_REQUEST_COUNT = "rpcGetRequestCount"; 628 String RPC_GET_REQUEST_COUNT_DESC = "Number of rpc get requests this RegionServer has answered."; 629 String RPC_SCAN_REQUEST_COUNT = "rpcScanRequestCount"; 630 String RPC_SCAN_REQUEST_COUNT_DESC = 631 "Number of rpc scan requests this RegionServer has answered."; 632 String RPC_FULL_SCAN_REQUEST_COUNT = "rpcFullScanRequestCount"; 633 String RPC_FULL_SCAN_REQUEST_COUNT_DESC = 634 "Number of rpc scan requests that were possible full region scans."; 635 String RPC_MULTI_REQUEST_COUNT = "rpcMultiRequestCount"; 636 String RPC_MULTI_REQUEST_COUNT_DESC = 637 "Number of rpc multi requests this RegionServer has answered."; 638 String RPC_MUTATE_REQUEST_COUNT = "rpcMutateRequestCount"; 639 String RPC_MUTATE_REQUEST_COUNT_DESC = 640 "Number of rpc mutation requests this RegionServer has answered."; 641 String MAX_STOREFILE_COUNT = "maxStoreFileCount"; 642 String MAX_STOREFILE_COUNT_DESC = "Max store file count across all regions"; 643 String AVERAGE_REGION_SIZE = "averageRegionSize"; 644 String AVERAGE_REGION_SIZE_DESC = 645 "Average region size over the RegionServer including memstore and storefile sizes."; 646 647 /** Metrics for {@link org.apache.hadoop.hbase.io.ByteBuffAllocator} **/ 648 String BYTE_BUFF_ALLOCATOR_HEAP_ALLOCATION_BYTES = "ByteBuffAllocatorHeapAllocationBytes"; 649 String BYTE_BUFF_ALLOCATOR_HEAP_ALLOCATION_BYTES_DESC = 650 "Bytes of heap allocation from ByteBuffAllocator"; 651 String BYTE_BUFF_ALLOCATOR_POOL_ALLOCATION_BYTES = "ByteBuffAllocatorPoolAllocationBytes"; 652 String BYTE_BUFF_ALLOCATOR_POOL_ALLOCATION_BYTES_DESC = 653 "Bytes of pool allocation from ByteBuffAllocator"; 654 String BYTE_BUFF_ALLOCATOR_HEAP_ALLOCATION_RATIO = "ByteBuffAllocatorHeapAllocationRatio"; 655 String BYTE_BUFF_ALLOCATOR_HEAP_ALLOCATION_RATIO_DESC = 656 "Ratio of heap allocation from ByteBuffAllocator, means heapAllocation/totalAllocation"; 657 String BYTE_BUFF_ALLOCATOR_TOTAL_BUFFER_COUNT = "ByteBuffAllocatorTotalBufferCount"; 658 String BYTE_BUFF_ALLOCATOR_TOTAL_BUFFER_COUNT_DESC = "Total buffer count in ByteBuffAllocator"; 659 String BYTE_BUFF_ALLOCATOR_USED_BUFFER_COUNT = "ByteBuffAllocatorUsedBufferCount"; 660 String BYTE_BUFF_ALLOCATOR_USED_BUFFER_COUNT_DESC = "Used buffer count in ByteBuffAllocator"; 661 662 String ACTIVE_SCANNERS = "activeScanners"; 663 String ACTIVE_SCANNERS_DESC = "Gauge of currently active scanners"; 664 665 String SCANNER_LEASE_EXPIRED_COUNT = "scannerLeaseExpiredCount"; 666 String SCANNER_LEASE_EXPIRED_COUNT_DESC = 667 "Count of scanners which were expired due to scanner lease timeout"; 668 String CURRENT_REGION_CACHE_RATIO = "currentRegionCacheRatio"; 669 String CURRENT_REGION_CACHE_RATIO_DESC = "The percentage of caching completed for this region."; 670}