diff --git a/src/main/java/org/opensearch/performanceanalyzer/collectors/CacheConfigMetricsCollector.java b/src/main/java/org/opensearch/performanceanalyzer/collectors/CacheConfigMetricsCollector.java index e2828483..dc14e128 100644 --- a/src/main/java/org/opensearch/performanceanalyzer/collectors/CacheConfigMetricsCollector.java +++ b/src/main/java/org/opensearch/performanceanalyzer/collectors/CacheConfigMetricsCollector.java @@ -104,10 +104,14 @@ public void collectMetrics(long startTime) { indicesService, "indicesRequestCache", true); + Object openSearchOnHeapCache = + FieldUtils.readField(reqCache, "cache", true); Cache requestCache = (Cache) FieldUtils.readField( - reqCache, "cache", true); + openSearchOnHeapCache, + "cache", + true); Long requestCacheMaxSize = (Long) FieldUtils.readField( @@ -118,10 +122,15 @@ public void collectMetrics(long startTime) { SHARD_REQUEST_CACHE.toString(), requestCacheMaxSize); } catch (Exception e) { - return new CacheMaxSizeStatus( - SHARD_REQUEST_CACHE.toString(), null); + e.printStackTrace(); + return null; } }); + + if (shardRequestCacheMaxSizeStatus == null) { + return; + } + value.append(PerformanceAnalyzerMetrics.sMetricNewLineDelimitor) .append(shardRequestCacheMaxSizeStatus.serialize()); saveMetricValues(value.toString(), startTime);