From 136e419617bf09b684b42da2192279c09cb8c08e Mon Sep 17 00:00:00 2001
From: Gagan Juneja <gjjuneja@amazon.com>
Date: Thu, 16 May 2024 13:32:26 +0530
Subject: [PATCH] test changes

---
 .../OpenSearchResources.java                  | 12 +++++-----
 .../PerformanceAnalyzerPlugin.java            | 23 +++++++++++++++----
 .../PerformanceAnalyzerSearchListener.java    |  7 ++----
 ...rmanceAnalyzerTransportRequestHandler.java |  3 +--
 4 files changed, 28 insertions(+), 17 deletions(-)

diff --git a/src/main/java/org/opensearch/performanceanalyzer/OpenSearchResources.java b/src/main/java/org/opensearch/performanceanalyzer/OpenSearchResources.java
index 2db91c81..262c055a 100644
--- a/src/main/java/org/opensearch/performanceanalyzer/OpenSearchResources.java
+++ b/src/main/java/org/opensearch/performanceanalyzer/OpenSearchResources.java
@@ -11,7 +11,7 @@
 import org.opensearch.core.indices.breaker.CircuitBreakerService;
 import org.opensearch.env.Environment;
 import org.opensearch.indices.IndicesService;
-import org.opensearch.telemetry.service.TelemetryService;
+import org.opensearch.telemetry.metrics.MetricsRegistry;
 import org.opensearch.threadpool.ThreadPool;
 
 public final class OpenSearchResources {
@@ -26,7 +26,7 @@ public final class OpenSearchResources {
     private java.nio.file.Path configPath;
     private String pluginFileLocation;
     private Client client;
-    private TelemetryService telemetryService;
+    private MetricsRegistry metricsRegistry;
 
     private OpenSearchResources() {
         threadPool = null;
@@ -111,11 +111,11 @@ public Client getClient() {
         return client;
     }
 
-    public TelemetryService getTelemetryService() {
-        return telemetryService;
+    public MetricsRegistry getMetricsRegistry() {
+        return metricsRegistry;
     }
 
-    public void setTelemetryService(TelemetryService telemetryService) {
-        this.telemetryService = telemetryService;
+    public void setMetricsRegistry(MetricsRegistry metricsRegistry) {
+        this.metricsRegistry = metricsRegistry;
     }
 }
diff --git a/src/main/java/org/opensearch/performanceanalyzer/PerformanceAnalyzerPlugin.java b/src/main/java/org/opensearch/performanceanalyzer/PerformanceAnalyzerPlugin.java
index 34007093..189cff5e 100644
--- a/src/main/java/org/opensearch/performanceanalyzer/PerformanceAnalyzerPlugin.java
+++ b/src/main/java/org/opensearch/performanceanalyzer/PerformanceAnalyzerPlugin.java
@@ -88,10 +88,11 @@
 import org.opensearch.plugins.NetworkPlugin;
 import org.opensearch.plugins.Plugin;
 import org.opensearch.plugins.SearchPlugin;
+import org.opensearch.plugins.TelemetryAwarePlugin;
 import org.opensearch.repositories.RepositoriesService;
 import org.opensearch.rest.RestController;
 import org.opensearch.script.ScriptService;
-import org.opensearch.telemetry.service.TelemetryService;
+import org.opensearch.telemetry.metrics.MetricsRegistry;
 import org.opensearch.telemetry.tracing.Tracer;
 import org.opensearch.threadpool.ThreadPool;
 import org.opensearch.transport.Transport;
@@ -99,7 +100,7 @@
 import org.opensearch.watcher.ResourceWatcherService;
 
 public final class PerformanceAnalyzerPlugin extends Plugin
-        implements ActionPlugin, NetworkPlugin, SearchPlugin {
+        implements ActionPlugin, NetworkPlugin, SearchPlugin, TelemetryAwarePlugin {
     private static final Logger LOG = LogManager.getLogger(PerformanceAnalyzerPlugin.class);
     public static final String PLUGIN_NAME = "opensearch-performance-analyzer";
     private static final String ADD_FAULT_DETECTION_METHOD = "addFaultDetectionListener";
@@ -384,7 +385,21 @@ public List<Setting<?>> getSettings() {
     }
 
     @Override
-    public void setTelemetryService(TelemetryService telemetryService) {
-        OpenSearchResources.INSTANCE.setTelemetryService(telemetryService);
+    public Collection<Object> createComponents(
+            Client client,
+            ClusterService clusterService,
+            ThreadPool threadPool,
+            ResourceWatcherService resourceWatcherService,
+            ScriptService scriptService,
+            NamedXContentRegistry xContentRegistry,
+            Environment environment,
+            NodeEnvironment nodeEnvironment,
+            NamedWriteableRegistry namedWriteableRegistry,
+            IndexNameExpressionResolver indexNameExpressionResolver,
+            Supplier<RepositoriesService> repositoriesServiceSupplier,
+            Tracer tracer,
+            MetricsRegistry metricsRegistry) {
+        OpenSearchResources.INSTANCE.setMetricsRegistry(metricsRegistry);
+        return Collections.emptyList();
     }
 }
diff --git a/src/main/java/org/opensearch/performanceanalyzer/listener/PerformanceAnalyzerSearchListener.java b/src/main/java/org/opensearch/performanceanalyzer/listener/PerformanceAnalyzerSearchListener.java
index 6aa0ff31..bf661a73 100644
--- a/src/main/java/org/opensearch/performanceanalyzer/listener/PerformanceAnalyzerSearchListener.java
+++ b/src/main/java/org/opensearch/performanceanalyzer/listener/PerformanceAnalyzerSearchListener.java
@@ -38,11 +38,8 @@ public class PerformanceAnalyzerSearchListener
 
     public PerformanceAnalyzerSearchListener(final PerformanceAnalyzerController controller) {
         this.controller = controller;
-        if (OpenSearchResources.INSTANCE.getTelemetryService() != null
-                && OpenSearchResources.INSTANCE.getTelemetryService().getMetricsRegistry()
-                        != null) {
-            this.metricsRegistry =
-                    OpenSearchResources.INSTANCE.getTelemetryService().getMetricsRegistry();
+        if (OpenSearchResources.INSTANCE.getMetricsRegistry() != null) {
+            this.metricsRegistry = OpenSearchResources.INSTANCE.getMetricsRegistry();
             searchCPUUtilizationCounter =
                     metricsRegistry.createCounter(
                             "pa.core.search.cpuUtilization", "test counter", "1");
diff --git a/src/main/java/org/opensearch/performanceanalyzer/transport/PerformanceAnalyzerTransportRequestHandler.java b/src/main/java/org/opensearch/performanceanalyzer/transport/PerformanceAnalyzerTransportRequestHandler.java
index 89cd4f3d..10bccc37 100644
--- a/src/main/java/org/opensearch/performanceanalyzer/transport/PerformanceAnalyzerTransportRequestHandler.java
+++ b/src/main/java/org/opensearch/performanceanalyzer/transport/PerformanceAnalyzerTransportRequestHandler.java
@@ -37,8 +37,7 @@ public class PerformanceAnalyzerTransportRequestHandler<T extends TransportReque
             TransportRequestHandler<T> actualHandler, PerformanceAnalyzerController controller) {
         this.actualHandler = actualHandler;
         this.controller = controller;
-        this.metricsRegistry =
-                OpenSearchResources.INSTANCE.getTelemetryService().getMetricsRegistry();
+        this.metricsRegistry = OpenSearchResources.INSTANCE.getMetricsRegistry();
         this.cpuUtilizationCounter =
                 metricsRegistry.createCounter(
                         "pa.core.cpuUtilizationCounter", "cpuUtilizationCounter", "time");