Skip to content

Commit 8af62c3

Browse files
committed
move properties bridge to separate project
1 parent a0f980d commit 8af62c3

File tree

8 files changed

+39
-7
lines changed

8 files changed

+39
-7
lines changed

.fossa.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ targets:
4040
- type: gradle
4141
path: ./
4242
target: ':sdk-autoconfigure-support'
43+
- type: gradle
44+
path: ./
45+
target: ':sdk-bridge'
4346
- type: gradle
4447
path: ./
4548
target: ':testing-common'

instrumentation/spring/spring-boot-autoconfigure/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,9 @@ dependencies {
6565
library("org.springframework.boot:spring-boot-starter-data-r2dbc:$springBootVersion")
6666

6767
implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure")
68+
implementation("io.opentelemetry:opentelemetry-sdk-extension-incubator")
6869
implementation(project(":sdk-autoconfigure-support"))
70+
implementation(project(":sdk-bridge"))
6971
compileOnly("io.opentelemetry:opentelemetry-extension-trace-propagators")
7072
compileOnly("io.opentelemetry.contrib:opentelemetry-aws-xray-propagator")
7173
compileOnly("io.opentelemetry:opentelemetry-exporter-logging")

instrumentation/spring/spring-boot-autoconfigure/src/main/java/io/opentelemetry/instrumentation/spring/autoconfigure/OpenTelemetryAutoConfiguration.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
import java.util.function.Function;
3030
import java.util.function.Supplier;
3131
import java.util.stream.Collectors;
32+
import io.opentelemetry.sdk.extension.incubator.fileconfig.DeclarativeConfiguration;
33+
import io.opentelemetry.sdk.extension.incubator.fileconfig.internal.model.OpenTelemetryConfigurationModel;
3234
import org.slf4j.Logger;
3335
import org.slf4j.LoggerFactory;
3436
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
@@ -121,6 +123,7 @@ public AutoConfiguredOpenTelemetrySdk autoConfiguredOpenTelemetrySdk(
121123
.build();
122124
}
123125

126+
// todo is not available with declarative config - unless via file property
124127
@Bean
125128
public OpenTelemetry openTelemetry(
126129
AutoConfiguredOpenTelemetrySdk autoConfiguredOpenTelemetrySdk) {
@@ -145,6 +148,13 @@ public ConfigProperties otelProperties(
145148
AutoConfiguredOpenTelemetrySdk autoConfiguredOpenTelemetrySdk) {
146149
return AutoConfigureUtil.getConfig(autoConfiguredOpenTelemetrySdk);
147150
}
151+
152+
@Bean(name = "otelProperties")
153+
public ConfigProperties otelBridgeProperties(OpenTelemetryConfigurationModel model) {
154+
// todo componet loader
155+
// todo bridge properties
156+
return DeclarativeConfiguration.toConfigProperties(model);
157+
}
148158
}
149159

150160
@Configuration

javaagent-extension-api/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ dependencies {
1313

1414
implementation(project(":instrumentation-api"))
1515
implementation(project(":instrumentation-api-incubator"))
16+
implementation(project(":sdk-bridge"))
1617

1718
// autoconfigure is unstable, do not expose as api
1819
implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure")

sdk-bridge/build.gradle.kts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
plugins {
2+
id("otel.java-conventions")
3+
id("otel.publish-conventions")
4+
}
5+
6+
group = "io.opentelemetry.instrumentation"
7+
8+
dependencies {
9+
implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi")
10+
implementation("io.opentelemetry:opentelemetry-api-incubator")
11+
12+
testImplementation("io.opentelemetry:opentelemetry-sdk-extension-incubator")
13+
14+
compileOnly("com.google.code.findbugs:annotations")
15+
testCompileOnly("com.google.code.findbugs:annotations")
16+
}
Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@
33
* SPDX-License-Identifier: Apache-2.0
44
*/
55

6-
package io.opentelemetry.javaagent.extension;
6+
package io.opentelemetry.instrumentation.sdk;
77

8-
import static io.opentelemetry.api.incubator.config.DeclarativeConfigProperties.empty;
98

109
import io.opentelemetry.api.incubator.config.DeclarativeConfigProperties;
1110
import io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties;
@@ -46,15 +45,15 @@
4645
* string_key: value
4746
* </pre>
4847
*/
49-
final class DeclarativeConfigPropertiesBridge implements ConfigProperties {
48+
public final class DeclarativeConfigPropertiesBridge implements ConfigProperties {
5049

5150
private static final String OTEL_INSTRUMENTATION_PREFIX = "otel.instrumentation.";
5251

5352
// The node at .instrumentation.java
5453
private final DeclarativeConfigProperties instrumentationJavaNode;
5554

56-
DeclarativeConfigPropertiesBridge(DeclarativeConfigProperties instrumentationNode) {
57-
instrumentationJavaNode = instrumentationNode.getStructured("java", empty());
55+
public DeclarativeConfigPropertiesBridge(DeclarativeConfigProperties instrumentationNode) {
56+
instrumentationJavaNode = instrumentationNode.getStructured("java", DeclarativeConfigProperties.empty());
5857
}
5958

6059
@Nullable
@@ -142,7 +141,7 @@ private <T> T getPropertyValue(
142141
DeclarativeConfigProperties target = instrumentationJavaNode;
143142
if (segments.length > 1) {
144143
for (int i = 0; i < segments.length - 1; i++) {
145-
target = target.getStructured(segments[i], empty());
144+
target = target.getStructured(segments[i], DeclarativeConfigProperties.empty());
146145
}
147146
}
148147
String lastPart = segments[segments.length - 1];
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* SPDX-License-Identifier: Apache-2.0
44
*/
55

6-
package io.opentelemetry.javaagent.extension;
6+
package io.opentelemetry.instrumentation.sdk;
77

88
import static org.assertj.core.api.Assertions.assertThat;
99

settings.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ include(":javaagent-internal-logging-application")
8686
include(":javaagent-internal-logging-simple")
8787
include(":javaagent")
8888
include(":sdk-autoconfigure-support")
89+
include(":sdk-bridge")
8990

9091
include(":bom")
9192
include(":bom-alpha")

0 commit comments

Comments
 (0)