From 30c43eb7346b946b32323ab251fc18fb9dafe616 Mon Sep 17 00:00:00 2001 From: Rafael Winterhalter Date: Tue, 11 Jul 2023 00:55:18 +0200 Subject: [PATCH 1/5] Make most plugins depend on only the SDK and tracer dependencies. --- .../agent/configuration/CoreConfiguration.java | 4 ++-- .../apm/agent/impl/ElasticApmTracer.java | 1 + .../CircuitBreakerConfiguration.java | 4 ++-- .../stacktrace/StacktraceConfiguration.java | 3 ++- .../agent/report/ReporterConfiguration.java | 2 +- apm-agent-plugins/apm-awslambda-plugin/pom.xml | 6 ++++++ .../cassandra3/Cassandra3Instrumentation.java | 3 +-- .../BaseServerEndpointInstrumentation.java | 2 +- .../JaxRsTransactionNameInstrumentation.java | 2 +- .../JaxWsTransactionNameInstrumentation.java | 2 +- apm-agent-plugins/apm-jmx-plugin/pom.xml | 9 +++++++++ apm-agent-plugins/apm-logging-plugin/pom.xml | 9 +++++++++ .../apm-micrometer-plugin/pom.xml | 6 ++++++ apm-agent-plugins/apm-opentelemetry/pom.xml | 9 +++++++++ .../apm-opentracing-plugin/pom.xml | 9 +++++++++ apm-agent-plugins/apm-profiling-plugin/pom.xml | 6 ++++++ .../agent/profiler/ProfilingConfiguration.java | 4 ++-- ...tractJobTransactionNameInstrumentation.java | 2 +- ...cheduledTransactionNameInstrumentation.java | 2 +- .../scheduled/TimerTaskInstrumentation.java | 2 +- apm-agent-plugins/apm-servlet-plugin/pom.xml | 6 ++++++ apm-agent-plugins/apm-spring-webflux/pom.xml | 5 +++++ apm-agent-plugins/pom.xml | 18 ++++++------------ .../tracer/configuration}/RangeValidator.java | 2 +- .../tracer/configuration}/RegexValidator.java | 2 +- .../configuration/StacktraceConfiguration.java | 9 ++++++--- .../configuration}/RangeValidatorTest.java | 3 ++- .../configuration}/RegexValidatorTest.java | 3 ++- 28 files changed, 100 insertions(+), 35 deletions(-) rename {apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation => apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration}/RangeValidator.java (97%) rename {apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation => apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration}/RegexValidator.java (97%) rename apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/package-info.java => apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/StacktraceConfiguration.java (82%) rename {apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation => apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration}/RangeValidatorTest.java (96%) rename {apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation => apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration}/RegexValidatorTest.java (93%) diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/CoreConfiguration.java b/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/CoreConfiguration.java index b6c4fe2db3..f5453b5e3e 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/CoreConfiguration.java +++ b/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/CoreConfiguration.java @@ -23,7 +23,7 @@ import co.elastic.apm.agent.tracer.configuration.RoundedDoubleConverter; import co.elastic.apm.agent.tracer.configuration.TimeDuration; import co.elastic.apm.agent.tracer.configuration.TimeDurationValueConverter; -import co.elastic.apm.agent.configuration.validation.RegexValidator; +import co.elastic.apm.agent.tracer.configuration.RegexValidator; import co.elastic.apm.agent.impl.transaction.Span; import co.elastic.apm.agent.matcher.MethodMatcher; import co.elastic.apm.agent.matcher.MethodMatcherValueConverter; @@ -56,7 +56,7 @@ import java.util.Set; import java.util.concurrent.TimeUnit; -import static co.elastic.apm.agent.configuration.validation.RangeValidator.isInRange; +import static co.elastic.apm.agent.tracer.configuration.RangeValidator.isInRange; import static co.elastic.apm.agent.logging.LoggingConfiguration.AGENT_HOME_PLACEHOLDER; public class CoreConfiguration extends ConfigurationOptionProvider implements co.elastic.apm.agent.tracer.configuration.CoreConfiguration { diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/ElasticApmTracer.java b/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/ElasticApmTracer.java index bcd4d77b3a..2d0b8bdffd 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/ElasticApmTracer.java +++ b/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/ElasticApmTracer.java @@ -143,6 +143,7 @@ protected ActiveStack initialValue() { configs.put(co.elastic.apm.agent.tracer.configuration.MetricsConfiguration.class, MetricsConfiguration.class); configs.put(co.elastic.apm.agent.tracer.configuration.ReporterConfiguration.class, ReporterConfiguration.class); configs.put(co.elastic.apm.agent.tracer.configuration.ServerlessConfiguration.class, ServerlessConfiguration.class); + configs.put(co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration.class, StacktraceConfiguration.class); } private static void checkClassloader() { diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/circuitbreaker/CircuitBreakerConfiguration.java b/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/circuitbreaker/CircuitBreakerConfiguration.java index f234771156..88e4caf83b 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/circuitbreaker/CircuitBreakerConfiguration.java +++ b/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/circuitbreaker/CircuitBreakerConfiguration.java @@ -23,8 +23,8 @@ import org.stagemonitor.configuration.ConfigurationOption; import org.stagemonitor.configuration.ConfigurationOptionProvider; -import static co.elastic.apm.agent.configuration.validation.RangeValidator.isInRange; -import static co.elastic.apm.agent.configuration.validation.RangeValidator.isNotInRange; +import static co.elastic.apm.agent.tracer.configuration.RangeValidator.isInRange; +import static co.elastic.apm.agent.tracer.configuration.RangeValidator.isNotInRange; public class CircuitBreakerConfiguration extends ConfigurationOptionProvider { public static final String CIRCUIT_BREAKER_CATEGORY = "Circuit-Breaker"; diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/stacktrace/StacktraceConfiguration.java b/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/stacktrace/StacktraceConfiguration.java index 16843871ac..455aa50b63 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/stacktrace/StacktraceConfiguration.java +++ b/apm-agent-core/src/main/java/co/elastic/apm/agent/impl/stacktrace/StacktraceConfiguration.java @@ -26,7 +26,7 @@ import java.util.Collection; import java.util.Collections; -public class StacktraceConfiguration extends ConfigurationOptionProvider { +public class StacktraceConfiguration extends ConfigurationOptionProvider implements co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration { private static final String STACKTRACE_CATEGORY = "Stacktrace"; public static final String APPLICATION_PACKAGES = "application_packages"; @@ -95,6 +95,7 @@ public class StacktraceConfiguration extends ConfigurationOptionProvider { .dynamic(true) .buildWithDefault(TimeDuration.of("5ms")); + @Override public Collection getApplicationPackages() { return applicationPackages.get(); } diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/report/ReporterConfiguration.java b/apm-agent-core/src/main/java/co/elastic/apm/agent/report/ReporterConfiguration.java index a7601282c7..5a7965c317 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/report/ReporterConfiguration.java +++ b/apm-agent-core/src/main/java/co/elastic/apm/agent/report/ReporterConfiguration.java @@ -35,7 +35,7 @@ import java.util.Collections; import java.util.List; -import static co.elastic.apm.agent.configuration.validation.RangeValidator.isNotInRange; +import static co.elastic.apm.agent.tracer.configuration.RangeValidator.isNotInRange; public class ReporterConfiguration extends ConfigurationOptionProvider implements co.elastic.apm.agent.tracer.configuration.ReporterConfiguration { diff --git a/apm-agent-plugins/apm-awslambda-plugin/pom.xml b/apm-agent-plugins/apm-awslambda-plugin/pom.xml index 30e5266f97..e33a894072 100644 --- a/apm-agent-plugins/apm-awslambda-plugin/pom.xml +++ b/apm-agent-plugins/apm-awslambda-plugin/pom.xml @@ -17,6 +17,12 @@ + + + ${project.groupId} + apm-agent-core + ${project.version} + com.amazonaws aws-lambda-java-core diff --git a/apm-agent-plugins/apm-cassandra/apm-cassandra3-plugin/src/main/java/co/elastic/apm/agent/cassandra3/Cassandra3Instrumentation.java b/apm-agent-plugins/apm-cassandra/apm-cassandra3-plugin/src/main/java/co/elastic/apm/agent/cassandra3/Cassandra3Instrumentation.java index 1cf1f041eb..5564915e39 100644 --- a/apm-agent-plugins/apm-cassandra/apm-cassandra3-plugin/src/main/java/co/elastic/apm/agent/cassandra3/Cassandra3Instrumentation.java +++ b/apm-agent-plugins/apm-cassandra/apm-cassandra3-plugin/src/main/java/co/elastic/apm/agent/cassandra3/Cassandra3Instrumentation.java @@ -19,7 +19,6 @@ package co.elastic.apm.agent.cassandra3; import co.elastic.apm.agent.cassandra.CassandraHelper; -import co.elastic.apm.agent.impl.context.Destination; import co.elastic.apm.agent.sdk.ElasticApmInstrumentation; import co.elastic.apm.agent.sdk.bytebuddy.CustomElementMatchers; import co.elastic.apm.agent.tracer.GlobalTracer; @@ -204,7 +203,7 @@ static DestinationAddressSetter get() { } /** - * References the method {@link Destination#withSocketAddress(java.net.SocketAddress)} that has been introduced in 2.0.2 + * References the method {@link co.elastic.apm.agent.tracer.metadata.Destination#withSocketAddress(java.net.SocketAddress)} that has been introduced in 2.0.2 * We must not reference this class directly to avoid it being loaded which may cause a linkage error. */ enum WithSocketAddress implements DestinationAddressSetter { diff --git a/apm-agent-plugins/apm-jakarta-websocket-plugin/src/main/java/co/elastic/apm/agent/websocket/BaseServerEndpointInstrumentation.java b/apm-agent-plugins/apm-jakarta-websocket-plugin/src/main/java/co/elastic/apm/agent/websocket/BaseServerEndpointInstrumentation.java index 5fac2d9689..4c0d3e58e1 100644 --- a/apm-agent-plugins/apm-jakarta-websocket-plugin/src/main/java/co/elastic/apm/agent/websocket/BaseServerEndpointInstrumentation.java +++ b/apm-agent-plugins/apm-jakarta-websocket-plugin/src/main/java/co/elastic/apm/agent/websocket/BaseServerEndpointInstrumentation.java @@ -18,12 +18,12 @@ */ package co.elastic.apm.agent.websocket; -import co.elastic.apm.agent.impl.stacktrace.StacktraceConfiguration; import co.elastic.apm.agent.sdk.ElasticApmInstrumentation; import co.elastic.apm.agent.tracer.GlobalTracer; import co.elastic.apm.agent.tracer.Outcome; import co.elastic.apm.agent.tracer.Tracer; import co.elastic.apm.agent.tracer.Transaction; +import co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.NamedElement; import net.bytebuddy.description.method.MethodDescription; diff --git a/apm-agent-plugins/apm-jaxrs-plugin/src/main/java/co/elastic/apm/agent/jaxrs/JaxRsTransactionNameInstrumentation.java b/apm-agent-plugins/apm-jaxrs-plugin/src/main/java/co/elastic/apm/agent/jaxrs/JaxRsTransactionNameInstrumentation.java index 6ab0c9d4b5..7d504501f4 100644 --- a/apm-agent-plugins/apm-jaxrs-plugin/src/main/java/co/elastic/apm/agent/jaxrs/JaxRsTransactionNameInstrumentation.java +++ b/apm-agent-plugins/apm-jaxrs-plugin/src/main/java/co/elastic/apm/agent/jaxrs/JaxRsTransactionNameInstrumentation.java @@ -20,9 +20,9 @@ import co.elastic.apm.agent.sdk.ElasticApmInstrumentation; import co.elastic.apm.agent.tracer.GlobalTracer; -import co.elastic.apm.agent.impl.stacktrace.StacktraceConfiguration; import co.elastic.apm.agent.tracer.Tracer; import co.elastic.apm.agent.tracer.Transaction; +import co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.NamedElement; import net.bytebuddy.description.method.MethodDescription; diff --git a/apm-agent-plugins/apm-jaxws-plugin/src/main/java/co/elastic/apm/agent/jaxws/JaxWsTransactionNameInstrumentation.java b/apm-agent-plugins/apm-jaxws-plugin/src/main/java/co/elastic/apm/agent/jaxws/JaxWsTransactionNameInstrumentation.java index 28059c812c..bbb058f055 100644 --- a/apm-agent-plugins/apm-jaxws-plugin/src/main/java/co/elastic/apm/agent/jaxws/JaxWsTransactionNameInstrumentation.java +++ b/apm-agent-plugins/apm-jaxws-plugin/src/main/java/co/elastic/apm/agent/jaxws/JaxWsTransactionNameInstrumentation.java @@ -19,11 +19,11 @@ package co.elastic.apm.agent.jaxws; import co.elastic.apm.agent.sdk.bytebuddy.SimpleMethodSignatureOffsetMappingFactory.SimpleMethodSignature; -import co.elastic.apm.agent.impl.stacktrace.StacktraceConfiguration; import co.elastic.apm.agent.sdk.ElasticApmInstrumentation; import co.elastic.apm.agent.tracer.GlobalTracer; import co.elastic.apm.agent.tracer.Tracer; import co.elastic.apm.agent.tracer.Transaction; +import co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.NamedElement; import net.bytebuddy.description.method.MethodDescription; diff --git a/apm-agent-plugins/apm-jmx-plugin/pom.xml b/apm-agent-plugins/apm-jmx-plugin/pom.xml index 0b3502458a..3036f505f8 100644 --- a/apm-agent-plugins/apm-jmx-plugin/pom.xml +++ b/apm-agent-plugins/apm-jmx-plugin/pom.xml @@ -15,4 +15,13 @@ ${project.basedir}/../.. + + + + ${project.groupId} + apm-agent-core + ${project.version} + + + diff --git a/apm-agent-plugins/apm-logging-plugin/pom.xml b/apm-agent-plugins/apm-logging-plugin/pom.xml index 76d521fd67..4705386262 100644 --- a/apm-agent-plugins/apm-logging-plugin/pom.xml +++ b/apm-agent-plugins/apm-logging-plugin/pom.xml @@ -27,4 +27,13 @@ apm-jul-plugin + + + + ${project.groupId} + apm-agent-core + ${project.version} + + + diff --git a/apm-agent-plugins/apm-micrometer-plugin/pom.xml b/apm-agent-plugins/apm-micrometer-plugin/pom.xml index 0a55f6797c..ac9f3cdd36 100644 --- a/apm-agent-plugins/apm-micrometer-plugin/pom.xml +++ b/apm-agent-plugins/apm-micrometer-plugin/pom.xml @@ -20,6 +20,12 @@ + + + ${project.groupId} + apm-agent-core + ${project.version} + io.micrometer micrometer-core diff --git a/apm-agent-plugins/apm-opentelemetry/pom.xml b/apm-agent-plugins/apm-opentelemetry/pom.xml index 004a9e1bc5..cf5b143aed 100644 --- a/apm-agent-plugins/apm-opentelemetry/pom.xml +++ b/apm-agent-plugins/apm-opentelemetry/pom.xml @@ -34,4 +34,13 @@ apm-opentelemetry-metrics-bridge-parent + + + + ${project.groupId} + apm-agent-core + ${project.version} + + + diff --git a/apm-agent-plugins/apm-opentracing-plugin/pom.xml b/apm-agent-plugins/apm-opentracing-plugin/pom.xml index 80e8245f7b..fea0c0802c 100644 --- a/apm-agent-plugins/apm-opentracing-plugin/pom.xml +++ b/apm-agent-plugins/apm-opentracing-plugin/pom.xml @@ -15,4 +15,13 @@ ${project.basedir}/../.. + + + + ${project.groupId} + apm-agent-core + ${project.version} + + + diff --git a/apm-agent-plugins/apm-profiling-plugin/pom.xml b/apm-agent-plugins/apm-profiling-plugin/pom.xml index fa58688e62..61ca52afdf 100644 --- a/apm-agent-plugins/apm-profiling-plugin/pom.xml +++ b/apm-agent-plugins/apm-profiling-plugin/pom.xml @@ -16,6 +16,12 @@ + + + ${project.groupId} + apm-agent-core + ${project.version} + org.kohsuke github-api diff --git a/apm-agent-plugins/apm-profiling-plugin/src/main/java/co/elastic/apm/agent/profiler/ProfilingConfiguration.java b/apm-agent-plugins/apm-profiling-plugin/src/main/java/co/elastic/apm/agent/profiler/ProfilingConfiguration.java index 5ed9c9e9eb..8bad530dde 100644 --- a/apm-agent-plugins/apm-profiling-plugin/src/main/java/co/elastic/apm/agent/profiler/ProfilingConfiguration.java +++ b/apm-agent-plugins/apm-profiling-plugin/src/main/java/co/elastic/apm/agent/profiler/ProfilingConfiguration.java @@ -29,8 +29,8 @@ import java.util.Arrays; import java.util.List; -import static co.elastic.apm.agent.configuration.validation.RangeValidator.isInRange; -import static co.elastic.apm.agent.configuration.validation.RangeValidator.min; +import static co.elastic.apm.agent.tracer.configuration.RangeValidator.isInRange; +import static co.elastic.apm.agent.tracer.configuration.RangeValidator.min; public class ProfilingConfiguration extends ConfigurationOptionProvider { diff --git a/apm-agent-plugins/apm-quartz/apm-quartz-common/src/main/java/co/elastic/apm/agent/quartzjob/AbstractJobTransactionNameInstrumentation.java b/apm-agent-plugins/apm-quartz/apm-quartz-common/src/main/java/co/elastic/apm/agent/quartzjob/AbstractJobTransactionNameInstrumentation.java index cda510117e..24e6cfb99c 100644 --- a/apm-agent-plugins/apm-quartz/apm-quartz-common/src/main/java/co/elastic/apm/agent/quartzjob/AbstractJobTransactionNameInstrumentation.java +++ b/apm-agent-plugins/apm-quartz/apm-quartz-common/src/main/java/co/elastic/apm/agent/quartzjob/AbstractJobTransactionNameInstrumentation.java @@ -18,7 +18,6 @@ */ package co.elastic.apm.agent.quartzjob; -import co.elastic.apm.agent.impl.stacktrace.StacktraceConfiguration; import co.elastic.apm.agent.sdk.ElasticApmInstrumentation; import co.elastic.apm.agent.sdk.logging.Logger; import co.elastic.apm.agent.sdk.logging.LoggerFactory; @@ -29,6 +28,7 @@ import co.elastic.apm.agent.tracer.Outcome; import co.elastic.apm.agent.tracer.Tracer; import co.elastic.apm.agent.tracer.Transaction; +import co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration; import net.bytebuddy.description.NamedElement; import net.bytebuddy.description.type.TypeDescription; import net.bytebuddy.matcher.ElementMatcher; diff --git a/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/ScheduledTransactionNameInstrumentation.java b/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/ScheduledTransactionNameInstrumentation.java index bc439465cc..c427ee4c22 100644 --- a/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/ScheduledTransactionNameInstrumentation.java +++ b/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/ScheduledTransactionNameInstrumentation.java @@ -19,7 +19,6 @@ package co.elastic.apm.agent.scheduled; import co.elastic.apm.agent.sdk.bytebuddy.SimpleMethodSignatureOffsetMappingFactory.SimpleMethodSignature; -import co.elastic.apm.agent.impl.stacktrace.StacktraceConfiguration; import co.elastic.apm.agent.sdk.ElasticApmInstrumentation; import co.elastic.apm.agent.sdk.logging.Logger; import co.elastic.apm.agent.sdk.logging.LoggerFactory; @@ -29,6 +28,7 @@ import co.elastic.apm.agent.tracer.Outcome; import co.elastic.apm.agent.tracer.Tracer; import co.elastic.apm.agent.tracer.Transaction; +import co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.NamedElement; import net.bytebuddy.description.method.MethodDescription; diff --git a/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/TimerTaskInstrumentation.java b/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/TimerTaskInstrumentation.java index d2a42b92db..a6cb8d63e8 100644 --- a/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/TimerTaskInstrumentation.java +++ b/apm-agent-plugins/apm-scheduled-annotation-plugin/src/main/java/co/elastic/apm/agent/scheduled/TimerTaskInstrumentation.java @@ -19,7 +19,6 @@ package co.elastic.apm.agent.scheduled; import co.elastic.apm.agent.sdk.bytebuddy.SimpleMethodSignatureOffsetMappingFactory; -import co.elastic.apm.agent.impl.stacktrace.StacktraceConfiguration; import co.elastic.apm.agent.sdk.ElasticApmInstrumentation; import co.elastic.apm.agent.sdk.logging.Logger; import co.elastic.apm.agent.sdk.logging.LoggerFactory; @@ -28,6 +27,7 @@ import co.elastic.apm.agent.tracer.GlobalTracer; import co.elastic.apm.agent.tracer.Tracer; import co.elastic.apm.agent.tracer.Transaction; +import co.elastic.apm.agent.tracer.configuration.StacktraceConfiguration; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.NamedElement; import net.bytebuddy.description.method.MethodDescription; diff --git a/apm-agent-plugins/apm-servlet-plugin/pom.xml b/apm-agent-plugins/apm-servlet-plugin/pom.xml index ddc188e435..ae07a50fd5 100644 --- a/apm-agent-plugins/apm-servlet-plugin/pom.xml +++ b/apm-agent-plugins/apm-servlet-plugin/pom.xml @@ -16,6 +16,12 @@ + + + ${project.groupId} + apm-agent-core + ${project.version} + ${project.groupId} apm-java-concurrent-plugin diff --git a/apm-agent-plugins/apm-spring-webflux/pom.xml b/apm-agent-plugins/apm-spring-webflux/pom.xml index 743704129a..522d5779d5 100644 --- a/apm-agent-plugins/apm-spring-webflux/pom.xml +++ b/apm-agent-plugins/apm-spring-webflux/pom.xml @@ -29,6 +29,11 @@ + + ${project.groupId} + apm-agent-core + ${project.version} + diff --git a/apm-agent-plugins/pom.xml b/apm-agent-plugins/pom.xml index 8515377a6a..58c0d5f485 100644 --- a/apm-agent-plugins/pom.xml +++ b/apm-agent-plugins/pom.xml @@ -78,19 +78,13 @@ ${project.groupId} - apm-agent-core + apm-agent-plugin-sdk + ${project.version} + + + ${project.groupId} + apm-agent-tracer ${project.version} - - - - org.apache.logging.log4j - * - - ${project.groupId} diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/RangeValidator.java b/apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/RangeValidator.java similarity index 97% rename from apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/RangeValidator.java rename to apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/RangeValidator.java index 4a9da00feb..764679adea 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/RangeValidator.java +++ b/apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/RangeValidator.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package co.elastic.apm.agent.configuration.validation; +package co.elastic.apm.agent.tracer.configuration; import org.stagemonitor.configuration.ConfigurationOption; diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/RegexValidator.java b/apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/RegexValidator.java similarity index 97% rename from apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/RegexValidator.java rename to apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/RegexValidator.java index 0a9e1bcf24..23e7596547 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/RegexValidator.java +++ b/apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/RegexValidator.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package co.elastic.apm.agent.configuration.validation; +package co.elastic.apm.agent.tracer.configuration; import org.stagemonitor.configuration.ConfigurationOption; diff --git a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/package-info.java b/apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/StacktraceConfiguration.java similarity index 82% rename from apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/package-info.java rename to apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/StacktraceConfiguration.java index 1e97cd13e2..7090a0108c 100644 --- a/apm-agent-core/src/main/java/co/elastic/apm/agent/configuration/validation/package-info.java +++ b/apm-agent-tracer/src/main/java/co/elastic/apm/agent/tracer/configuration/StacktraceConfiguration.java @@ -16,7 +16,10 @@ * specific language governing permissions and limitations * under the License. */ -@NonnullApi -package co.elastic.apm.agent.configuration.validation; +package co.elastic.apm.agent.tracer.configuration; -import co.elastic.apm.agent.sdk.NonnullApi; +import java.util.Collection; + +public interface StacktraceConfiguration { + Collection getApplicationPackages(); +} diff --git a/apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation/RangeValidatorTest.java b/apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration/RangeValidatorTest.java similarity index 96% rename from apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation/RangeValidatorTest.java rename to apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration/RangeValidatorTest.java index e9232b52db..1747c7dd73 100644 --- a/apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation/RangeValidatorTest.java +++ b/apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration/RangeValidatorTest.java @@ -16,8 +16,9 @@ * specific language governing permissions and limitations * under the License. */ -package co.elastic.apm.agent.configuration.validation; +package co.elastic.apm.agent.tracer.configuration; +import co.elastic.apm.agent.tracer.configuration.RangeValidator; import co.elastic.apm.agent.tracer.configuration.TimeDuration; import org.junit.jupiter.api.Test; diff --git a/apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation/RegexValidatorTest.java b/apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration/RegexValidatorTest.java similarity index 93% rename from apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation/RegexValidatorTest.java rename to apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration/RegexValidatorTest.java index faea700220..f3c4fd022d 100644 --- a/apm-agent-core/src/test/java/co/elastic/apm/agent/configuration/validation/RegexValidatorTest.java +++ b/apm-agent-tracer/src/test/java/co/elastic/apm/agent/tracer/configuration/RegexValidatorTest.java @@ -16,8 +16,9 @@ * specific language governing permissions and limitations * under the License. */ -package co.elastic.apm.agent.configuration.validation; +package co.elastic.apm.agent.tracer.configuration; +import co.elastic.apm.agent.tracer.configuration.RegexValidator; import org.assertj.core.api.SoftAssertions; import org.junit.jupiter.api.Test; From 2cfb7fad2a14f59946f5977347e0cb98a6e2f746 Mon Sep 17 00:00:00 2001 From: Rafael Winterhalter Date: Tue, 11 Jul 2023 23:17:05 +0200 Subject: [PATCH 2/5] Add agent core dependency to test scope. --- apm-agent-plugins/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apm-agent-plugins/pom.xml b/apm-agent-plugins/pom.xml index 58c0d5f485..b0855c5004 100644 --- a/apm-agent-plugins/pom.xml +++ b/apm-agent-plugins/pom.xml @@ -86,6 +86,12 @@ apm-agent-tracer ${project.version} + + ${project.groupId} + apm-agent-core + ${project.version} + test + ${project.groupId} apm-agent-core From 2702fdd011c27634a32850ac6534c014112a04f2 Mon Sep 17 00:00:00 2001 From: Rafael Winterhalter Date: Tue, 11 Jul 2023 23:20:39 +0200 Subject: [PATCH 3/5] Add missing core dependency for non-migrated plugin. --- apm-agent-plugins/apm-api-plugin/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apm-agent-plugins/apm-api-plugin/pom.xml b/apm-agent-plugins/apm-api-plugin/pom.xml index b3df939624..e527d729b5 100644 --- a/apm-agent-plugins/apm-api-plugin/pom.xml +++ b/apm-agent-plugins/apm-api-plugin/pom.xml @@ -16,6 +16,12 @@ ${project.groupId}:${project.artifactId} + + + ${project.groupId} + apm-agent-core + ${project.version} + ${project.groupId} apm-agent-api From e336cdcc44ef8f9af8d30578095884ac561d71f8 Mon Sep 17 00:00:00 2001 From: Rafael Winterhalter Date: Tue, 11 Jul 2023 23:30:16 +0200 Subject: [PATCH 4/5] Add missing core dependency for non-migrated plugin. --- .../apm-spring-webmvc/apm-spring-webmvc-spring5/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apm-agent-plugins/apm-spring-webmvc/apm-spring-webmvc-spring5/pom.xml b/apm-agent-plugins/apm-spring-webmvc/apm-spring-webmvc-spring5/pom.xml index 00e9fe80ce..cb347b8af3 100644 --- a/apm-agent-plugins/apm-spring-webmvc/apm-spring-webmvc-spring5/pom.xml +++ b/apm-agent-plugins/apm-spring-webmvc/apm-spring-webmvc-spring5/pom.xml @@ -33,6 +33,12 @@ + + + ${project.groupId} + apm-agent-core + ${project.version} + javax.servlet javax.servlet-api From 52d77dca07224a47da8491937d38beac518450e5 Mon Sep 17 00:00:00 2001 From: Rafael Winterhalter Date: Tue, 11 Jul 2023 23:36:12 +0200 Subject: [PATCH 5/5] Add missing core dependency for non-migrated plugin. --- apm-agent-plugins/apm-ecs-logging-plugin/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apm-agent-plugins/apm-ecs-logging-plugin/pom.xml b/apm-agent-plugins/apm-ecs-logging-plugin/pom.xml index c9944823f4..31d31ca9fe 100644 --- a/apm-agent-plugins/apm-ecs-logging-plugin/pom.xml +++ b/apm-agent-plugins/apm-ecs-logging-plugin/pom.xml @@ -16,6 +16,12 @@ + + + ${project.groupId} + apm-agent-core + ${project.version} +