diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentInstaller.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentInstaller.java index 959ce738e27a..aa189d618f15 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentInstaller.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentInstaller.java @@ -153,9 +153,10 @@ private static void installBytebuddyAgent( AutoConfiguredOpenTelemetrySdk autoConfiguredSdk = installOpenTelemetrySdk(extensionClassLoader); - ConfigProperties sdkConfig = AutoConfigureUtil.getConfig(autoConfiguredSdk); + @Nullable ConfigProperties sdkConfig = AutoConfigureUtil.getConfig(autoConfiguredSdk); + ConfigProperties sdkConfigOrEmpty = getConfigOrEmpty(sdkConfig); - setBootstrapPackages(sdkConfig, extensionClassLoader); + setBootstrapPackages(sdkConfigOrEmpty, extensionClassLoader); ConfiguredResourceAttributesHolder.initialize( SdkAutoconfigureAccess.getResource(autoConfiguredSdk).getAttributes()); @@ -165,7 +166,7 @@ private static void installBytebuddyAgent( } agentBuilder = agentBuilder.with(new ClassLoadListener()); - agentBuilder = configureIgnoredTypes(sdkConfig, extensionClassLoader, agentBuilder); + agentBuilder = configureIgnoredTypes(sdkConfigOrEmpty, extensionClassLoader, agentBuilder); int numberOfLoadedExtensions = 0; for (AgentExtension agentExtension : loadOrdered(AgentExtension.class, extensionClassLoader)) { @@ -176,7 +177,7 @@ private static void installBytebuddyAgent( new Object[] {agentExtension.extensionName(), agentExtension.getClass().getName()}); } try { - agentBuilder = agentExtension.extend(agentBuilder, sdkConfig); + agentBuilder = agentExtension.extend(agentBuilder, sdkConfigOrEmpty); numberOfLoadedExtensions++; } catch (Exception | LinkageError e) { logger.log( @@ -266,6 +267,10 @@ private static void installEarlyInstrumentation( agentBuilder.installOn(instrumentation); } + private static ConfigProperties getConfigOrEmpty(@Nullable ConfigProperties config) { + return config != null ? config : EmptyConfigProperties.INSTANCE; + } + private static void setBootstrapPackages( ConfigProperties config, ClassLoader extensionClassLoader) { BootstrapPackagesBuilderImpl builder = new BootstrapPackagesBuilderImpl(); @@ -287,7 +292,7 @@ private static AgentBuilder configureIgnoredTypes( IgnoredTypesBuilderImpl builder = new IgnoredTypesBuilderImpl(); for (IgnoredTypesConfigurer configurer : loadOrdered(IgnoredTypesConfigurer.class, extensionClassLoader)) { - configurer.configure(builder, config != null ? config : EmptyConfigProperties.INSTANCE); + configurer.configure(builder, config); } Trie ignoredTasksTrie = builder.buildIgnoredTasksTrie();