您回答了我的问题后,我可以为您提供答案。
我的缓存是通过稍后的计划任务创建的
然后,文档的本部分适用于您:
只有启动时可用的缓存才绑定到注册表。对于在启动阶段后即时或以编程方式创建的缓存,需要显式注册。提供CacheMetricsRegistrar Bean可简化该过程。
因此,您必须自己注册此类缓存,希望它非常简单,例如:
public class MyComponent {
private final CacheMetricsRegistrar cacheMetricsRegistrar;
private final CacheManager cacheManager
public MyComponent(CacheMetricsRegistrar cacheMetricsRegistrar,
CacheManager cacheManager) { ... }
public void register() {
// you have just registered cache "xyz"
Cache xyz = this.cacheManager.getCache("xyz");
this.cacheMetricsRegistrar.bindCacheToRegistry(xyz);
}
}
您可以将此代码包含在现有代码中。如果您不想这样做,那么您需要在现有代码之后运行一些其他操作,以将这些缓存注册到注册表中。