Class InstrumentedEhcache

  • All Implemented Interfaces:
    Cloneable, net.sf.ehcache.Ehcache, net.sf.ehcache.terracotta.InternalEhcache

    public class InstrumentedEhcache
    extends net.sf.ehcache.constructs.EhcacheDecoratorAdapter
    An instrumented Ehcache instance.
    • Field Summary

      • Fields inherited from class net.sf.ehcache.constructs.EhcacheDecoratorAdapter

        underlyingCache
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      net.sf.ehcache.Element get​(Serializable key)  
      net.sf.ehcache.Element get​(Object key)  
      static net.sf.ehcache.Ehcache instrument​(MetricRegistry registry, net.sf.ehcache.Ehcache cache)
      Instruments the given Ehcache instance with get and put timers and a set of gauges for Ehcache's built-in statistics:
      void put​(net.sf.ehcache.Element element)  
      void put​(net.sf.ehcache.Element element, boolean doNotNotifyCacheReplicators)  
      net.sf.ehcache.Element putIfAbsent​(net.sf.ehcache.Element element)  
      • Methods inherited from class net.sf.ehcache.constructs.EhcacheDecoratorAdapter

        acquireReadLockOnKey, acquireWriteLockOnKey, addPropertyChangeListener, bootstrap, calculateInMemorySize, calculateOffHeapSize, calculateOnDiskSize, clone, createQuery, disableDynamicFeatures, dispose, evictExpiredElements, flush, getAll, getAllWithLoader, getBootstrapCacheLoader, getCacheConfiguration, getCacheEventNotificationService, getCacheExceptionHandler, getCacheManager, getDiskStoreSize, getGuid, getInternalContext, getKeys, getKeysNoDuplicateCheck, getKeysWithExpiryCheck, getMemoryStoreSize, getName, getOffHeapStoreSize, getQuiet, getQuiet, getRegisteredCacheExtensions, getRegisteredCacheLoaders, getRegisteredCacheWriter, getSearchAttribute, getSearchAttributes, getSize, getStatistics, getStatus, getWithLoader, getWriterManager, hasAbortedSizeOf, initialise, isClusterBulkLoadEnabled, isClusterCoherent, isDisabled, isElementInMemory, isElementInMemory, isElementOnDisk, isElementOnDisk, isExpired, isKeyInCache, isNodeBulkLoadEnabled, isNodeCoherent, isReadLockedByCurrentThread, isSearchable, isValueInCache, isWriteLockedByCurrentThread, load, loadAll, putAll, putIfAbsent, putQuiet, putWithWriter, recalculateSize, registerCacheExtension, registerCacheLoader, registerCacheWriter, registerDynamicAttributesExtractor, releaseReadLockOnKey, releaseWriteLockOnKey, remove, remove, remove, remove, removeAll, removeAll, removeAll, removeAll, removeAndReturnElement, removeElement, removePropertyChangeListener, removeQuiet, removeQuiet, removeWithWriter, replace, replace, setBootstrapCacheLoader, setCacheExceptionHandler, setCacheManager, setDisabled, setName, setNodeBulkLoadEnabled, setNodeCoherent, setTransactionManagerLookup, toString, tryReadLockOnKey, tryWriteLockOnKey, unregisterCacheExtension, unregisterCacheLoader, unregisterCacheWriter, waitUntilClusterBulkLoadComplete, waitUntilClusterCoherent
    • Method Detail

      • instrument

        public static net.sf.ehcache.Ehcache instrument​(MetricRegistry registry,
                                                        net.sf.ehcache.Ehcache cache)
        Instruments the given Ehcache instance with get and put timers and a set of gauges for Ehcache's built-in statistics:

        Ehcache timered metrics
        hits The number of times a requested item was found in the cache.
        in-memory-hits Number of times a requested item was found in the memory store.
        off-heap-hits Number of times a requested item was found in the off-heap store.
        on-disk-hits Number of times a requested item was found in the disk store.
        misses Number of times a requested item was not found in the cache.
        in-memory-misses Number of times a requested item was not found in the memory store.
        off-heap-misses Number of times a requested item was not found in the off-heap store.
        on-disk-misses Number of times a requested item was not found in the disk store.
        objects Number of elements stored in the cache.
        in-memory-objects Number of objects in the memory store.
        off-heap-objects Number of objects in the off-heap store.
        on-disk-objects Number of objects in the disk store.
        mean-get-time The average get time. Because ehcache support JDK1.4.2, each get time uses System.currentTimeMillis(), rather than nanoseconds. The accuracy is thus limited.
        mean-search-time The average execution time (in milliseconds) within the last sample period.
        eviction-count The number of cache evictions, since the cache was created, or statistics were cleared.
        searches-per-second The number of search executions that have completed in the last second.
        accuracy A human readable description of the accuracy setting. One of "None", "Best Effort" or "Guaranteed".

        N.B.: This enables Ehcache's sampling statistics with an accuracy level of "none."

        Parameters:
        cache - an Ehcache instance
        registry - a MetricRegistry
        Returns:
        an instrumented decorator for cache
        See Also:
        StatisticsGateway
      • get

        public net.sf.ehcache.Element get​(Object key)
                                   throws IllegalStateException,
                                          net.sf.ehcache.CacheException
        Specified by:
        get in interface net.sf.ehcache.Ehcache
        Overrides:
        get in class net.sf.ehcache.constructs.EhcacheDecoratorAdapter
        Throws:
        IllegalStateException
        net.sf.ehcache.CacheException
      • get

        public net.sf.ehcache.Element get​(Serializable key)
                                   throws IllegalStateException,
                                          net.sf.ehcache.CacheException
        Specified by:
        get in interface net.sf.ehcache.Ehcache
        Overrides:
        get in class net.sf.ehcache.constructs.EhcacheDecoratorAdapter
        Throws:
        IllegalStateException
        net.sf.ehcache.CacheException
      • putIfAbsent

        public net.sf.ehcache.Element putIfAbsent​(net.sf.ehcache.Element element)
                                           throws NullPointerException
        Specified by:
        putIfAbsent in interface net.sf.ehcache.Ehcache
        Overrides:
        putIfAbsent in class net.sf.ehcache.constructs.EhcacheDecoratorAdapter
        Throws:
        NullPointerException