Как выставить статистику кеша для Guava Cache - PullRequest
0 голосов
/ 14 мая 2019

Я использую весеннюю загрузку 1.5 и не могу предоставить статистику кэша гуавы в конечной точке /prometheus.В конце концов я могу представить его как JMX, но тогда я не знаю, как подключить эти вещи.Есть ли какой-нибудь более простой способ, как это сделать?

Я создаю кэш с помощью построителя кэша следующим образом:

    @Bean
    @Primary
    public CacheManager cacheManager() {
        final GuavaCacheManager cacheManager = new GuavaCacheManager();
        final CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
                .maximumSize(5000)
                .recordStats()
                .expireAfterWrite(1, TimeUnit.HOURS);
        cacheManager.setCacheBuilder(cacheBuilder);
        cacheManager.setCacheNames(Lists.newArrayList("TEST_CACHE"));
        return cacheManager;
    }

Я также использую метод .recordStats().

1 Ответ

0 голосов
/ 14 мая 2019

Вы можете следить за показателями гуавы, используя связыватель GuavaCacheMetrics

GuavaCacheBuilder.monitor(meterRegistry, aCache, "myCacheName")

Обратите внимание, поскольку вы используете компоновщик кэша с CacheManager, вам нужно будет выполнить этот вызов monitor для каждого отдельного кэша.

Есть и другие способы решения этой проблемы, и я считаю, что CacheManager автоматически инструктируется в SpringBot 2.x. Таким образом, обновление даст вам более простую интеграцию.

...