2014-10-22 6 views
2

Мне нужна вся статистика для Ehcache, когда у меня работает сервер. В документации я нашел объекты, такие как «StatisticsGateway» и «SampledCache». Я использую ehcache 2.9.Статистика Ehcache

Использование статистикиGateway получает неполную статистику. При использовании объекта SampledCache я получаю больше статистики, но нигде не описано каким-то образом для извлечения объекта.

Например, получение объекта StatisticsGateway выглядит следующим образом:

Cache cache = cacheManager.getCache("name"); 
StatisticsGateway statistic = cache.getStatistics(); 
statistic.cacheHitCount() etc. 

Как получить объект SampledCache?

Заранее благодарен!

ответ

1

ОбразецCache действует как объект декоратора. В основном вы создаете экземпляр SampledCache и передаете экземпляр Cache в качестве кэша поддержки. Кэш поддержки - это кеш, для которого вам нужна статистика, в вашем случае экземпляр кеша. Что-то вроде

SampledCache sampledCache = new SampledCache(cache);

Вы можете вызывать методы на sampledCache, чтобы получить желаемые характеристики. Создал простой пример здесь http://www.ashishpaliwal.com/blog/2015/01/using-ehcache-sampledcache/

2

Поздний ответ :) это может помочь кому-то другому.

Вы можете использовать jconsole.exe из своего каталога java/bin. Jconsole может показать вам статистику.

Вам может понадобиться, чтобы добавить поддержку JMX, чтобы увидеть статистику в Jconsole

<!-- JMX for Ehcache --> 
    <bean id="managementService" class="net.sf.ehcache.management.ManagementService" 
     init-method="init" destroy-method="dispose"> 
     <constructor-arg ref="ehcache" /> 
     <constructor-arg ref="mbeanServer" /> 
     <constructor-arg index="2" value="true" /> 
     <constructor-arg index="3" value="true" /> 
     <constructor-arg index="4" value="true" /> 
     <constructor-arg index="5" value="true" /> 
    </bean>