diff --git a/.gitignore b/.gitignore index 6e6e83cb5..c058d7ab0 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ pom.xml.versionsBackup .sts4-cache _includes .sdkmanrc +results/jmh/*.csv \ No newline at end of file diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AnnotationBenchmarksTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AnnotationBenchmarksTests.java index 5f02394f7..5b3f52fb3 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AnnotationBenchmarksTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AnnotationBenchmarksTests.java @@ -47,10 +47,6 @@ import static org.assertj.core.api.BDDAssertions.then; @Microbenchmark public class AnnotationBenchmarksTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:annotation.csv"); - } - @Benchmark public void manuallyCreatedSpans(BenchmarkContext context) throws Exception { then(context.sleuth.manualSpan()).isEqualTo("continued"); diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AsyncBenchmarksTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AsyncBenchmarksTests.java index 3417f1948..fac91d1e7 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AsyncBenchmarksTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/AsyncBenchmarksTests.java @@ -47,10 +47,6 @@ import static org.assertj.core.api.BDDAssertions.then; @Microbenchmark public class AsyncBenchmarksTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:async.csv"); - } - @Benchmark public void asyncMethodWithoutSleuth(BenchmarkContext context) throws Exception { then(context.untracedAsyncMethodHavingBean.async().get()).isEqualTo("async"); diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/HttpFilterBenchmarksTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/HttpFilterBenchmarksTests.java index 409cacb01..54308a7bd 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/HttpFilterBenchmarksTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/HttpFilterBenchmarksTests.java @@ -70,10 +70,6 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. @Microbenchmark public class HttpFilterBenchmarksTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:http_filter.csv"); - } - @Benchmark @Measurement(iterations = 5, time = 1) @Fork(2) diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/RestTemplateBenchmarkTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/RestTemplateBenchmarkTests.java index 8d091c6b8..a4a6b3ca3 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/RestTemplateBenchmarkTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/RestTemplateBenchmarkTests.java @@ -59,10 +59,6 @@ import static org.assertj.core.api.BDDAssertions.then; @Microbenchmark public class RestTemplateBenchmarkTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:rest_template.csv"); - } - @Benchmark public void syncEndpointWithoutSleuth(BenchmarkContext context) throws IOException, ServletException { then(context.untracedTemplate.getForObject("/foo", String.class)).isEqualTo("foo"); diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/StartupBenchmarkTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/StartupBenchmarkTests.java index 8ab7e74cd..24f454bc5 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/StartupBenchmarkTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/mvc/StartupBenchmarkTests.java @@ -39,10 +39,6 @@ import org.springframework.cloud.sleuth.benchmarks.jmh.ProcessLauncherState; @Disabled("Process doesn't stop") public class StartupBenchmarkTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:startup.csv"); - } - @Benchmark public void withAnnotations(ApplicationState state) throws Exception { state.run(); diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/stream/MicroBenchmarkStreamTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/stream/MicroBenchmarkStreamTests.java index d870e376a..74abc61a8 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/stream/MicroBenchmarkStreamTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/stream/MicroBenchmarkStreamTests.java @@ -64,10 +64,6 @@ import static org.assertj.core.api.Assertions.assertThat; @Microbenchmark public class MicroBenchmarkStreamTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:stream.csv"); - } - @Benchmark @Testable public void testStream(BenchmarkContext context) throws Exception { diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/MicroBenchmarkHttpTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/MicroBenchmarkHttpTests.java index 3a61af22d..00f39e8c1 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/MicroBenchmarkHttpTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/MicroBenchmarkHttpTests.java @@ -49,10 +49,6 @@ import org.springframework.test.web.reactive.server.WebTestClient; @Microbenchmark public class MicroBenchmarkHttpTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:http.csv"); - } - @Benchmark @Testable public void test(BenchmarkContext context) throws Exception { diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/SpringWebFluxBenchmarksTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/SpringWebFluxBenchmarksTests.java index 241d14642..e9d65b4fe 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/SpringWebFluxBenchmarksTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/SpringWebFluxBenchmarksTests.java @@ -70,10 +70,6 @@ public class SpringWebFluxBenchmarksTests { protected static TraceContext defaultTraceContext = TraceContext.newBuilder().traceIdHigh(333L).traceId(444L) .spanId(3).sampled(true).build(); - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:webflux.csv"); - } - protected ConfigurableApplicationContext applicationContext; protected SleuthBenchmarkingSpringWebFluxApp springWebFluxApp; diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutReactorSleuthSpringWebFluxBenchmarksTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutReactorSleuthSpringWebFluxBenchmarksTests.java index 0cc1dd5b4..ee2bcd1f3 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutReactorSleuthSpringWebFluxBenchmarksTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutReactorSleuthSpringWebFluxBenchmarksTests.java @@ -28,10 +28,6 @@ import org.openjdk.jmh.runner.options.OptionsBuilder; @Microbenchmark public class WithOutReactorSleuthSpringWebFluxBenchmarksTests extends SpringWebFluxBenchmarksTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:webflux_no_reactor_instrumentation.csv"); - } - public static void main(String[] args) throws RunnerException { Options opt = new OptionsBuilder() .include(".*" + WithOutReactorSleuthSpringWebFluxBenchmarksTests.class.getSimpleName() + ".*").build(); diff --git a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutSleuthSpringWebFluxBenchmarksTests.java b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutSleuthSpringWebFluxBenchmarksTests.java index a6b9f514a..d4477d05d 100644 --- a/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutSleuthSpringWebFluxBenchmarksTests.java +++ b/benchmarks/src/test/java/org/springframework/cloud/sleuth/benchmarks/jmh/webflux/WithOutSleuthSpringWebFluxBenchmarksTests.java @@ -28,10 +28,6 @@ import org.openjdk.jmh.runner.options.OptionsBuilder; @Microbenchmark public class WithOutSleuthSpringWebFluxBenchmarksTests extends SpringWebFluxBenchmarksTests { - static { - System.setProperty("jmh.mbr.report.publishTo", "csv:webflux_no_sleuth_instrumentation.csv"); - } - public static void main(String[] args) throws RunnerException { Options opt = new OptionsBuilder() .include(".*" + WithOutSleuthSpringWebFluxBenchmarksTests.class.getSimpleName() + ".*").build(); diff --git a/scripts/runJmhBenchmarks.sh b/scripts/runJmhBenchmarks.sh index 97d9f016c..fcc0e18bc 100755 --- a/scripts/runJmhBenchmarks.sh +++ b/scripts/runJmhBenchmarks.sh @@ -1,5 +1,11 @@ #!/bin/bash echo "Running JMH Benchmarks" -./mvnw clean install -Pbenchmarks -pl benchmarks --also-make -DskipTests && ./mvnw verify -Djmh.mbr.report.publishTo=csv:http.csv -pl benchmarks -Pbenchmarks +ROOT="$( pwd )" +JMH_RESULT_FILE_PARENT="${ROOT}/results/jmh" +mkdir -p "${JMH_RESULT_FILE_PARENT}" +JMH_RESULT_FILE="${JMH_RESULT_FILE_PARENT}/jmh-result.csv" +echo "Will produce results under [${JMH_RESULT_FILE}]" +./mvnw clean install -Pbenchmarks -pl benchmarks --also-make -DskipTests && ./mvnw verify -DpublishTo=csv:"${JMH_RESULT_FILE}" -pl benchmarks -Pbenchmarks + # java -Djmh.ignoreLock=true -jar benchmarks/target/benchmarks.jar org.springframework.cloud.sleuth.benchmarks.jmh.* -rf csv -rff jmh-result.csv | tee target/benchmarks.log