Merge "Add a metrics reporter for testing metrics generation"
diff --git a/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/GitRepoMetricsCacheIT.java b/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/GitRepoMetricsCacheIT.java
index f347425..ef502ef 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/GitRepoMetricsCacheIT.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/GitRepoMetricsCacheIT.java
@@ -17,6 +17,7 @@
import static org.junit.Assert.fail;
import com.codahale.metrics.MetricRegistry;
+import com.codahale.metrics.Slf4jReporter;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import com.google.gerrit.acceptance.LightweightPluginDaemonTest;
import com.google.gerrit.acceptance.TestPlugin;
@@ -41,6 +42,7 @@
import java.util.Optional;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Function;
+import org.junit.After;
import org.junit.Test;
@TestPlugin(
@@ -57,6 +59,7 @@
private GitStatsMetricsCollector gitStatsMetricsCollector;
private GitRefsMetricsCollector gitRefsMetricsCollector;
private GitRepoMetricsCache gitRepoMetricsCache;
+ private Slf4jReporter metricReporter;
private final Project.NameKey testProject1 = Project.nameKey("testProject1");
private final Project.NameKey testProject2 = Project.nameKey("testProject2");
@@ -71,6 +74,12 @@
fsMetricsCollector = plugin.getSysInjector().getInstance(FSMetricsCollector.class);
gitStatsMetricsCollector = plugin.getSysInjector().getInstance(GitStatsMetricsCollector.class);
gitRefsMetricsCollector = plugin.getSysInjector().getInstance(GitRefsMetricsCollector.class);
+ metricReporter = Slf4jReporter.forRegistry(metricRegistry).build();
+ }
+
+ @After
+ public void tearDown() {
+ metricReporter.close();
}
@CanIgnoreReturnValue
@@ -182,6 +191,7 @@
}
private long getPluginMetricsCount() {
+ metricReporter.report();
return metricRegistry.getMetrics().keySet().stream()
.filter(metricName -> metricName.contains("plugins/git-repo-metrics"))
.count();
diff --git a/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/MetricsInitializerIT.java b/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/MetricsInitializerIT.java
index 9b83588..1d6ee30 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/MetricsInitializerIT.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/gitrepometrics/MetricsInitializerIT.java
@@ -17,6 +17,7 @@
import static org.junit.Assert.fail;
import com.codahale.metrics.MetricRegistry;
+import com.codahale.metrics.Slf4jReporter;
import com.google.gerrit.acceptance.LightweightPluginDaemonTest;
import com.google.gerrit.acceptance.TestPlugin;
import com.google.gerrit.acceptance.UseLocalDisk;
@@ -27,6 +28,7 @@
import com.googlesource.gerrit.plugins.gitrepometrics.collectors.GitRefsMetricsCollector;
import com.googlesource.gerrit.plugins.gitrepometrics.collectors.GitStatsMetricsCollector;
import java.time.Duration;
+import org.junit.After;
import org.junit.Test;
@TestPlugin(
@@ -40,6 +42,7 @@
private FSMetricsCollector fsMetricsCollector;
private GitStatsMetricsCollector gitStatsMetricsCollector;
private GitRefsMetricsCollector gitRefsMetricsCollector;
+ private Slf4jReporter metricReporter;
@Override
public void setUpTestPlugin() throws Exception {
@@ -48,6 +51,12 @@
fsMetricsCollector = plugin.getSysInjector().getInstance(FSMetricsCollector.class);
gitStatsMetricsCollector = plugin.getSysInjector().getInstance(GitStatsMetricsCollector.class);
gitRefsMetricsCollector = plugin.getSysInjector().getInstance(GitRefsMetricsCollector.class);
+ metricReporter = Slf4jReporter.forRegistry(metricRegistry).build();
+ }
+
+ @After
+ public void tearDown() {
+ metricReporter.close();
}
@Test
@@ -79,6 +88,7 @@
}
private long getPluginMetricsCount() {
+ metricReporter.report();
return metricRegistry.getMetrics().keySet().stream()
.filter(metricName -> metricName.contains("plugins/git-repo-metrics"))
.count();