Skip to content

Commit 0fbc4d4

Browse files
committed
map otel.javaagent.debug
1 parent 7c7b1d5 commit 0fbc4d4

File tree

4 files changed

+18
-5
lines changed

4 files changed

+18
-5
lines changed

javaagent-extension-api/src/main/java/io/opentelemetry/javaagent/extension/DeclarativeConfigPropertiesBridge.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,8 @@ public final class DeclarativeConfigPropertiesBridge implements ConfigProperties
8383
"http.server.response_captured_headers");
8484
}
8585

86+
private final String logLevel;
87+
8688
private static Map<String, String> getPeerServiceMapping(
8789
DeclarativeConfigPropertiesBridge bridge) {
8890
List<DeclarativeConfigProperties> configProperties =
@@ -97,7 +99,8 @@ private static Map<String, String> getPeerServiceMapping(
9799
e -> Objects.requireNonNull(e.getString("service"), "service must not be null")));
98100
}
99101

100-
public DeclarativeConfigPropertiesBridge(ConfigProvider configProvider) {
102+
public DeclarativeConfigPropertiesBridge(ConfigProvider configProvider, String logLevel) {
103+
this.logLevel = logLevel;
101104
DeclarativeConfigProperties inst = configProvider.getInstrumentationConfig();
102105
if (inst == null) {
103106
inst = DeclarativeConfigProperties.empty();
@@ -119,6 +122,10 @@ public String getString(String propertyName) {
119122
@Nullable
120123
@Override
121124
public Boolean getBoolean(String propertyName) {
125+
if ("otel.javaagent.debug".equals(propertyName)) {
126+
return "DEBUG".equals(this.logLevel);
127+
}
128+
122129
return getPropertyValue(propertyName, DeclarativeConfigProperties::getBoolean);
123130
}
124131

javaagent-extension-api/src/test/java/io/opentelemetry/javaagent/extension/DeclarativeConfigPropertiesBridgeTest.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,17 @@ void setup() {
3535
.getClassLoader()
3636
.getResourceAsStream("config.yaml"));
3737
SdkConfigProvider configProvider = SdkConfigProvider.create(model);
38-
bridge = new DeclarativeConfigPropertiesBridge(Objects.requireNonNull(configProvider));
38+
String logLevel = "DEBUG";
39+
bridge =
40+
new DeclarativeConfigPropertiesBridge(Objects.requireNonNull(configProvider), logLevel);
3941

4042
OpenTelemetryConfigurationModel emptyModel =
4143
new OpenTelemetryConfigurationModel()
4244
.withAdditionalProperty("instrumentation/development", new InstrumentationModel());
4345
SdkConfigProvider emptyConfigProvider = SdkConfigProvider.create(emptyModel);
4446
emptyBridge =
45-
new DeclarativeConfigPropertiesBridge(Objects.requireNonNull(emptyConfigProvider));
47+
new DeclarativeConfigPropertiesBridge(
48+
Objects.requireNonNull(emptyConfigProvider), logLevel);
4649
}
4750

4851
@Test
@@ -137,9 +140,11 @@ void common() {
137140

138141
@Test
139142
void agent() {
143+
assertThat(bridge.getBoolean("otel.javaagent.debug")).isTrue();
140144
assertThat(bridge.getBoolean("otel.javaagent.experimental.indy")).isTrue();
141145
assertThat(bridge.getString("otel.javaagent.logging")).isEqualTo("application");
142146
assertThat(bridge.getInt("otel.javaagent.logging.application.logs-buffer-max-records"))
143147
.isEqualTo(1000);
148+
144149
}
145150
}

javaagent-extension-api/src/test/resources/config.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
disabled: true
21
file_format: 0.4
2+
disabled: true
3+
log_level: DEBUG
34
instrumentation/development:
45
general:
56
peer:

javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/config/DeclarativeConfigEarlyInitAgentConfig.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public final class DeclarativeConfigEarlyInitAgentConfig implements EarlyInitAge
3838
DeclarativeConfigEarlyInitAgentConfig(String configurationFile) {
3939
this.configurationModel = loadConfigurationModel(configurationFile);
4040
configProvider = SdkConfigProvider.create(configurationModel);
41-
this.declarativeConfigProperties = new DeclarativeConfigPropertiesBridge(configProvider);
41+
this.declarativeConfigProperties = new DeclarativeConfigPropertiesBridge(configProvider, this.configurationModel.getLogLevel());
4242
}
4343

4444
@Override

0 commit comments

Comments
 (0)