提问者:小点点

无法获取咖啡因缓存的统计数据(Spring5)


我陷入了一个(希望)非常简单的问题。我在Spring应用程序中添加了一个咖啡因缓存,这个缓存运行良好。现在我试图获取这个缓存的统计数据,但我找不到方法来获取正确的方法。。。

import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.caffeine.CaffeineCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.concurrent.TimeUnit;

@Configuration
@EnableCaching
public class CachingConfig {

    @Bean
    public CacheManager cacheManager() {
        CaffeineCacheManager cacheManager = new CaffeineCacheManager("bin");
        cacheManager.setCaffeine(Caffeine.newBuilder()
                .maximumSize(10000)
                .expireAfterWrite(1, TimeUnit.DAYS)
                .recordStats());
        return cacheManager;
    }

}

如何获取此缓存的统计信息?


共1个答案

匿名用户

注入缓存管理器,然后得到它。

CacheStats stats = ((CaffeineCache) cacheManager.getCache("bin")).getNativeCache().stats();

为我工作。