Skip to content

Commit 2623404

Browse files
committed
After merge followup
1 parent 58c0e59 commit 2623404

File tree

6 files changed

+24
-13
lines changed

6 files changed

+24
-13
lines changed

custom/src/main/java/io/opentelemetry/sdk/autoconfigure/AutoConfigureUtil.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,13 @@
2626
import io.opentelemetry.instrumentation.config.bridge.ConfigPropertiesBackedConfigProvider;
2727
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
2828
import io.opentelemetry.sdk.extension.incubator.fileconfig.YamlDeclarativeConfigProperties;
29+
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.ExperimentalInstrumentationModel;
2930
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.ExperimentalLanguageSpecificInstrumentationModel;
30-
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.InstrumentationModel;
31+
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.ExperimentalLanguageSpecificInstrumentationPropertyModel;
3132
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel;
3233
import io.opentelemetry.sdk.resources.Resource;
34+
import java.util.HashMap;
35+
import java.util.Map;
3336
import java.util.logging.Logger;
3437
import javax.annotation.Nullable;
3538

@@ -85,7 +88,7 @@ public static DeclarativeConfigProperties getDistributionConfig(
8588

8689
public static DeclarativeConfigProperties getDistributionConfig(
8790
OpenTelemetryConfigurationModel model) {
88-
InstrumentationModel instrumentationModel = model.getInstrumentationDevelopment();
91+
ExperimentalInstrumentationModel instrumentationModel = model.getInstrumentationDevelopment();
8992
if (instrumentationModel == null) {
9093
return empty();
9194
}
@@ -97,9 +100,14 @@ public static DeclarativeConfigProperties getDistributionConfig(
97100

98101
ComponentLoader componentLoader =
99102
ComponentLoader.forClassLoader(DeclarativeConfigProperties.class.getClassLoader());
103+
Map<String, ExperimentalLanguageSpecificInstrumentationPropertyModel> original =
104+
javaModel.getAdditionalProperties();
105+
Map<String, Object> properties = new HashMap<>();
106+
ExperimentalLanguageSpecificInstrumentationPropertyModel distribution = original.get(
107+
"distribution");
108+
properties.put("distribution", distribution != null ? distribution.getAdditionalProperties() : null);
100109
DeclarativeConfigProperties config =
101-
YamlDeclarativeConfigProperties.create(
102-
javaModel.getAdditionalProperties(), componentLoader);
110+
YamlDeclarativeConfigProperties.create(properties, componentLoader);
103111

104112
return config.getStructured("distribution", empty()); // Should this empty() be there?
105113
}

profiler/src/main/java/com/splunk/opentelemetry/profiler/ProfilerDeclarativeConfiguration.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ public class ProfilerDeclarativeConfiguration implements ProfilerConfiguration {
2727
private static final Logger logger =
2828
Logger.getLogger(ProfilerDeclarativeConfiguration.class.getName());
2929

30+
private static final String ROOT_NODE_NAME = "always_on";
31+
3032
private static final String DEFAULT_PROFILER_DIRECTORY = System.getProperty("java.io.tmpdir");
3133
private static final long DEFAULT_RECORDING_DURATION = Duration.ofSeconds(20).toMillis();
3234
private static final long DEFAULT_SAMPLING_INTERVAL = Duration.ofSeconds(10).toMillis();
@@ -42,7 +44,7 @@ public ProfilerDeclarativeConfiguration(DeclarativeConfigProperties profilingCon
4244

4345
@Override
4446
public boolean isEnabled() {
45-
return !getConfigRoot().equals(empty());
47+
return (profilingConfig != null) && profilingConfig.getPropertyKeys().contains(ROOT_NODE_NAME);
4648
}
4749

4850
@Override
@@ -151,7 +153,7 @@ public DeclarativeConfigProperties getConfigProperties() {
151153
}
152154

153155
private DeclarativeConfigProperties getConfigRoot() {
154-
return profilingConfig.getStructured("always_on", empty());
156+
return profilingConfig.getStructured(ROOT_NODE_NAME, empty());
155157
}
156158

157159
private DeclarativeConfigProperties getMemoryProfilerConfig() {

profiler/src/test/java/com/splunk/opentelemetry/profiler/LogExporterBuilderTest.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,6 @@
3737
import io.opentelemetry.exporter.otlp.logs.OtlpGrpcLogRecordExporterBuilder;
3838
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
3939
import io.opentelemetry.sdk.autoconfigure.spi.ConfigurationException;
40-
import io.opentelemetry.sdk.extension.incubator.fileconfig.YamlDeclarativeConfigProperties;
41-
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.ExperimentalLanguageSpecificInstrumentationPropertyModel;
4240
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel;
4341
import io.opentelemetry.sdk.logs.export.LogRecordExporter;
4442
import java.util.Map;

profiler/src/test/java/com/splunk/opentelemetry/profiler/ProfilerDeclarativeConfigurationTest.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,6 @@
2222

2323
import com.splunk.opentelemetry.testing.declarativeconfig.DeclarativeConfigTestUtil;
2424
import io.opentelemetry.api.incubator.config.DeclarativeConfigProperties;
25-
import io.opentelemetry.common.ComponentLoader;
26-
import io.opentelemetry.sdk.extension.incubator.fileconfig.YamlDeclarativeConfigProperties;
27-
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.ExperimentalLanguageSpecificInstrumentationPropertyModel;
2825
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel;
2926
import java.time.Duration;
3027
import org.junit.jupiter.api.Test;

profiler/src/test/java/com/splunk/opentelemetry/profiler/snapshot/SnapshotProfilingDeclarativeConfigurationTest.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import io.opentelemetry.api.incubator.config.DeclarativeConfigProperties;
2424
import io.opentelemetry.common.ComponentLoader;
2525
import io.opentelemetry.sdk.extension.incubator.fileconfig.YamlDeclarativeConfigProperties;
26+
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.ExperimentalLanguageSpecificInstrumentationPropertyModel;
2627
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel;
2728
import java.time.Duration;
2829
import java.util.Map;
@@ -174,8 +175,10 @@ void shouldReturnValidSelectionInterval_tooLow() {
174175

175176
private static DeclarativeConfigProperties getProfilingConfig(
176177
OpenTelemetryConfigurationModel model) {
177-
Map<String, Object> properties =
178+
Map<String, ExperimentalLanguageSpecificInstrumentationPropertyModel> original =
178179
model.getInstrumentationDevelopment().getJava().getAdditionalProperties();
180+
Map<String, Object> properties =
181+
Map.of("distribution", original.get("distribution").getAdditionalProperties());
179182
ComponentLoader componentLoader =
180183
ComponentLoader.forClassLoader(DeclarativeConfigProperties.class.getClassLoader());
181184
DeclarativeConfigProperties declarativeConfigProperties =

testing/common/src/main/java/com/splunk/opentelemetry/testing/declarativeconfig/DeclarativeConfigTestUtil.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import io.opentelemetry.sdk.extension.incubator.fileconfig.DeclarativeConfigurationBuilder;
3131
import io.opentelemetry.sdk.extension.incubator.fileconfig.DeclarativeConfigurationCustomizerProvider;
3232
import io.opentelemetry.sdk.extension.incubator.fileconfig.YamlDeclarativeConfigProperties;
33+
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.ExperimentalLanguageSpecificInstrumentationPropertyModel;
3334
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel;
3435
import java.io.ByteArrayInputStream;
3536
import java.io.IOException;
@@ -109,8 +110,10 @@ public static AutoConfiguredOpenTelemetrySdk createAutoConfiguredSdk(String yaml
109110
public static DeclarativeConfigProperties getProfilingConfig(
110111
OpenTelemetryConfigurationModel model) {
111112

112-
Map<String, Object> properties =
113+
Map<String, ExperimentalLanguageSpecificInstrumentationPropertyModel> original =
113114
model.getInstrumentationDevelopment().getJava().getAdditionalProperties();
115+
Map<String, Object> properties =
116+
Map.of("distribution", original.get("distribution").getAdditionalProperties());
114117
ComponentLoader componentLoader =
115118
ComponentLoader.forClassLoader(DeclarativeConfigProperties.class.getClassLoader());
116119
DeclarativeConfigProperties declarativeConfigProperties =

0 commit comments

Comments
 (0)