Skip to content

Commit 2542d00

Browse files
committed
fix
1 parent 89adbb1 commit 2542d00

7 files changed

Lines changed: 16 additions & 12 deletions

File tree

javaagent-extension-api/src/main/java/io/opentelemetry/javaagent/extension/ignore/IgnoredTypesConfigurer.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
99
import io.opentelemetry.sdk.autoconfigure.spi.Ordered;
10+
import javax.annotation.Nullable;
1011

1112
/**
1213
* An {@link IgnoredTypesConfigurer} can be used to augment built-in instrumentation restrictions:
@@ -34,5 +35,5 @@ default void configure(IgnoredTypesBuilder builder) {
3435
* @deprecated Use {@link #configure(IgnoredTypesBuilder)} instead.
3536
*/
3637
@Deprecated
37-
default void configure(IgnoredTypesBuilder builder, ConfigProperties config) {}
38+
default void configure(IgnoredTypesBuilder builder, @Nullable ConfigProperties config) {}
3839
}

javaagent-extension-api/src/main/java/io/opentelemetry/javaagent/extension/instrumentation/InstrumentationModule.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.util.List;
2020
import java.util.Set;
2121
import java.util.logging.Logger;
22+
import javax.annotation.Nullable;
2223
import net.bytebuddy.matcher.ElementMatcher;
2324

2425
/**
@@ -107,7 +108,7 @@ public boolean defaultEnabled() {
107108
* @deprecated Use {@link #defaultEnabled()} instead.
108109
*/
109110
@Deprecated // will be removed in 3.0.0
110-
public boolean defaultEnabled(ConfigProperties config) {
111+
public boolean defaultEnabled(@Nullable ConfigProperties config) {
111112
return defaultEnabled();
112113
}
113114

javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentExtension.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
99
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
1010
import io.opentelemetry.sdk.autoconfigure.spi.Ordered;
11+
import javax.annotation.Nullable;
1112
import net.bytebuddy.agent.builder.AgentBuilder;
1213

1314
/**
@@ -26,7 +27,7 @@ public interface AgentExtension extends Ordered {
2627
* @return The customized agent. Note that this method MUST return a non-null {@link AgentBuilder}
2728
* instance that contains all customizations defined in this extension.
2829
*/
29-
AgentBuilder extend(AgentBuilder agentBuilder, ConfigProperties config);
30+
AgentBuilder extend(AgentBuilder agentBuilder, @Nullable ConfigProperties config);
3031

3132
/**
3233
* Returns the name of the extension. It does not have to be unique, but it should be

javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/AgentInstaller.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -161,10 +161,7 @@ private static void installBytebuddyAgent(
161161
AutoConfiguredOpenTelemetrySdk autoConfiguredSdk =
162162
installOpenTelemetrySdk(extensionClassLoader);
163163

164-
ConfigProperties sdkConfig = AutoConfigureUtil.getConfig(autoConfiguredSdk);
165-
if (sdkConfig == null) {
166-
throw new IllegalStateException("SDK config must not be null");
167-
}
164+
@Nullable ConfigProperties sdkConfig = AutoConfigureUtil.getConfig(autoConfiguredSdk);
168165
if (extensionClassLoader == null) {
169166
throw new IllegalStateException("Extension class loader must not be null");
170167
}
@@ -284,7 +281,7 @@ private static void installEarlyInstrumentation(
284281
}
285282

286283
private static void setBootstrapPackages(
287-
ConfigProperties config, ClassLoader extensionClassLoader) {
284+
@Nullable ConfigProperties config, ClassLoader extensionClassLoader) {
288285
BootstrapPackagesBuilderImpl builder = new BootstrapPackagesBuilderImpl();
289286
for (BootstrapPackagesConfigurer configurer :
290287
load(BootstrapPackagesConfigurer.class, extensionClassLoader)) {
@@ -300,7 +297,9 @@ private static void setDefineClassHandler() {
300297
// Need to call deprecated API for backward compatibility with extensions that haven't migrated
301298
@SuppressWarnings("deprecation")
302299
private static AgentBuilder configureIgnoredTypes(
303-
ConfigProperties config, ClassLoader extensionClassLoader, AgentBuilder agentBuilder) {
300+
@Nullable ConfigProperties config,
301+
ClassLoader extensionClassLoader,
302+
AgentBuilder agentBuilder) {
304303
IgnoredTypesBuilderImpl builder = new IgnoredTypesBuilderImpl();
305304
for (IgnoredTypesConfigurer configurer :
306305
loadOrdered(IgnoredTypesConfigurer.class, extensionClassLoader)) {

javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/bootstrap/BootstrapPackagesConfigurer.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
package io.opentelemetry.javaagent.tooling.bootstrap;
77

88
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
9+
import javax.annotation.Nullable;
910

1011
/**
1112
* This SPI can be used to define which packages/classes belong to the bootstrap class loader: all
@@ -24,5 +25,5 @@ public interface BootstrapPackagesConfigurer {
2425
* Configure the passed {@code builder} and define which classes should always be loaded by the
2526
* bootstrap class loader.
2627
*/
27-
void configure(BootstrapPackagesBuilder builder, ConfigProperties config);
28+
void configure(BootstrapPackagesBuilder builder, @Nullable ConfigProperties config);
2829
}

javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/instrumentation/InstrumentationLoader.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import io.opentelemetry.javaagent.tooling.Utils;
1717
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
1818
import java.util.logging.Logger;
19+
import javax.annotation.Nullable;
1920
import net.bytebuddy.agent.builder.AgentBuilder;
2021

2122
@AutoService(AgentExtension.class)
@@ -26,7 +27,7 @@ public class InstrumentationLoader implements AgentExtension {
2627
new InstrumentationModuleInstaller(InstrumentationHolder.getInstrumentation());
2728

2829
@Override
29-
public AgentBuilder extend(AgentBuilder agentBuilder, ConfigProperties config) {
30+
public AgentBuilder extend(AgentBuilder agentBuilder, @Nullable ConfigProperties config) {
3031
int numberOfLoadedModules = 0;
3132
ClassLoader extensionsClassLoader = Utils.getExtensionsClassLoader();
3233
if (extensionsClassLoader == null) {

javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/instrumentation/InstrumentationModuleInstaller.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ public InstrumentationModuleInstaller(@Nullable Instrumentation instrumentation)
7070
AgentBuilder install(
7171
InstrumentationModule instrumentationModule,
7272
AgentBuilder parentAgentBuilder,
73-
ConfigProperties config) {
73+
@Nullable ConfigProperties config) {
7474
if (!isInstrumentationEnabled(
7575
instrumentationModule.instrumentationNames(),
7676
instrumentationModule.defaultEnabled(config))) {

0 commit comments

Comments
 (0)