public class CacheStatsMBeanWrapper extends java.lang.Object implements CacheStatsMBean
TYPE
Constructor and Description |
---|
CacheStatsMBeanWrapper(CacheStatsMBean delegate) |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
cacheInfoAsString()
Gathers the stats of the cache for logging.
|
long |
estimateCurrentWeight()
Total weight of the complete cache.
|
double |
getAverageLoadPenalty()
Returns the average time spent loading new values.
|
long |
getElementCount()
Get the number of elements/objects in the cache.
|
long |
getEvictionCount()
Returns the number of times an entry has been evicted.
|
long |
getHitCount()
Returns the number of times
com.google.common.cache.Cache lookup methods have returned a cached value. |
double |
getHitRate()
Returns the ratio of cache requests which were hits.
|
long |
getLoadCount()
Returns the total number of times that
com.google.common.cache.Cache lookup methods attempted to load new
values. |
long |
getLoadExceptionCount()
Returns the number of times
com.google.common.cache.Cache lookup methods threw an exception while loading a
new value. |
double |
getLoadExceptionRate()
Returns the ratio of cache loading attempts which threw exceptions.
|
long |
getLoadSuccessCount()
Returns the number of times
com.google.common.cache.Cache lookup methods have successfully loaded a new value. |
long |
getMaxTotalWeight()
The maximum weight of entries the cache may contain.
|
long |
getMissCount()
Returns the number of times
com.google.common.cache.Cache lookup methods have returned an uncached (newly
loaded) value, or null. |
double |
getMissRate()
Returns the ratio of cache requests which were misses.
|
java.lang.String |
getName() |
long |
getRequestCount()
Returns the number of times
com.google.common.cache.Cache lookup methods have returned either a cached or
uncached value. |
long |
getTotalLoadTime()
Returns the total number of nanoseconds the cache has spent loading new values.
|
void |
resetStats()
Reset the cache stats
|
public CacheStatsMBeanWrapper(CacheStatsMBean delegate)
public java.lang.String getName()
getName
in interface CacheStatsMBean
public long getRequestCount()
CacheStatsMBean
com.google.common.cache.Cache
lookup methods have returned either a cached or
uncached value. This is defined as getHitCount + getMissCount
.getRequestCount
in interface CacheStatsMBean
public long getHitCount()
CacheStatsMBean
com.google.common.cache.Cache
lookup methods have returned a cached value.getHitCount
in interface CacheStatsMBean
public double getHitRate()
CacheStatsMBean
getHitCount / getRequestCount
, or 1.0
when getRequestCount == 0
.
Note that getHitRate + getMissRate =~ 1.0
.getHitRate
in interface CacheStatsMBean
public long getMissCount()
CacheStatsMBean
com.google.common.cache.Cache
lookup methods have returned an uncached (newly
loaded) value, or null. Multiple concurrent calls to com.google.common.cache.Cache
lookup methods on an absent
value can result in multiple misses, all returning the results of a single cache load
operation.getMissCount
in interface CacheStatsMBean
public double getMissRate()
CacheStatsMBean
getMissCount / getRequestCount
, or 0.0
when getRequestCount == 0
.
Note that getHitRate + getMissRate =~ 1.0
. Cache misses include all requests which
weren't cache hits, including requests which resulted in either successful or failed loading
attempts, and requests which waited for other threads to finish loading. It is thus the case
that getMissCount >= getLoadSuccessCount + getLoadExceptionCount
. Multiple
concurrent misses for the same key will result in a single load operation.getMissRate
in interface CacheStatsMBean
public long getLoadCount()
CacheStatsMBean
com.google.common.cache.Cache
lookup methods attempted to load new
values. This includes both successful load operations, as well as those that threw
exceptions. This is defined as getLoadSuccessCount + getLoadExceptionCount
.getLoadCount
in interface CacheStatsMBean
public long getLoadSuccessCount()
CacheStatsMBean
com.google.common.cache.Cache
lookup methods have successfully loaded a new value.
This is always incremented in conjunction with CacheStatsMBean.getMissCount()
, though getMissCount
is also incremented when an exception is encountered during cache loading (see
CacheStatsMBean.getLoadExceptionCount()
). Multiple concurrent misses for the same key will result in a
single load operation.getLoadSuccessCount
in interface CacheStatsMBean
public long getLoadExceptionCount()
CacheStatsMBean
com.google.common.cache.Cache
lookup methods threw an exception while loading a
new value. This is always incremented in conjunction with getMissCount
, though
getMissCount
is also incremented when cache loading completes successfully (see
CacheStatsMBean.getLoadSuccessCount()
). Multiple concurrent misses for the same key will result in a
single load operation.getLoadExceptionCount
in interface CacheStatsMBean
public double getLoadExceptionRate()
CacheStatsMBean
getLoadExceptionCount / (getLoadSuccessCount + getLoadExceptionCount)
, or
0.0
when getLoadSuccessCount + getLoadExceptionCount == 0
.getLoadExceptionRate
in interface CacheStatsMBean
public long getTotalLoadTime()
CacheStatsMBean
getLoadSuccessCount
or getLoadExceptionCount
is incremented.getTotalLoadTime
in interface CacheStatsMBean
public double getAverageLoadPenalty()
CacheStatsMBean
getTotalLoadTime / (getLoadSuccessCount + getLoadExceptionCount)
.getAverageLoadPenalty
in interface CacheStatsMBean
public long getEvictionCount()
CacheStatsMBean
com.google.common.cache.Cache#invalidate invalidations
.getEvictionCount
in interface CacheStatsMBean
public long getElementCount()
CacheStatsMBean
getElementCount
in interface CacheStatsMBean
public long getMaxTotalWeight()
CacheStatsMBean
getMaxTotalWeight
in interface CacheStatsMBean
public long estimateCurrentWeight()
CacheStatsMBean
estimateCurrentWeight
in interface CacheStatsMBean
public java.lang.String cacheInfoAsString()
CacheStatsMBean
cacheInfoAsString
in interface CacheStatsMBean
public void resetStats()
CacheStatsMBean
resetStats
in interface CacheStatsMBean
Copyright © 2010 - 2020 Adobe. All Rights Reserved