package y
import (
"expvar"
)
const (
BADGER_METRIC_PREFIX = "badger_"
)
var (
lsmSize *expvar .Map
vlogSize *expvar .Map
pendingWrites *expvar .Map
numReadsVlog *expvar .Int
numWritesVlog *expvar .Int
numBytesReadVlog *expvar .Int
numBytesVlogWritten *expvar .Int
numBytesReadLSM *expvar .Int
numBytesWrittenToL0 *expvar .Int
numLSMGets *expvar .Map
numBytesCompactionWritten *expvar .Map
numLSMBloomHits *expvar .Map
numGets *expvar .Int
numGetsWithResults *expvar .Int
numIteratorsCreated *expvar .Int
numPuts *expvar .Int
numMemtableGets *expvar .Int
numCompactionTables *expvar .Int
numBytesWrittenUser *expvar .Int
)
func init() {
numReadsVlog = expvar .NewInt (BADGER_METRIC_PREFIX + "read_num_vlog" )
numBytesReadVlog = expvar .NewInt (BADGER_METRIC_PREFIX + "read_bytes_vlog" )
numWritesVlog = expvar .NewInt (BADGER_METRIC_PREFIX + "write_num_vlog" )
numBytesVlogWritten = expvar .NewInt (BADGER_METRIC_PREFIX + "write_bytes_vlog" )
numBytesReadLSM = expvar .NewInt (BADGER_METRIC_PREFIX + "read_bytes_lsm" )
numBytesWrittenToL0 = expvar .NewInt (BADGER_METRIC_PREFIX + "write_bytes_l0" )
numBytesCompactionWritten = expvar .NewMap (BADGER_METRIC_PREFIX + "write_bytes_compaction" )
numLSMGets = expvar .NewMap (BADGER_METRIC_PREFIX + "get_num_lsm" )
numLSMBloomHits = expvar .NewMap (BADGER_METRIC_PREFIX + "hit_num_lsm_bloom_filter" )
numMemtableGets = expvar .NewInt (BADGER_METRIC_PREFIX + "get_num_memtable" )
numGets = expvar .NewInt (BADGER_METRIC_PREFIX + "get_num_user" )
numPuts = expvar .NewInt (BADGER_METRIC_PREFIX + "put_num_user" )
numBytesWrittenUser = expvar .NewInt (BADGER_METRIC_PREFIX + "write_bytes_user" )
numGetsWithResults = expvar .NewInt (BADGER_METRIC_PREFIX + "get_with_result_num_user" )
numIteratorsCreated = expvar .NewInt (BADGER_METRIC_PREFIX + "iterator_num_user" )
lsmSize = expvar .NewMap (BADGER_METRIC_PREFIX + "size_bytes_lsm" )
vlogSize = expvar .NewMap (BADGER_METRIC_PREFIX + "size_bytes_vlog" )
pendingWrites = expvar .NewMap (BADGER_METRIC_PREFIX + "write_pending_num_memtable" )
numCompactionTables = expvar .NewInt (BADGER_METRIC_PREFIX + "compaction_current_num_lsm" )
}
func NumIteratorsCreatedAdd (enabled bool , val int64 ) {
addInt (enabled , numIteratorsCreated , val )
}
func NumGetsWithResultsAdd (enabled bool , val int64 ) {
addInt (enabled , numGetsWithResults , val )
}
func NumReadsVlogAdd (enabled bool , val int64 ) {
addInt (enabled , numReadsVlog , val )
}
func NumBytesWrittenUserAdd (enabled bool , val int64 ) {
addInt (enabled , numBytesWrittenUser , val )
}
func NumWritesVlogAdd (enabled bool , val int64 ) {
addInt (enabled , numWritesVlog , val )
}
func NumBytesReadsVlogAdd (enabled bool , val int64 ) {
addInt (enabled , numBytesReadVlog , val )
}
func NumBytesReadsLSMAdd (enabled bool , val int64 ) {
addInt (enabled , numBytesReadLSM , val )
}
func NumBytesWrittenVlogAdd (enabled bool , val int64 ) {
addInt (enabled , numBytesVlogWritten , val )
}
func NumBytesWrittenToL0Add (enabled bool , val int64 ) {
addInt (enabled , numBytesWrittenToL0 , val )
}
func NumBytesCompactionWrittenAdd (enabled bool , key string , val int64 ) {
addToMap (enabled , numBytesCompactionWritten , key , val )
}
func NumGetsAdd (enabled bool , val int64 ) {
addInt (enabled , numGets , val )
}
func NumPutsAdd (enabled bool , val int64 ) {
addInt (enabled , numPuts , val )
}
func NumMemtableGetsAdd (enabled bool , val int64 ) {
addInt (enabled , numMemtableGets , val )
}
func NumCompactionTablesAdd (enabled bool , val int64 ) {
addInt (enabled , numCompactionTables , val )
}
func LSMSizeSet (enabled bool , key string , val expvar .Var ) {
storeToMap (enabled , lsmSize , key , val )
}
func VlogSizeSet (enabled bool , key string , val expvar .Var ) {
storeToMap (enabled , vlogSize , key , val )
}
func PendingWritesSet (enabled bool , key string , val expvar .Var ) {
storeToMap (enabled , pendingWrites , key , val )
}
func NumLSMBloomHitsAdd (enabled bool , key string , val int64 ) {
addToMap (enabled , numLSMBloomHits , key , val )
}
func NumLSMGetsAdd (enabled bool , key string , val int64 ) {
addToMap (enabled , numLSMGets , key , val )
}
func LSMSizeGet (enabled bool , key string ) expvar .Var {
return getFromMap (enabled , lsmSize , key )
}
func VlogSizeGet (enabled bool , key string ) expvar .Var {
return getFromMap (enabled , vlogSize , key )
}
func addInt(enabled bool , metric *expvar .Int , val int64 ) {
if !enabled {
return
}
metric .Add (val )
}
func addToMap(enabled bool , metric *expvar .Map , key string , val int64 ) {
if !enabled {
return
}
metric .Add (key , val )
}
func storeToMap(enabled bool , metric *expvar .Map , key string , val expvar .Var ) {
if !enabled {
return
}
metric .Set (key , val )
}
func getFromMap(enabled bool , metric *expvar .Map , key string ) expvar .Var {
if !enabled {
return nil
}
return metric .Get (key )
}
The pages are generated with Golds v0.8.4 . (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds .