From fd62009c25dc0df24347503b8d64de1026cb11a1 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Mon, 14 Jul 2025 13:12:45 -0400 Subject: [PATCH 01/47] saving work --- .../api/ParseSupportedConfigurations.java | 52 +++++++++++++++++++ .../resources/supportedConfigurations.json | 14 +++++ .../ParseSupportedConfigurationsTest.groovy | 14 +++++ 3 files changed, 80 insertions(+) create mode 100644 internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java create mode 100644 internal-api/src/main/resources/supportedConfigurations.json create mode 100644 internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy diff --git a/internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java b/internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java new file mode 100644 index 00000000000..250039e4347 --- /dev/null +++ b/internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java @@ -0,0 +1,52 @@ +package datadog.trace.api; + +import datadog.json.JsonMapper; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Scanner; + +public class ParseSupportedConfigurations { + public final Map fileData; + public static Map aliasMapping; + public static final List supportedConfigurations; + public static final Map deprecatedConfigurations; + private static final Logger log = LoggerFactory.getLogger(ParseSupportedConfigurations.class); + + public ParseSupportedConfigurations(String filename) { + String jsonString; + try { + InputStream in = getClass().getClassLoader().getResourceAsStream(filename); + jsonString = new Scanner(in, "UTF-8").useDelimiter("\\A").next(); + fileData = JsonMapper.fromJsonToMap(jsonString); + } catch (IOException e) { + throw new RuntimeException("Failed to read " + filename, e); + } + supportedConfigurations = new ArrayList<>(((Map>) fileData.get("supportedConfigurations")).keySet()); + aliasToConfig(); + deprecatedConfigurations = (Map) fileData.get("deprecated"); + } + + private void aliasToConfig(){ + aliasMapping = new HashMap<>(); + Map> aliases = (Map>) fileData.get("aliases"); + for (String env : aliases.keySet()){ + for (String alias : aliases.get(env)){ + if (aliasMapping.containsKey(alias)){ + log.info("{} is listed as an alias of {} when it already exists as an alias of {}", alias, env, aliasMapping.get(alias)); + } else { + aliasMapping.put(alias, env); + } + } + } + } + + + +} diff --git a/internal-api/src/main/resources/supportedConfigurations.json b/internal-api/src/main/resources/supportedConfigurations.json new file mode 100644 index 00000000000..6f701e48323 --- /dev/null +++ b/internal-api/src/main/resources/supportedConfigurations.json @@ -0,0 +1,14 @@ +{ + "supportedConfigurations": { + "DD_AAS_DOTNET_EXTENSION_VERSION": ["A"], + "DD_ACTION_EXECUTION_ID": ["A"] + }, + "aliases": { + "DD_AGENT_HOST": ["DD_TRACE_AGENT_HOSTNAME"], + "DD_API_KEY": ["DATADOG_API_KEY"] + }, + "deprecations": { + "DD_PROFILING_EXPERIMENTAL_ENDPOINT_COLLECTION_ENABLED": "DD_PROFILING_ENDPOINT_COLLECTION_ENABLED", + "DD_PROFILING_EXPERIMENTAL_CPU_ENABLED": "DD_PROFILING_CPU_ENABLED" + } +} diff --git a/internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy new file mode 100644 index 00000000000..99c86a5c719 --- /dev/null +++ b/internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy @@ -0,0 +1,14 @@ +package datadog.trace.api + +import spock.lang.Specification + +class ParseSupportedConfigurationsTest extends Specification{ + + def "test parsing supportedConfigurations"() { + when: + def parseSupportedConfigs = new ParseSupportedConfigurations("supportedConfigurations.json") + + then: + parseSupportedConfigs.supportedConfigs != null + } +} From a756eb2a40c355caa3171306218afacfac4c401d Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 15 Jul 2025 16:11:07 -0400 Subject: [PATCH 02/47] init: adding System.getenv forbiddenAPI, ConfigHelper, ParseSupportedConfigurations, and DD_ linting logger --- build.gradle | 146 +++ components/environment/build.gradle.kts | 5 + .../datadog/environment/ConfigHelper.java | 76 ++ .../environment/EnvironmentVariables.java | 2 +- .../ParseSupportedConfigurations.java | 59 ++ .../resources/supported-configurations.json | 876 ++++++++++++++++++ .../test-supported-configurations.json | 11 + .../ParseSupportedConfigurationsTest.java | 18 + .../trace/bootstrap/AgentPreCheck.java | 3 +- gradle/forbiddenApiFilters/main.txt | 5 + gradle/logEnvVarUsages.gradle | 74 ++ .../api/ParseSupportedConfigurations.java | 52 -- .../java/datadog/trace/api/ProcessTags.java | 3 +- .../java/datadog/trace/util/PidHelper.java | 8 +- .../trace/util/TempLocationManager.java | 3 +- .../resources/supportedConfigurations.json | 14 - .../ParseSupportedConfigurationsTest.groovy | 14 - .../datadog/telemetry/TelemetryRequest.java | 7 +- utils/container-utils/build.gradle.kts | 1 + .../common/container/ServerlessInfo.java | 3 +- 20 files changed, 1290 insertions(+), 90 deletions(-) create mode 100644 build.gradle create mode 100644 components/environment/src/main/java/datadog/environment/ConfigHelper.java create mode 100644 components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java create mode 100644 components/environment/src/main/resources/supported-configurations.json create mode 100644 components/environment/src/main/resources/test-supported-configurations.json create mode 100644 components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java create mode 100644 gradle/logEnvVarUsages.gradle delete mode 100644 internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java delete mode 100644 internal-api/src/main/resources/supportedConfigurations.json delete mode 100644 internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy diff --git a/build.gradle b/build.gradle new file mode 100644 index 00000000000..976a929ad8e --- /dev/null +++ b/build.gradle @@ -0,0 +1,146 @@ +buildscript { + dependencies { + classpath "pl.allegro.tech.build:axion-release-plugin:1.14.4" + } + + configurations.all { + resolutionStrategy.dependencySubstitution { + substitute module("com.jcraft:jsch") using module("com.github.mwiede:jsch:0.2.17") because "jcraft is unmaintained" + substitute module("com.jcraft:jsch.agentproxy") using module("com.github.mwiede:jsch:0.2.17") because "jcraft is unmaintained" + substitute module("com.jcraft:jzlib") using module("com.github.mwiede:jsch:0.2.17") because "jcraft is unmaintained" + } + } +} + +plugins { + id 'datadog.gradle-debug' + id 'datadog.dependency-locking' + + id 'com.diffplug.spotless' version '6.13.0' + id 'com.github.spotbugs' version '5.0.14' + id 'de.thetaphi.forbiddenapis' version '3.8' + + id 'pl.allegro.tech.build.axion-release' version '1.14.4' + id 'io.github.gradle-nexus.publish-plugin' version '2.0.0' + + id 'com.gradleup.shadow' version '8.3.6' apply false + id 'me.champeau.jmh' version '0.7.0' apply false + id 'org.gradle.playframework' version '0.13' apply false + id 'info.solidsoft.pitest' version '1.9.11' apply false +} + +description = 'dd-trace-java' + +def isCI = System.getenv("CI") != null + +apply from: "$rootDir/gradle/repositories.gradle" +apply from: "$rootDir/gradle/scm.gradle" + +spotless { + // only resolve the spotless dependencies once in the build + predeclareDeps() +} + +spotlessPredeclare { + // these need to align with the types and versions in gradle/spotless.gradle + java { + removeUnusedImports() + + // This is the last Google Java Format version that supports Java 8 + googleJavaFormat('1.7') + } + groovyGradle { + greclipse() + } + groovy { + greclipse() + } + kotlinGradle { + ktlint('0.41.0') + } + kotlin { + ktlint('0.41.0') + } + scala { + scalafmt('2.7.5') + } +} +apply from: "$rootDir/gradle/spotless.gradle" +apply from: "$rootDir/gradle/logEnvVarUsages.gradle" + +def compileTask = tasks.register("compile") + +allprojects { + group = 'com.datadoghq' + version = scmVersion.version + + if (isCI) { + buildDir = "$rootDir/workspace/${projectDir.path.replace(rootDir.path, '')}/build/" + } + + apply from: "$rootDir/gradle/dependencies.gradle" + apply from: "$rootDir/gradle/util.gradle" + + compileTask.configure { + dependsOn tasks.withType(AbstractCompile) + } +} + +tasks.register("latestDepTest") + +nexusPublishing { + repositories { + def forceLocal = project.hasProperty('forceLocal') && forceLocal + if (forceLocal && !isCI) { + local { + // For testing, use with https://hub.docker.com/r/sonatype/nexus + // docker run --rm -d -p 8081:8081 --name nexus sonatype/nexus:oss + // ./gradlew publishToLocal + // Doesn't work for testing releases though... (due to staging) + nexusUrl = uri("http://localhost:8081/nexus/content/repositories/releases/") + snapshotRepositoryUrl = uri("http://localhost:8081/nexus/content/repositories/snapshots/") + username = "admin" + password = "admin123" + allowInsecureProtocol = true + } + } else { + // see https://github.com/gradle-nexus/publish-plugin#publishing-to-maven-central-via-sonatype-central + // For official documentation: + // staging repo publishing https://central.sonatype.org/publish/publish-portal-ossrh-staging-api/#configuration + // snapshot publishing https://central.sonatype.org/publish/publish-portal-snapshots/#publishing-via-other-methods + sonatype { + nexusUrl.set(uri("https://ossrh-staging-api.central.sonatype.com/service/local/")) + snapshotRepositoryUrl.set(uri("https://central.sonatype.com/repository/maven-snapshots/")) + username = System.getenv("MAVEN_CENTRAL_USERNAME") + password = System.getenv("MAVEN_CENTRAL_PASSWORD") + } + } + } +} + +def writeMainVersionFileTask = tasks.register('writeMainVersionFile') { + def versionFile = file("${rootProject.buildDir}/main.version") + inputs.property "version", scmVersion.version + outputs.file versionFile + + doFirst { + assert versionFile.parentFile.mkdirs() || versionFile.parentFile.directory + versionFile.text = "${inputs.properties.version}" + } +} + +allprojects { + tasks.withType(JavaForkOptions).configureEach { + maxHeapSize = System.properties["datadog.forkedMaxHeapSize"] + minHeapSize = System.properties["datadog.forkedMinHeapSize"] + jvmArgs "-XX:ErrorFile=/tmp/hs_err_pid%p.log" + jvmArgs "-XX:+HeapDumpOnOutOfMemoryError" + jvmArgs "-XX:HeapDumpPath=/tmp" + } + + tasks.withType(PublishToMavenLocal).configureEach { + it.finalizedBy(writeMainVersionFileTask) + } +} + +apply from: "$rootDir/gradle/ci_jobs.gradle" diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index c8c280e6b26..375a1d8e83a 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -3,6 +3,11 @@ plugins { id("com.gradleup.shadow") } +dependencies { + implementation(project(":components:json")) + implementation("org.slf4j:slf4j-api:1.7.36") +} + apply(from = "$rootDir/gradle/java.gradle") /* diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java new file mode 100644 index 00000000000..06c001572d1 --- /dev/null +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -0,0 +1,76 @@ +package datadog.environment; + +import de.thetaphi.forbiddenapis.SuppressForbidden; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +@SuppressForbidden +public class ConfigHelper { + // Parse the supported-configurations JSON once using ParseSupportedConfigurations. + + public static Map getEnvironmentVariables() { + // TODO: Remove once JSON parsing is separate from data access + ParseSupportedConfigurations.loadSupportedConfigurations("supported-configurations.json"); + + Map env = System.getenv(); + Map configs = new LinkedHashMap<>(); + for (Map.Entry entry : env.entrySet()) { + String key = entry.getKey(); + String value = entry.getValue(); + if (key.startsWith("DD_") + || key.startsWith("OTEL_") + || ParseSupportedConfigurations.aliasMapping.containsKey(key)) { + if (ParseSupportedConfigurations.supportedConfigurations.contains(key)) { + configs.put(key, value); + // If this environment variable is the alias of another, and we haven't processed the + // original environment variable yet, handle it here. + } else if (ParseSupportedConfigurations.aliasMapping.containsKey(key) + && !configs.containsKey(ParseSupportedConfigurations.aliasMapping.get(key))) { + List aliasList = + ParseSupportedConfigurations.aliases.get( + ParseSupportedConfigurations.aliasMapping.get(key)); + for (String alias : aliasList) { + if (env.containsKey(alias)) { + configs.put(ParseSupportedConfigurations.aliasMapping.get(key), env.get(alias)); + break; + } + } + } + // if (deprecatedConfigurations.containsKey(key)) { + // String warning = "Environment variable " + key + " is deprecated. " + + // (aliasMapping.containsKey(key) + // ? "Please use " + aliasMapping.get(key) + " instead." + // : deprecatedConfigurations.get(key)); + // System.err.println(warning); // TODO: REPLACE with log call + // } + } else { + configs.put(key, value); + } + } + return configs; + } + + public static String getEnvironmentVariable(String name) { + // TODO: Remove once JSON parsing is separate from data access + ParseSupportedConfigurations.loadSupportedConfigurations("supported-configurations.json"); + + if ((name.startsWith("DD_") + || name.startsWith("OTEL_") + || ParseSupportedConfigurations.aliasMapping.containsKey(name)) + && !ParseSupportedConfigurations.supportedConfigurations.contains(name)) { + throw new IllegalArgumentException( + "Missing " + name + " env/configuration in supported-configurations.json file."); + } + String config = System.getenv(name); + if (config == null && ParseSupportedConfigurations.aliases.containsKey(name)) { + for (String alias : ParseSupportedConfigurations.aliases.get(name)) { + String aliasValue = System.getenv(alias); + if (aliasValue != null) { + return aliasValue; + } + } + } + return config; + } +} diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index b99900e0d85..d7921ffa701 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -36,7 +36,7 @@ public static String getOrDefault(String name, String defaultValue) { return defaultValue; } try { - String value = System.getenv(name); + String value = ConfigHelper.getEnvironmentVariable(name); return value == null ? defaultValue : value; } catch (SecurityException e) { return defaultValue; diff --git a/components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java b/components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java new file mode 100644 index 00000000000..35650890779 --- /dev/null +++ b/components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java @@ -0,0 +1,59 @@ +package datadog.environment; + +import datadog.json.JsonMapper; +import java.io.IOException; +import java.io.InputStream; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Scanner; +import java.util.Set; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +// TODO: Make this class run at buildtime and generate a static class with the data +public class ParseSupportedConfigurations { + public static Map fileData; + public static Map aliasMapping; + public static Set supportedConfigurations; + public static Map deprecatedConfigurations; + public static Map> aliases; + private static final Logger log = LoggerFactory.getLogger(ParseSupportedConfigurations.class); + + public static void loadSupportedConfigurations(String filename) { + String jsonString; + try { + InputStream in = + ParseSupportedConfigurations.class.getClassLoader().getResourceAsStream(filename); + jsonString = new Scanner(in, "UTF-8").useDelimiter("\\A").next(); + fileData = JsonMapper.fromJsonToMap(jsonString); + supportedConfigurations = + new HashSet<>( + ((Map>) fileData.get("supportedConfigurations")).keySet()); + aliasToConfig(); + deprecatedConfigurations = (Map) fileData.get("deprecated"); + aliases = (Map>) fileData.get("aliases"); + } catch (IOException e) { + throw new RuntimeException("Failed to read " + filename, e); + } + } + + private static void aliasToConfig() { + aliasMapping = new HashMap<>(); + Map> aliases = (Map>) fileData.get("aliases"); + for (String env : aliases.keySet()) { + for (String alias : aliases.get(env)) { + if (aliasMapping.containsKey(alias)) { + log.info( + "{} is listed as an alias of {} when it already exists as an alias of {}", + alias, + env, + aliasMapping.get(alias)); + } else { + aliasMapping.put(alias, env); + } + } + } + } +} diff --git a/components/environment/src/main/resources/supported-configurations.json b/components/environment/src/main/resources/supported-configurations.json new file mode 100644 index 00000000000..3490fa59061 --- /dev/null +++ b/components/environment/src/main/resources/supported-configurations.json @@ -0,0 +1,876 @@ +{ + "supportedConfigurations": { + "DD_AAS_JAVA_EXTENSION_VERSION": ["A"], + "DD_ACTION_EXECUTION_ID": ["A"], + "DD_ADD_SPAN_POINTERS": ["A"], + "DD_AGENTLESS_LOG_SUBMISSION_ENABLED": ["A"], + "DD_AGENTLESS_LOG_SUBMISSION_LEVEL": ["A"], + "DD_AGENTLESS_LOG_SUBMISSION_QUEUE_SIZE": ["A"], + "DD_AGENTLESS_LOG_SUBMISSION_URL": ["A"], + "DD_AGENT_HOST": ["A"], + "DD_AGENT_PORT": ["A"], + "DD_API_KEY": ["A"], + "DD_API_KEY_FILE": ["A"], + "DD_API_SECURITY_ENABLED": ["A"], + "DD_API_SECURITY_ENDPOINT_COLLECTION_ENABLED": ["A"], + "DD_API_SECURITY_ENDPOINT_COLLECTION_MESSAGE_LIMIT": ["A"], + "DD_API_SECURITY_SAMPLE_DELAY": ["A"], + "DD_APM_TRACING_ENABLED": ["A"], + "DD_APPLICATION_KEY": ["A"], + "DD_APPLICATION_KEY_FILE": ["A"], + "DD_APPSEC_AUTOMATED_USER_EVENTS_TRACKING": ["A"], + "DD_APPSEC_AUTO_USER_INSTRUMENTATION_MODE": ["A"], + "DD_APPSEC_COLLECT_ALL_HEADERS": ["A"], + "DD_APPSEC_ENABLED": ["A"], + "DD_APPSEC_HEADER_COLLECTION_REDACTION_ENABLED": ["A"], + "DD_APPSEC_HTTP_BLOCKED_TEMPLATE_HTML": ["A"], + "DD_APPSEC_HTTP_BLOCKED_TEMPLATE_JSON": ["A"], + "DD_APPSEC_IPHEADER": ["A"], + "DD_APPSEC_MAX_COLLECTED_HEADERS": ["A"], + "DD_APPSEC_MAX_STACKTRACES": ["A"], + "DD_APPSEC_MAX_STACKTRACE_DEPTH": ["A"], + "DD_APPSEC_MAX_STACK_TRACES": ["A"], + "DD_APPSEC_MAX_STACK_TRACE_DEPTH": ["A"], + "DD_APPSEC_OBFUSCATION_PARAMETER_KEY_REGEXP": ["A"], + "DD_APPSEC_OBFUSCATION_PARAMETER_VALUE_REGEXP": ["A"], + "DD_APPSEC_RASP_COLLECT_REQUEST_BODY": ["A"], + "DD_APPSEC_RASP_ENABLED": ["A"], + "DD_APPSEC_REPORTING_INBAND": ["A"], + "DD_APPSEC_REPORT_TIMEOUT": ["A"], + "DD_APPSEC_RULES": ["A"], + "DD_APPSEC_SCA_ENABLED": ["A"], + "DD_APPSEC_STACKTRACE_ENABLED": ["A"], + "DD_APPSEC_STACK_TRACE_ENABLED": ["A"], + "DD_APPSEC_TRACE_RATE_LIMIT": ["A"], + "DD_APPSEC_WAF_METRICS": ["A"], + "DD_APPSEC_WAF_TIMEOUT": ["A"], + "DD_AZURE_APP_SERVICES": ["A"], + "DD_CIVISIBILITY_ADDITIONAL_CHILD_PROCESS_JVM_ARGS": ["A"], + "DD_CIVISIBILITY_AGENTLESS_ENABLED": ["A"], + "DD_CIVISIBILITY_AGENTLESS_URL": ["A"], + "DD_CIVISIBILITY_AGENT_JAR_URI": ["A"], + "DD_CIVISIBILITY_AUTO_CONFIGURATION_ENABLED": ["A"], + "DD_CIVISIBILITY_AUTO_INSTRUMENTATION_PROVIDER": ["A"], + "DD_CIVISIBILITY_BACKEND_API_TIMEOUT_MILLIS": ["A"], + "DD_CIVISIBILITY_BUILD_INSTRUMENTATION_ENABLED": ["A"], + "DD_CIVISIBILITY_CIPROVIDER_INTEGRATION_ENABLED": ["A"], + "DD_CIVISIBILITY_CODE_COVERAGE_ENABLED": ["A"], + "DD_CIVISIBILITY_CODE_COVERAGE_EXCLUDES": ["A"], + "DD_CIVISIBILITY_CODE_COVERAGE_INCLUDES": ["A"], + "DD_CIVISIBILITY_CODE_COVERAGE_LINES_ENABLED": ["A"], + "DD_CIVISIBILITY_CODE_COVERAGE_REPORT_DUMP_DIR": ["A"], + "DD_CIVISIBILITY_CODE_COVERAGE_ROOT_PACKAGES_LIMIT": ["A"], + "DD_CIVISIBILITY_COMPILER_PLUGIN_AUTO_CONFIGURATION_ENABLED": ["A"], + "DD_CIVISIBILITY_COMPILER_PLUGIN_VERSION": ["A"], + "DD_CIVISIBILITY_DEBUG_PORT": ["A"], + "DD_CIVISIBILITY_EARLY_FLAKE_DETECTION_ENABLED": ["A"], + "DD_CIVISIBILITY_EARLY_FLAKE_DETECTION_LOWER_LIMIT": ["A"], + "DD_CIVISIBILITY_ENABLED": ["A"], + "DD_CIVISIBILITY_EXECUTION_SETTINGS_CACHE_SIZE": ["A"], + "DD_CIVISIBILITY_FLAKY_RETRY_COUNT": ["A"], + "DD_CIVISIBILITY_FLAKY_RETRY_ENABLED": ["A"], + "DD_CIVISIBILITY_FLAKY_RETRY_ONLY_KNOWN_FLAKES": ["A"], + "DD_CIVISIBILITY_GIT_CLIENT_ENABLED": ["A"], + "DD_CIVISIBILITY_GIT_COMMAND_TIMEOUT_MILLIS": ["A"], + "DD_CIVISIBILITY_GIT_REMOTE_NAME": ["A"], + "DD_CIVISIBILITY_GIT_UNSHALLOW_DEFER": ["A"], + "DD_CIVISIBILITY_GIT_UNSHALLOW_ENABLED": ["A"], + "DD_CIVISIBILITY_GIT_UPLOAD_ENABLED": ["A"], + "DD_CIVISIBILITY_GIT_UPLOAD_TIMEOUT_MILLIS": ["A"], + "DD_CIVISIBILITY_GRADLE_SOURCESETS": ["A"], + "DD_CIVISIBILITY_IMPACTED_TESTS_DETECTION_ENABLED": ["A"], + "DD_CIVISIBILITY_INJECTED_TRACER_VERSION": ["A"], + "DD_CIVISIBILITY_ITR_ENABLED": ["A"], + "DD_CIVISIBILITY_JACOCO_PLUGIN_VERSION": ["A"], + "DD_CIVISIBILITY_JVM_INFO_CACHE_SIZE": ["A"], + "DD_CIVISIBILITY_KNOWN_TESTS_REQUEST_ENABLED": ["A"], + "DD_CIVISIBILITY_MODULE_NAME": ["A"], + "DD_CIVISIBILITY_REMOTE_ENV_VARS_PROVIDER_KEY": ["A"], + "DD_CIVISIBILITY_REMOTE_ENV_VARS_PROVIDER_URL": ["A"], + "DD_CIVISIBILITY_REPO_INDEX_DUPLICATE_KEY_CHECK_ENABLED": ["A"], + "DD_CIVISIBILITY_RESOURCE_FOLDER_NAMES": ["A"], + "DD_CIVISIBILITY_RUM_FLUSH_WAIT_MILLIS": ["A"], + "DD_CIVISIBILITY_SCALATEST_FORK_MONITOR_ENABLED": ["A"], + "DD_CIVISIBILITY_SIGNAL_CLIENT_TIMEOUT_MILLIS": ["A"], + "DD_CIVISIBILITY_SIGNAL_SERVER_HOST": ["A"], + "DD_CIVISIBILITY_SIGNAL_SERVER_PORT": ["A"], + "DD_CIVISIBILITY_SOURCE_DATA_ENABLED": ["A"], + "DD_CIVISIBILITY_TELEMETRY_ENABLED": ["A"], + "DD_CIVISIBILITY_TEST_COMMAND": ["A"], + "DD_CIVISIBILITY_TEST_ORDER": ["A"], + "DD_CIVISIBILITY_TEST_SKIPPING_ENABLED": ["A"], + "DD_CIVISIBILITY_TOTAL_FLAKY_RETRY_COUNT": ["A"], + "DD_CIVISIBILITY_TRACE_SANITATION_ENABLED": ["A"], + "DD_CODE_ORIGIN_FOR_SPANS_ENABLED": ["A"], + "DD_CODE_ORIGIN_MAX_USER_FRAMES": ["A"], + "DD_CRASHTRACKING_AGENTLESS": ["A"], + "DD_CRASHTRACKING_PROXY_HOST": ["A"], + "DD_CRASHTRACKING_PROXY_PASSWORD": ["A"], + "DD_CRASHTRACKING_PROXY_PORT": ["A"], + "DD_CRASHTRACKING_PROXY_USERNAME": ["A"], + "DD_CRASHTRACKING_TAGS": ["A"], + "DD_CRASHTRACKING_UPLOAD_TIMEOUT": ["A"], + "DD_CUSTOM_TRACE_ID": ["A"], + "DD_CWS_ENABLED": ["A"], + "DD_CWS_TLS_REFRESH": ["A"], + "DD_DATA_JOBS_COMMAND_PATTERN": ["A"], + "DD_DATA_JOBS_ENABLED": ["A"], + "DD_DATA_JOBS_OPENLINEAGE_ENABLED": ["A"], + "DD_DATA_STREAMS_BUCKET_DURATION_SECONDS": ["A"], + "DD_DATA_STREAMS_ENABLED": ["A"], + "DD_DBM_PROPAGATION_MODE": ["A"], + "DD_DBM_TRACE_PREPARED_STATEMENTS": ["A"], + "DD_DISTRIBUTED_DEBUGGER_ENABLED": ["A"], + "DD_DOGSTATSD_ARGS": ["A"], + "DD_DOGSTATSD_HOST": ["A"], + "DD_DOGSTATSD_PATH": ["A"], + "DD_DOGSTATSD_PIPE_NAME": ["A"], + "DD_DOGSTATSD_PORT": ["A"], + "DD_DOGSTATSD_START_DELAY": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_CAPTURE_TIMEOUT": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_CLASSFILE_DUMP_ENABLED": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_DIAGNOSTICS_INTERVAL": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_ENABLED": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_EXCLUDE_FILES": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_INCLUDE_FILES": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_INSTRUMENT_THE_WORLD": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_LOCALVAR_HOISTING_LEVEL": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_MAX_PAYLOAD_SIZE": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_METRICS_ENABLED": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_POLL_INTERVAL": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_PROBE_FILE": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_REDACTED_IDENTIFIERS": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_REDACTED_TYPES": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_REDACTION_EXCLUDED_IDENTIFIERS": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_SNAPSHOT_URL": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_SOURCE_FILE_TRACKING_ENABLED": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_UPLOAD_BATCH_SIZE": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_UPLOAD_FLUSH_INTERVAL": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_UPLOAD_INTERVAL_SECONDS": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_UPLOAD_TIMEOUT": ["A"], + "DD_DYNAMIC_INSTRUMENTATION_VERIFY_BYTECODE": ["A"], + "DD_ENV": ["A"], + "DD_EXCEPTION_DEBUGGING_ENABLED": ["A"], + "DD_EXCEPTION_REPLAY_CAPTURE_INTERMEDIATE_SPANS_ENABLED": ["A"], + "DD_EXCEPTION_REPLAY_CAPTURE_INTERVAL_SECONDS": ["A"], + "DD_EXCEPTION_REPLAY_CAPTURE_MAX_FRAMES": ["A"], + "DD_EXCEPTION_REPLAY_ENABLED": ["A"], + "DD_EXCEPTION_REPLAY_MAX_EXCEPTION_ANALYSIS_LIMIT": ["A"], + "DD_EXCEPTION_REPLAY_MAX_FRAMES_TO_CAPTURE": ["A"], + "DD_EXPERIMENTAL_API_SECURITY_ENABLED": ["A"], + "DD_EXPERIMENTAL_DEFER_INTEGRATIONS_UNTIL": ["A"], + "DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED": ["A"], + "DD_GIT_COMMIT_HEAD_SHA": ["A"], + "DD_GIT_PULL_REQUEST_BASE_BRANCH": ["A"], + "DD_GIT_PULL_REQUEST_BASE_BRANCH_SHA": ["A"], + "DD_GRPC_CLIENT_ERROR_STATUSES": ["A"], + "DD_GRPC_SERVER_ERROR_STATUSES": ["A"], + "DD_HTTP_CLIENT_ERROR_STATUSES": ["A"], + "DD_HTTP_CLIENT_TAG_HEADERS": ["A"], + "DD_HTTP_CLIENT_TAG_QUERY_STRING": ["A"], + "DD_HTTP_SERVER_DECODED_RESOURCE_PRESERVE_SPACES": ["A"], + "DD_HTTP_SERVER_ERROR_STATUSES": ["A"], + "DD_HTTP_SERVER_RAW_QUERY_STRING": ["A"], + "DD_HTTP_SERVER_RAW_RESOURCE": ["A"], + "DD_HTTP_SERVER_ROUTE_BASED_NAMING": ["A"], + "DD_HTTP_SERVER_TAG_QUERY_STRING": ["A"], + "DD_HYSTRIX_MEASURED_ENABLED": ["A"], + "DD_HYSTRIX_TAGS_ENABLED": ["A"], + "DD_IAST_ANONYMOUS_CLASSES_ENABLED": ["A"], + "DD_IAST_CONTEXT_MODE": ["A"], + "DD_IAST_DB_ROWS_TO_TAINT": ["A"], + "DD_IAST_DEBUG_ENABLED": ["A"], + "DD_IAST_DEDUPLICATION_ENABLED": ["A"], + "DD_IAST_DETECTION_MODE": ["A"], + "DD_IAST_ENABLED": ["A"], + "DD_IAST_EXPERIMENTAL_PROPAGATION_ENABLED": ["A"], + "DD_IAST_HARDCODED_SECRET_ENABLED": ["A"], + "DD_IAST_MAX_CONCURRENT_REQUESTS": ["A"], + "DD_IAST_MAX_RANGE_COUNT": ["A"], + "DD_IAST_REDACTION_ENABLED": ["A"], + "DD_IAST_REDACTION_NAME_PATTERN": ["A"], + "DD_IAST_REDACTION_VALUE_PATTERN": ["A"], + "DD_IAST_REQUEST_SAMPLING": ["A"], + "DD_IAST_SECURITY_CONTROLS_CONFIGURATION": ["A"], + "DD_IAST_SOURCE_MAPPING_ENABLED": ["A"], + "DD_IAST_SOURCE_MAPPING_MAX_SIZE": ["A"], + "DD_IAST_STACKTRACE_ENABLED": ["A"], + "DD_IAST_STACKTRACE_LEAK_SUPPRESS": ["A"], + "DD_IAST_STACK_TRACE_ENABLED": ["A"], + "DD_IAST_STACK_TRACE_LEAK_SUPPRESS": ["A"], + "DD_IAST_TELEMETRY_VERBOSITY": ["A"], + "DD_IAST_TRUNCATION_MAX_VALUE_LENGTH": ["A"], + "DD_IAST_VULNERABILITIES_PER_REQUEST": ["A"], + "DD_IAST_WEAK_CIPHER_ALGORITHMS": ["A"], + "DD_IAST_WEAK_HASH_ALGORITHMS": ["A"], + "DD_ID_GENERATION_STRATEGY": ["A"], + "DD_IGNITE_CACHE_INCLUDE_KEYS": ["A"], + "DD_INJECTION_ENABLED": ["A"], + "DD_INJECT_FORCE": ["A"], + "DD_INSTRUMENTATION_CONFIG_ID": ["A"], + "DD_INSTRUMENTATION_INSTALL_ID": ["A"], + "DD_INSTRUMENTATION_INSTALL_TIME": ["A"], + "DD_INSTRUMENTATION_INSTALL_TYPE": ["A"], + "DD_INSTRUMENTATION_SOURCE": ["A"], + "DD_INSTRUMENTATION_TELEMETRY_ENABLED": ["A"], + "DD_INTEGRATIONS_ENABLED": ["A"], + "DD_INTEGRATION_SYNAPSE_LEGACY_OPERATION_NAME": ["A"], + "DD_INTERNAL_EXCEPTION_REPLAY_ONLY_LOCAL_ROOT": ["A"], + "DD_INTERNAL_FORCE_SYMBOL_DATABASE_UPLOAD": ["A"], + "DD_JDK_SOCKET_ENABLED": ["A"], + "DD_JMS_PROPAGATION_DISABLED_QUEUES": ["A"], + "DD_JMS_PROPAGATION_DISABLED_TOPICS": ["A"], + "DD_JMS_UNACKNOWLEDGED_MAX_AGE": ["A"], + "DD_JMXFETCH_CHECK_PERIOD": ["A"], + "DD_JMXFETCH_CONFIG": ["A"], + "DD_JMXFETCH_CONFIG_DIR": ["A"], + "DD_JMXFETCH_ENABLED": ["A"], + "DD_JMXFETCH_INITIAL_REFRESH_BEANS_PERIOD": ["A"], + "DD_JMXFETCH_METRICS_CONFIGS": ["A"], + "DD_JMXFETCH_MULTIPLE_RUNTIME_SERVICES_ENABLED": ["A"], + "DD_JMXFETCH_MULTIPLE_RUNTIME_SERVICES_LIMIT": ["A"], + "DD_JMXFETCH_REFRESH_BEANS_PERIOD": ["A"], + "DD_JMXFETCH_START_DELAY": ["A"], + "DD_JMXFETCH_STATSD_HOST": ["A"], + "DD_JMXFETCH_STATSD_PORT": ["A"], + "DD_KAFKA_CLIENT_BASE64_DECODING_ENABLED": ["A"], + "DD_KAFKA_CLIENT_PROPAGATION_DISABLED_TOPICS": ["A"], + "DD_LLMOBS_AGENTLESS_ENABLED": ["A"], + "DD_LLMOBS_ENABLED": ["A"], + "DD_LLMOBS_ML_APP": ["A"], + "DD_LOGS_INJECTION": ["A"], + "DD_LOGS_INJECTION_ENABLED": ["A"], + "DD_LOG_FILE": ["A"], + "DD_LOG_LEVEL": ["A"], + "DD_MEASURE_METHODS": ["A"], + "DD_MESSAGE_BROKER_SPLIT_BY_DESTINATION": ["A"], + "DD_PIPELINE_EXECUTION_ID": ["A"], + "DD_PRIMARY_TAG": ["A"], + "DD_PRIORITIZATION_TYPE": ["A"], + "DD_PRIORITY_SAMPLING": ["A"], + "DD_PRIORITY_SAMPLING_FORCE": ["A"], + "DD_PROFILING_AGENTLESS": ["A"], + "DD_PROFILING_ALLOCATION_ENABLED": ["A"], + "DD_PROFILING_APIKEY": ["A"], + "DD_PROFILING_APIKEY_FILE": ["A"], + "DD_PROFILING_API_KEY": ["A"], + "DD_PROFILING_API_KEY_FILE": ["A"], + "DD_PROFILING_AUXILIARY": ["A"], + "DD_PROFILING_BACKPRESSURE_SAMPLE_LIMIT": ["A"], + "DD_PROFILING_BACKPRESSURE_SAMPLING_ENABLED": ["A"], + "DD_PROFILING_CONTEXT_ATTRIBUTES": ["A"], + "DD_PROFILING_CONTEXT_ATTRIBUTES_RESOURCE_NAME_ENABLED": ["A"], + "DD_PROFILING_CONTEXT_ATTRIBUTES_SPAN_NAME_ENABLED": ["A"], + "DD_PROFILING_DDPROF_ALLOC_ENABLED": ["A"], + "DD_PROFILING_DDPROF_ALLOC_INTERVAL": ["A"], + "DD_PROFILING_DDPROF_CPU_ENABLED": ["A"], + "DD_PROFILING_DDPROF_CPU_INTERVAL_MS": ["A"], + "DD_PROFILING_DDPROF_CSTACK": ["A"], + "DD_PROFILING_DDPROF_DEBUG_LIB": ["A"], + "DD_PROFILING_DDPROF_ENABLED": ["A"], + "DD_PROFILING_DDPROF_LINENUMBERS": ["A"], + "DD_PROFILING_DDPROF_LIVEHEAP_CAPACITY": ["A"], + "DD_PROFILING_DDPROF_LIVEHEAP_ENABLED": ["A"], + "DD_PROFILING_DDPROF_LIVEHEAP_INTERVAL": ["A"], + "DD_PROFILING_DDPROF_LIVEHEAP_SAMPLE_PERCENT": ["A"], + "DD_PROFILING_DDPROF_LIVEHEAP_TRACK_SIZE_ENABLED": ["A"], + "DD_PROFILING_DDPROF_LOGLEVEL": ["A"], + "DD_PROFILING_DDPROF_MEMLEAK_CAPACITY": ["A"], + "DD_PROFILING_DDPROF_MEMLEAK_ENABLED": ["A"], + "DD_PROFILING_DDPROF_MEMLEAK_INTERVAL": ["A"], + "DD_PROFILING_DDPROF_SAFEMODE": ["A"], + "DD_PROFILING_DDPROF_SCRATCH": ["A"], + "DD_PROFILING_DDPROF_STACKDEPTH": ["A"], + "DD_PROFILING_DDPROF_WALL_COLLAPSING": ["A"], + "DD_PROFILING_DDPROF_WALL_CONTEXT_FILTER": ["A"], + "DD_PROFILING_DDPROF_WALL_ENABLED": ["A"], + "DD_PROFILING_DDPROF_WALL_INTERVAL_MS": ["A"], + "DD_PROFILING_DEBUG_DUMP_PATH": ["A"], + "DD_PROFILING_DEBUG_JFR_DISABLED": ["A"], + "DD_PROFILING_DEBUG_UPLOAD_COMPRESSION": ["A"], + "DD_PROFILING_DETAILED_DEBUG_LOGGING": ["A"], + "DD_PROFILING_DIRECTALLOCATION_ENABLED": ["A"], + "DD_PROFILING_DIRECT_ALLOCATION_SAMPLE_LIMIT": ["A"], + "DD_PROFILING_DISABLED_EVENTS": ["A"], + "DD_PROFILING_ENABLED": ["A"], + "DD_PROFILING_ENABLED_EVENTS": ["A"], + "DD_PROFILING_ENDPOINT_COLLECTION_ENABLED": ["A"], + "DD_PROFILING_EXCEPTION_HISTOGRAM_MAX_COLLECTION_SIZE": ["A"], + "DD_PROFILING_EXCEPTION_HISTOGRAM_TOP_ITEMS": ["A"], + "DD_PROFILING_EXCEPTION_RECORD_MESSAGE": ["A"], + "DD_PROFILING_EXCEPTION_SAMPLE_LIMIT": ["A"], + "DD_PROFILING_EXCLUDE_AGENT_THREADS": ["A"], + "DD_PROFILING_EXPERIMENTAL_DDPROF_SCHEDULING_EVENT": ["A"], + "DD_PROFILING_EXPERIMENTAL_DDPROF_SCHEDULING_EVENT_INTERVAL": ["A"], + "DD_PROFILING_EXPERIMENTAL_DDPROF_WALL_JVMTI": ["A"], + "DD_PROFILING_HEAP_ENABLED": ["A"], + "DD_PROFILING_HEAP_HISTOGRAM_ENABLED": ["A"], + "DD_PROFILING_HEAP_HISTOGRAM_MODE": ["A"], + "DD_PROFILING_HEAP_TRACK_GENERATIONS": ["A"], + "DD_PROFILING_HOTSPOTS_ENABLED": ["A"], + "DD_PROFILING_JFR_REPOSITORY_BASE": ["A"], + "DD_PROFILING_JFR_REPOSITORY_MAXSIZE": ["A"], + "DD_PROFILING_JFR_TEMPLATE_OVERRIDE_FILE": ["A"], + "DD_PROFILING_PROXY_HOST": ["A"], + "DD_PROFILING_PROXY_PASSWORD": ["A"], + "DD_PROFILING_PROXY_PORT": ["A"], + "DD_PROFILING_PROXY_USERNAME": ["A"], + "DD_PROFILING_QUEUEING_TIME_ENABLED": ["A"], + "DD_PROFILING_QUEUEING_TIME_THRESHOLD_MILLIS": ["A"], + "DD_PROFILING_SMAP_AGGREGATION_ENABLED": ["A"], + "DD_PROFILING_SMAP_COLLECTION_ENABLED": ["A"], + "DD_PROFILING_STACKDEPTH": ["A"], + "DD_PROFILING_START_DELAY": ["A"], + "DD_PROFILING_START_FORCE_FIRST": ["A"], + "DD_PROFILING_TAGS": ["A"], + "DD_PROFILING_TEMPDIR": ["A"], + "DD_PROFILING_TIMELINE_EVENTS_ENABLED": ["A"], + "DD_PROFILING_ULTRA_MINIMAL": ["A"], + "DD_PROFILING_UPLOAD_COMPRESSION": ["A"], + "DD_PROFILING_UPLOAD_PERIOD": ["A"], + "DD_PROFILING_UPLOAD_SUMMARY_ON_413": ["A"], + "DD_PROFILING_UPLOAD_TIMEOUT": ["A"], + "DD_PROFILING_URL": ["A"], + "DD_PROPAGATION_EXTRACT_LOG_HEADER_NAMES_ENABLED": ["A"], + "DD_PROPAGATION_STYLE_EXTRACT": ["A"], + "DD_PROPAGATION_STYLE_INJECT": ["A"], + "DD_PROXY_NO_PROXY": ["A"], + "DD_RABBIT_INCLUDE_ROUTINGKEY_IN_RESOURCE": ["A"], + "DD_RABBIT_PROPAGATION_DISABLED_EXCHANGES": ["A"], + "DD_RABBIT_PROPAGATION_DISABLED_QUEUES": ["A"], + "DD_RC_TARGETS_KEY": ["A"], + "DD_RC_TARGETS_KEY_ID": ["A"], + "DD_REMOTE_CONFIGURATION_ENABLED": ["A"], + "DD_REMOTE_CONFIG_ENABLED": ["A"], + "DD_REMOTE_CONFIG_INTEGRITY_CHECK_ENABLED": ["A"], + "DD_REMOTE_CONFIG_MAX_EXTRA_SERVICES": ["A"], + "DD_REMOTE_CONFIG_MAX_PAYLOAD_SIZE": ["A"], + "DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS": ["A"], + "DD_REMOTE_CONFIG_URL": ["A"], + "DD_RESOLVER_CACHE_CONFIG": ["A"], + "DD_RESOLVER_CACHE_DIR": ["A"], + "DD_RESOLVER_NAMES_ARE_UNIQUE": ["A"], + "DD_RESOLVER_RESET_INTERVAL": ["A"], + "DD_RESOLVER_SIMPLE_METHOD_GRAPH": ["A"], + "DD_RESOLVER_USE_LOADCLASS": ["A"], + "DD_RESOLVER_USE_URL_CACHES": ["A"], + "DD_RUM_APPLICATION_ID": ["A"], + "DD_RUM_CLIENT_TOKEN": ["A"], + "DD_RUM_DEFAULT_PRIVACY_LEVEL": ["A"], + "DD_RUM_ENABLED": ["A"], + "DD_RUM_ENVIRONMENT": ["A"], + "DD_RUM_MAJOR_VERSION": ["A"], + "DD_RUM_REMOTE_CONFIGURATION_ID": ["A"], + "DD_RUM_SERVICE": ["A"], + "DD_RUM_SESSION_REPLAY_SAMPLE_RATE": ["A"], + "DD_RUM_SESSION_SAMPLE_RATE": ["A"], + "DD_RUM_SITE": ["A"], + "DD_RUM_TRACK_LONG_TASKS": ["A"], + "DD_RUM_TRACK_RESOURCES": ["A"], + "DD_RUM_TRACK_USER_INTERACTION": ["A"], + "DD_RUM_VERSION": ["A"], + "DD_RUNTIME_ID_ENABLED": ["A"], + "DD_RUNTIME_METRICS_ENABLED": ["A"], + "DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED": ["A"], + "DD_SERVICE_MAPPING": ["A"], + "DD_SERVICE_NAME": ["A"], + "DD_SERVICE_NAME_SET_BY_USER": ["A"], + "DD_SITE": ["A"], + "DD_SPAN_SAMPLING_RULES": ["A"], + "DD_SPAN_SAMPLING_RULES_FILE": ["A"], + "DD_SPARK_APP_NAME_AS_SERVICE": ["A"], + "DD_SPARK_TASK_HISTOGRAM_ENABLED": ["A"], + "DD_SPRING_DATA_REPOSITORY_INTERFACE_RESOURCE_NAME": ["A"], + "DD_STACK_TRACE_LENGTH_LIMIT": ["A"], + "DD_STATSD_CLIENT_QUEUE_SIZE": ["A"], + "DD_STATSD_CLIENT_SOCKET_BUFFER": ["A"], + "DD_STATSD_CLIENT_SOCKET_TIMEOUT": ["A"], + "DD_SYMBOL_DATABASE_COMPRESSED": ["A"], + "DD_SYMBOL_DATABASE_FLUSH_THRESHOLD": ["A"], + "DD_SYMBOL_DATABASE_UPLOAD_ENABLED": ["A"], + "DD_TAGS": ["A"], + "DD_TELEMETRY_DEBUG_REQUESTS_ENABLED": ["A"], + "DD_TELEMETRY_DEPENDENCY_COLLECTION_ENABLED": ["A"], + "DD_TELEMETRY_DEPENDENCY_RESOLUTION_PERIOD_MILLIS": ["A"], + "DD_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE": ["A"], + "DD_TELEMETRY_EXTENDED_HEARTBEAT_INTERVAL": ["A"], + "DD_TELEMETRY_FORWARDER_PATH": ["A"], + "DD_TELEMETRY_HEARTBEAT_INTERVAL": ["A"], + "DD_TELEMETRY_LOG_COLLECTION_ENABLED": ["A"], + "DD_TELEMETRY_METRICS_ENABLED": ["A"], + "DD_TELEMETRY_METRICS_INTERVAL": ["A"], + "DD_TEST_MANAGEMENT_ATTEMPT_TO_FIX_RETRIES": ["A"], + "DD_TEST_MANAGEMENT_ENABLED": ["A"], + "DD_TEST_SESSION_NAME": ["A"], + "DD_THIRD_PARTY_EXCLUDES": ["A"], + "DD_THIRD_PARTY_INCLUDES": ["A"], + "DD_THIRD_PARTY_SHADING_IDENTIFIERS": ["A"], + "DD_TRACE_128_BIT_TRACEID_GENERATION_ENABLED": ["A"], + "DD_TRACE_128_BIT_TRACEID_LOGGING_ENABLED": ["A"], + "DD_TRACE_AEROSPIKE_ENABLED": ["A"], + "DD_TRACE_AGENT_ARGS": ["A"], + "DD_TRACE_AGENT_PATH": ["A"], + "DD_TRACE_AGENT_PORT": ["A"], + "DD_TRACE_AGENT_TIMEOUT": ["A"], + "DD_TRACE_AGENT_UNIX_DOMAIN_SOCKET": ["A"], + "DD_TRACE_AGENT_URL": ["A"], + "DD_TRACE_AGENT_V0_5_ENABLED": ["A"], + "DD_TRACE_AKKA_ACTOR_ENABLED": ["A"], + "DD_TRACE_AKKA_ACTOR_MAILBOX_ENABLED": ["A"], + "DD_TRACE_AKKA_ACTOR_RECEIVE_ENABLED": ["A"], + "DD_TRACE_AKKA_ACTOR_SEND_ENABLED": ["A"], + "DD_TRACE_AKKA_CONCURRENT_ENABLED": ["A"], + "DD_TRACE_AKKA_FORK_JOIN_EXECUTOR_TASK_NAME": ["A"], + "DD_TRACE_AKKA_FORK_JOIN_POOL_NAME": ["A"], + "DD_TRACE_AKKA_FORK_JOIN_TASK_NAME": ["A"], + "DD_TRACE_AKKA_HTTP2_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_CLIENT_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_SERVER_ENABLED": ["A"], + "DD_TRACE_ALLOCATEDIRECT_ENABLED": ["A"], + "DD_TRACE_AMQP_ENABLED": ["A"], + "DD_TRACE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_ANNOTATIONS": ["A"], + "DD_TRACE_ANNOTATION_ASYNC": ["A"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCLIENT_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCORE_5_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCORE_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CLIENT_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CORE_5_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CORE_ENABLED": ["A"], + "DD_TRACE_APACHE_SPARK_ENABLED": ["A"], + "DD_TRACE_ARMERIA_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_CLIENT_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_SERVER_ENABLED": ["A"], + "DD_TRACE_ARMERIA_JETTY_ENABLED": ["A"], + "DD_TRACE_AUTH0_JWT_ENABLED": ["A"], + "DD_TRACE_AVRO_ENABLED": ["A"], + "DD_TRACE_AWS_DYNAMODB_ENABLED": ["A"], + "DD_TRACE_AWS_LAMBDA_ENABLED": ["A"], + "DD_TRACE_AWS_S3_ENABLED": ["A"], + "DD_TRACE_AWS_SDK_ENABLED": ["A"], + "DD_TRACE_AXIS2_ENABLED": ["A"], + "DD_TRACE_AXIS2_TRANSPORT_ENABLED": ["A"], + "DD_TRACE_AXIS_PROMOTE_RESOURCE_NAME": ["A"], + "DD_TRACE_AXIS_TRANSPORT_CLASS_NAME": ["A"], + "DD_TRACE_AXWAY_API_ENABLED": ["A"], + "DD_TRACE_AZURE_FUNCTIONS_ENABLED": ["A"], + "DD_TRACE_BAGGAGE_MAX_BYTES": ["A"], + "DD_TRACE_BAGGAGE_MAX_ITEMS": ["A"], + "DD_TRACE_CAFFEINE_ENABLED": ["A"], + "DD_TRACE_CASSANDRA_ENABLED": ["A"], + "DD_TRACE_CASSANDRA_KEYSPACE_STATEMENT_EXTRACTION_ENABLED": ["A"], + "DD_TRACE_CLASSES_EXCLUDE": ["A"], + "DD_TRACE_CLASSES_EXCLUDE_FILE": ["A"], + "DD_TRACE_CLASSLOADERS_DEFER": ["A"], + "DD_TRACE_CLASSLOADERS_EXCLUDE": ["A"], + "DD_TRACE_CLASSLOADING_ENABLED": ["A"], + "DD_TRACE_CLIENT_IP_ENABLED": ["A"], + "DD_TRACE_CLIENT_IP_HEADER": ["A"], + "DD_TRACE_CLIENT_IP_RESOLVER_ENABLED": ["A"], + "DD_TRACE_CLOCK_SYNC_PERIOD": ["A"], + "DD_TRACE_CLOUD_PAYLOAD_TAGGING_MAX_DEPTH": ["A"], + "DD_TRACE_CLOUD_PAYLOAD_TAGGING_MAX_TAGS": ["A"], + "DD_TRACE_CLOUD_PAYLOAD_TAGGING_SERVICES": ["A"], + "DD_TRACE_CLOUD_REQUEST_PAYLOAD_TAGGING": ["A"], + "DD_TRACE_CLOUD_RESPONSE_PAYLOAD_TAGGING": ["A"], + "DD_TRACE_CODESOURCES_EXCLUDE": ["A"], + "DD_TRACE_COMMONS_FILEUPLOAD_ENABLED": ["A"], + "DD_TRACE_COMMONS_HTTP_CLIENT_ENABLED": ["A"], + "DD_TRACE_CONFIG": ["A"], + "DD_TRACE_CONSUMER_TASK_ENABLED": ["A"], + "DD_TRACE_COUCHBASE_3_ENABLED": ["A"], + "DD_TRACE_COUCHBASE_ENABLED": ["A"], + "DD_TRACE_COUCHBASE_INTERNAL_SPANS_ENABLED": ["A"], + "DD_TRACE_CXF_ENABLED": ["A"], + "DD_TRACE_CXF_INVOKER_ENABLED": ["A"], + "DD_TRACE_DATANUCLEUS_ENABLED": ["A"], + "DD_TRACE_DB2_ENABLED": ["A"], + "DD_TRACE_DBM_ENABLED": ["A"], + "DD_TRACE_DB_CLIENT_SPLIT_BY_HOST": ["A"], + "DD_TRACE_DB_CLIENT_SPLIT_BY_INSTANCE": ["A"], + "DD_TRACE_DB_CLIENT_SPLIT_BY_INSTANCE_TYPE_SUFFIX": ["A"], + "DD_TRACE_DEBUG": ["A"], + "DD_TRACE_DEFINECLASS_ENABLED": ["A"], + "DD_TRACE_DIRECTALLOCATION_ENABLED": ["A"], + "DD_TRACE_DO_NOT_TRACE_ANNOTATION_ENABLED": ["A"], + "DD_TRACE_DROPWIZARD_ENABLED": ["A"], + "DD_TRACE_DROPWIZARD_VIEW_ENABLED": ["A"], + "DD_TRACE_DYNAMODB_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_BODY_AND_PARAMS_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_BODY_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_PARAMS_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_REST_5_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_REST_6_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_REST_7_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_REST_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_2_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_5_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_6_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_7_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_ENABLED": ["A"], + "DD_TRACE_EMR_AWS_SDK_ENABLED": ["A"], + "DD_TRACE_ENABLED": ["A"], + "DD_TRACE_EVENTBRIDGE_ENABLED": ["A"], + "DD_TRACE_EXECUTORS": ["A"], + "DD_TRACE_EXECUTORS_ALL": ["A"], + "DD_TRACE_EXPERIMENTAL_FEATURES_ENABLED": ["A"], + "DD_TRACE_EXPERIMENTAL_JEE_SPLIT_BY_DEPLOYMENT": ["A"], + "DD_TRACE_EXPERIMENTAL_KEEP_LATENCY_THRESHOLD_MS": ["A"], + "DD_TRACE_EXPERIMENTAL_LONG_RUNNING_ENABLED": ["A"], + "DD_TRACE_EXPERIMENTAL_LONG_RUNNING_FLUSH_INTERVAL": ["A"], + "DD_TRACE_EXPERIMENTAL_LONG_RUNNING_INITIAL_FLUSH_INTERVAL": ["A"], + "DD_TRACE_EXTENSIONS_PATH": ["A"], + "DD_TRACE_FILEITEMITERATOR_ENABLED": ["A"], + "DD_TRACE_FILEITEMSTREAM_ENABLED": ["A"], + "DD_TRACE_FILEITEM_ENABLED": ["A"], + "DD_TRACE_FINATRA_ENABLED": ["A"], + "DD_TRACE_FJP_ENABLED": ["A"], + "DD_TRACE_FJP_WORKQUEUE_ENABLED": ["A"], + "DD_TRACE_FLUSH_INTERVAL": ["A"], + "DD_TRACE_GIT_METADATA_ENABLED": ["A"], + "DD_TRACE_GLASSFISH_ENABLED": ["A"], + "DD_TRACE_GLOBAL_TAGS": ["A"], + "DD_TRACE_GOOGLE_HTTP_CLIENT_ENABLED": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_ENABLED": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_IGNORED_GRPC_METHODS": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["A"], + "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["A"], + "DD_TRACE_GRIZZLY_CLIENT_ENABLED": ["A"], + "DD_TRACE_GRIZZLY_ENABLED": ["A"], + "DD_TRACE_GRIZZLY_FILTERCHAIN_ENABLED": ["A"], + "DD_TRACE_GRPC_CLIENT_ENABLED": ["A"], + "DD_TRACE_GRPC_ENABLED": ["A"], + "DD_TRACE_GRPC_IGNORED_INBOUND_METHODS": ["A"], + "DD_TRACE_GRPC_IGNORED_OUTBOUND_METHODS": ["A"], + "DD_TRACE_GRPC_MESSAGE_ENABLED": ["A"], + "DD_TRACE_GRPC_NETTY_ENABLED": ["A"], + "DD_TRACE_GRPC_SERVER_CODE_ORIGIN_ENABLED": ["A"], + "DD_TRACE_GRPC_SERVER_ENABLED": ["A"], + "DD_TRACE_GRPC_SERVER_TRIM_PACKAGE_RESOURCE": ["A"], + "DD_TRACE_GSON_ENABLED": ["A"], + "DD_TRACE_GUAVA_ENABLED": ["A"], + "DD_TRACE_HAZELCAST_ENABLED": ["A"], + "DD_TRACE_HAZELCAST_LEGACY_ENABLED": ["A"], + "DD_TRACE_HEADER_BAGGAGE": ["A"], + "DD_TRACE_HEADER_TAGS": ["A"], + "DD_TRACE_HEALTH_METRICS_ENABLED": ["A"], + "DD_TRACE_HEALTH_METRICS_STATSD_HOST": ["A"], + "DD_TRACE_HEALTH_METRICS_STATSD_PORT": ["A"], + "DD_TRACE_HIBERNATE_CORE_ENABLED": ["A"], + "DD_TRACE_HIBERNATE_ENABLED": ["A"], + "DD_TRACE_HTTPASYNCCLIENT_ENABLED": ["A"], + "DD_TRACE_HTTPCLIENT_ENABLED": ["A"], + "DD_TRACE_HTTPCLIENT_REDIRECT_ENABLED": ["A"], + "DD_TRACE_HTTPURLCONNECTION_ENABLED": ["A"], + "DD_TRACE_HTTP_CLIENT_ERROR_STATUSES": ["A"], + "DD_TRACE_HTTP_CLIENT_PATH_RESOURCE_NAME_MAPPING": ["A"], + "DD_TRACE_HTTP_CLIENT_SPLIT_BY_DOMAIN": ["A"], + "DD_TRACE_HTTP_CLIENT_TAG_QUERY_STRING": ["A"], + "DD_TRACE_HTTP_RESOURCE_REMOVE_TRAILING_SLASH": ["A"], + "DD_TRACE_HTTP_SERVER_ERROR_STATUSES": ["A"], + "DD_TRACE_HTTP_SERVER_PATH_RESOURCE_NAME_MAPPING": ["A"], + "DD_TRACE_HTTP_URL_CONNECTION_CLASS_NAME": ["A"], + "DD_TRACE_HYSTRIX_ENABLED": ["A"], + "DD_TRACE_IAST_RESULTSET_ENABLED": ["A"], + "DD_TRACE_IGNITE_ENABLED": ["A"], + "DD_TRACE_INPUTSTREAM_ENABLED": ["A"], + "DD_TRACE_INTERNAL_EXIT_ON_FAILURE": ["A"], + "DD_TRACE_JACKSON_1_ENABLED": ["A"], + "DD_TRACE_JACKSON_2_12_ENABLED": ["A"], + "DD_TRACE_JACKSON_2_16_ENABLED": ["A"], + "DD_TRACE_JACKSON_2_6_ENABLED": ["A"], + "DD_TRACE_JACKSON_2_8_ENABLED": ["A"], + "DD_TRACE_JACKSON_2_ENABLED": ["A"], + "DD_TRACE_JACKSON_CORE_ENABLED": ["A"], + "DD_TRACE_JACKSON_ENABLED": ["A"], + "DD_TRACE_JAKARTARS_ENABLED": ["A"], + "DD_TRACE_JAKARTA_ENABLED": ["A"], + "DD_TRACE_JAKARTA_JMS_ENABLED": ["A"], + "DD_TRACE_JAKARTA_MAIL_BODY_ENABLED": ["A"], + "DD_TRACE_JAKARTA_MAIL_ENABLED": ["A"], + "DD_TRACE_JAKARTA_MAIL_TRANSPORT_ENABLED": ["A"], + "DD_TRACE_JAKARTA_RS_ANNOTATIONS_ENABLED": ["A"], + "DD_TRACE_JAKARTA_RS_ENABLED": ["A"], + "DD_TRACE_JAKARTA_RS_FILTER_ENABLED": ["A"], + "DD_TRACE_JAKARTA_WS_ENABLED": ["A"], + "DD_TRACE_JAVAX_ENABLED": ["A"], + "DD_TRACE_JAVAX_MAIL_BODY_ENABLED": ["A"], + "DD_TRACE_JAVAX_MAIL_ENABLED": ["A"], + "DD_TRACE_JAVAX_MAIL_TRANSPORT_ENABLED": ["A"], + "DD_TRACE_JAVA_COMPLETABLEFUTURE_ENABLED": ["A"], + "DD_TRACE_JAVA_CONCURRENT_ENABLED": ["A"], + "DD_TRACE_JAVA_CONCURRENT_OTHER_ENABLED": ["A"], + "DD_TRACE_JAVA_LANG_APPSEC_ENABLED": ["A"], + "DD_TRACE_JAVA_TIMER_ENABLED": ["A"], + "DD_TRACE_JAX_RS_ADDITIONAL_ANNOTATIONS": ["A"], + "DD_TRACE_JAX_RS_EXCEPTION_AS_ERROR_ENABLED": ["A"], + "DD_TRACE_JDBC_CONNECTION_CLASS_NAME": ["A"], + "DD_TRACE_JDBC_ENABLED": ["A"], + "DD_TRACE_JDBC_PREPARED_STATEMENT_CLASS_NAME": ["A"], + "DD_TRACE_JDBC_RESULTSET_ENABLED": ["A"], + "DD_TRACE_JERSEY_ENABLED": ["A"], + "DD_TRACE_JMS_1_ENABLED": ["A"], + "DD_TRACE_JMS_2_ENABLED": ["A"], + "DD_TRACE_JMS_ENABLED": ["A"], + "DD_TRACE_JMX_TAGS": ["A"], + "DD_TRACE_JNI_ENABLED": ["A"], + "DD_TRACE_JOSE_JWT_ENABLED": ["A"], + "DD_TRACE_JWT_ENABLED": ["A"], + "DD_TRACE_KAFKA_ENABLED": ["A"], + "DD_TRACE_LETTUCE_5_ASYNC_ENABLED": ["A"], + "DD_TRACE_LOG4J_1_ENABLED": ["A"], + "DD_TRACE_LOG4J_2_ENABLED": ["A"], + "DD_TRACE_LOG4J_ENABLED": ["A"], + "DD_TRACE_LOGBACK_ENABLED": ["A"], + "DD_TRACE_LOGS_INTAKE_ENABLED": ["A"], + "DD_TRACE_LOGS_INTAKE_LOG4J_2_ENABLED": ["A"], + "DD_TRACE_METHODS": ["A"], + "DD_TRACE_MICRONAUT_ENABLED": ["A"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED": ["A"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED": ["A"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED": ["A"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_ENABLED": ["A"], + "DD_TRACE_MICRONAUT_SPAN_ORIGIN_ENABLED": ["A"], + "DD_TRACE_MMAP_ENABLED": ["A"], + "DD_TRACE_MONGO_3_1_ENABLED": ["A"], + "DD_TRACE_MONGO_3_4_ENABLED": ["A"], + "DD_TRACE_MONGO_ENABLED": ["A"], + "DD_TRACE_MONGO_REACTIVESTREAMS_ENABLED": ["A"], + "DD_TRACE_MULE_ENABLED": ["A"], + "DD_TRACE_MULE_JPMS_ENABLED": ["A"], + "DD_TRACE_MULTIPART_ENABLED": ["A"], + "DD_TRACE_NETTY_3_8_ENABLED": ["A"], + "DD_TRACE_NETTY_4_0_ENABLED": ["A"], + "DD_TRACE_NETTY_4_1_ENABLED": ["A"], + "DD_TRACE_NETTY_4_1_HTTP2_ENABLED": ["A"], + "DD_TRACE_NETTY_CONCURRENT_ENABLED": ["A"], + "DD_TRACE_NETTY_ENABLED": ["A"], + "DD_TRACE_NETTY_EVENT_EXECUTOR_ENABLED": ["A"], + "DD_TRACE_NETTY_PROMISE_ENABLED": ["A"], + "DD_TRACE_NEW_TASK_FOR_ENABLED": ["A"], + "DD_TRACE_NING_ENABLED": ["A"], + "DD_TRACE_NOT_NOT_TRACE_ENABLED": ["A"], + "DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXP": ["A"], + "DD_TRACE_OGNL_ENABLED": ["A"], + "DD_TRACE_OKHTTP_2_ENABLED": ["A"], + "DD_TRACE_OKHTTP_3_ENABLED": ["A"], + "DD_TRACE_OKHTTP_ENABLED": ["A"], + "DD_TRACE_OPENSEARCH_ENABLED": ["A"], + "DD_TRACE_OPENSEARCH_REST_ENABLED": ["A"], + "DD_TRACE_OPENSEARCH_TRANSPORT_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_1_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_BETA_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_EXPERIMENTAL_ENABLED": ["A"], + "DD_TRACE_OPENTRACING_ENABLED": ["A"], + "DD_TRACE_OPENTRACING_GLOBALTRACER_ENABLED": ["A"], + "DD_TRACE_ORG_JSON_ENABLED": ["A"], + "DD_TRACE_OSGI_ENABLED": ["A"], + "DD_TRACE_OTEL_ENABLED": ["A"], + "DD_TRACE_PARTIAL_FLUSH_ENABLED": ["A"], + "DD_TRACE_PARTIAL_FLUSH_MIN_SPANS": ["A"], + "DD_TRACE_PEER_HOSTNAME_ENABLED": ["A"], + "DD_TRACE_PEER_SERVICE_COMPONENT_OVERRIDES": ["A"], + "DD_TRACE_PEER_SERVICE_DEFAULTS_ENABLED": ["A"], + "DD_TRACE_PEER_SERVICE_MAPPING": ["A"], + "DD_TRACE_PEKKO_ACTOR_ENABLED": ["A"], + "DD_TRACE_PEKKO_ACTOR_MAILBOX_ENABLED": ["A"], + "DD_TRACE_PEKKO_ACTOR_RECEIVE_ENABLED": ["A"], + "DD_TRACE_PEKKO_ACTOR_SEND_ENABLED": ["A"], + "DD_TRACE_PEKKO_CONCURRENT_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP2_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_CLIENT_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_SERVER_ENABLED": ["A"], + "DD_TRACE_PEKKO_SCHEDULER_ENABLED": ["A"], + "DD_TRACE_PERF_METRICS_ENABLED": ["A"], + "DD_TRACE_PIPE_NAME": ["A"], + "DD_TRACE_PLAY_ACTION_ENABLED": ["A"], + "DD_TRACE_PLAY_ENABLED": ["A"], + "DD_TRACE_PLAY_REPORT_HTTP_STATUS": ["A"], + "DD_TRACE_PLAY_WS_ENABLED": ["A"], + "DD_TRACE_POST_PROCESSING_TIMEOUT": ["A"], + "DD_TRACE_PROPAGATION_BEHAVIOR_EXTRACT": ["A"], + "DD_TRACE_PROPAGATION_EXTRACT_FIRST": ["A"], + "DD_TRACE_PROPAGATION_STYLE": ["A"], + "DD_TRACE_PROPAGATION_STYLE_EXTRACT": ["A"], + "DD_TRACE_PROPAGATION_STYLE_INJECT": ["A"], + "DD_TRACE_PROTOBUF_ENABLED": ["A"], + "DD_TRACE_QUARTZ_ENABLED": ["A"], + "DD_TRACE_RABBITMQ_ENABLED": ["A"], + "DD_TRACE_RATE_LIMIT": ["A"], + "DD_TRACE_RATPACK_ENABLED": ["A"], + "DD_TRACE_RATPACK_REQUEST_BODY_ENABLED": ["A"], + "DD_TRACE_REACTIVE_STREAMS_1_ENABLED": ["A"], + "DD_TRACE_REACTIVE_STREAMS_ENABLED": ["A"], + "DD_TRACE_REACTOR_CORE_ENABLED": ["A"], + "DD_TRACE_REACTOR_NETTY_1_ENABLED": ["A"], + "DD_TRACE_REACTOR_NETTY_ENABLED": ["A"], + "DD_TRACE_REDISCALA_CONNECTION_ENABLED": ["A"], + "DD_TRACE_REDISCALA_ENABLED": ["A"], + "DD_TRACE_REDISSON_ENABLED": ["A"], + "DD_TRACE_REDIS_ENABLED": ["A"], + "DD_TRACE_REJECTED_EXECUTION_HANDLER_ENABLED": ["A"], + "DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED": ["A"], + "DD_TRACE_RENAISSANCE_ENABLED": ["A"], + "DD_TRACE_REPORT_HOSTNAME": ["A"], + "DD_TRACE_REQUEST_HEADER_TAGS": ["A"], + "DD_TRACE_REQUEST_HEADER_TAGS_COMMA_ALLOWED": ["A"], + "DD_TRACE_RESOLVER_ENABLED": ["A"], + "DD_TRACE_RESPONSE_ENABLED": ["A"], + "DD_TRACE_RESPONSE_HEADER_TAGS": ["A"], + "DD_TRACE_RESTEASY_ENABLED": ["A"], + "DD_TRACE_RESTLET_HTTP_ENABLED": ["A"], + "DD_TRACE_RESTLET_HTTP_SERVER_ENABLED": ["A"], + "DD_TRACE_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED": ["A"], + "DD_TRACE_RMI_CLIENT_ENABLED": ["A"], + "DD_TRACE_RMI_CONTEXT_PROPAGATOR_ENABLED": ["A"], + "DD_TRACE_RMI_ENABLED": ["A"], + "DD_TRACE_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED": ["A"], + "DD_TRACE_RMI_SERVER_ENABLED": ["A"], + "DD_TRACE_RUNNABLE_ENABLED": ["A"], + "DD_TRACE_RUNNABLE_FUTURE_ENABLED": ["A"], + "DD_TRACE_RUNTIME_CONTEXT_FIELD_INJECTION": ["A"], + "DD_TRACE_RXJAVA_ENABLED": ["A"], + "DD_TRACE_S3_ENABLED": ["A"], + "DD_TRACE_SAMPLE_RATE": ["A"], + "DD_TRACE_SAMPLING_MECHANISM_VALIDATION_DISABLED": ["A"], + "DD_TRACE_SAMPLING_OPERATION_RULES": ["A"], + "DD_TRACE_SAMPLING_RULES": ["A"], + "DD_TRACE_SAMPLING_SERVICE_RULES": ["A"], + "DD_TRACE_SCALA_CONCURRENT_ENABLED": ["A"], + "DD_TRACE_SCALA_FUTURE_OBJECT_ENABLED": ["A"], + "DD_TRACE_SCALA_PROMISE_COMPLETE_ENABLED": ["A"], + "DD_TRACE_SCALA_PROMISE_RESOLVE_ENABLED": ["A"], + "DD_TRACE_SCOPE_DEPTH_LIMIT": ["A"], + "DD_TRACE_SCOPE_ITERATION_KEEP_ALIVE": ["A"], + "DD_TRACE_SCOPE_STRICT_MODE": ["A"], + "DD_TRACE_SECURE_RANDOM": ["A"], + "DD_TRACE_SERIALVERSIONUID_FIELD_INJECTION": ["A"], + "DD_TRACE_SERVELET_RESPONSE_ENABLED": ["A"], + "DD_TRACE_SERVICETALK_CONCURRENT_ENABLED": ["A"], + "DD_TRACE_SERVICETALK_ENABLED": ["A"], + "DD_TRACE_SERVLET_2_ENABLED": ["A"], + "DD_TRACE_SERVLET_3_ENABLED": ["A"], + "DD_TRACE_SERVLET_5_ENABLED": ["A"], + "DD_TRACE_SERVLET_ASYNC_TIMEOUT_ERROR": ["A"], + "DD_TRACE_SERVLET_COOKIE_ENABLED": ["A"], + "DD_TRACE_SERVLET_DISPATCHER_ENABLED": ["A"], + "DD_TRACE_SERVLET_ENABLED": ["A"], + "DD_TRACE_SERVLET_FILTER_ENABLED": ["A"], + "DD_TRACE_SERVLET_PRINCIPAL_ENABLED": ["A"], + "DD_TRACE_SERVLET_REQUEST_BODY_ENABLED": ["A"], + "DD_TRACE_SERVLET_REQUEST_ENABLED": ["A"], + "DD_TRACE_SERVLET_RESPONSE_ENABLED": ["A"], + "DD_TRACE_SERVLET_ROOT_CONTEXT_SERVICE_NAME": ["A"], + "DD_TRACE_SERVLET_SERVICE_ENABLED": ["A"], + "DD_TRACE_SERVLET_SESSION_ENABLED": ["A"], + "DD_TRACE_SFN_ENABLED": ["A"], + "DD_TRACE_SHUTDOWN_ENABLED": ["A"], + "DD_TRACE_SLICK_ENABLED": ["A"], + "DD_TRACE_SNAKEYAML_ENABLED": ["A"], + "DD_TRACE_SNS_ENABLED": ["A"], + "DD_TRACE_SOCKET_ENABLED": ["A"], + "DD_TRACE_SPAN_ATTRIBUTE_SCHEMA": ["A"], + "DD_TRACE_SPAN_TAGS": ["A"], + "DD_TRACE_SPARKJAVA_2_4_ENABLED": ["A"], + "DD_TRACE_SPARKJAVA_ENABLED": ["A"], + "DD_TRACE_SPARK_ENABLED": ["A"], + "DD_TRACE_SPARK_EXECUTOR_ENABLED": ["A"], + "DD_TRACE_SPARK_EXIT_ENABLED": ["A"], + "DD_TRACE_SPARK_OPENLINEAGE_ENABLED": ["A"], + "DD_TRACE_SPLIT_BY_TAGS": ["A"], + "DD_TRACE_SPRAY_HTTP_ENABLED": ["A"], + "DD_TRACE_SPRAY_HTTP_SERVER_ENABLED": ["A"], + "DD_TRACE_SPRING_ASYNC_ENABLED": ["A"], + "DD_TRACE_SPRING_BEANS_ENABLED": ["A"], + "DD_TRACE_SPRING_BOOT_ENABLED": ["A"], + "DD_TRACE_SPRING_BOOT_SPAN_ORIGIN_ENABLED": ["A"], + "DD_TRACE_SPRING_CLOUD_ZUUL_ENABLED": ["A"], + "DD_TRACE_SPRING_CORE_ENABLED": ["A"], + "DD_TRACE_SPRING_DATA_ENABLED": ["A"], + "DD_TRACE_SPRING_JMS_ENABLED": ["A"], + "DD_TRACE_SPRING_MESSAGING_4_ENABLED": ["A"], + "DD_TRACE_SPRING_MESSAGING_ENABLED": ["A"], + "DD_TRACE_SPRING_PATH_FILTER_ENABLED": ["A"], + "DD_TRACE_SPRING_RABBIT_ENABLED": ["A"], + "DD_TRACE_SPRING_SCHEDULING_ENABLED": ["A"], + "DD_TRACE_SPRING_SECURITY_ENABLED": ["A"], + "DD_TRACE_SPRING_WEBFLUX_CLIENT_ENABLED": ["A"], + "DD_TRACE_SPRING_WEBFLUX_ENABLED": ["A"], + "DD_TRACE_SPRING_WEBFLUX_FUNCTIONAL_ENABLED": ["A"], + "DD_TRACE_SPRING_WEB_CODE_ORIGIN_ENABLED": ["A"], + "DD_TRACE_SPRING_WEB_ENABLED": ["A"], + "DD_TRACE_SPRING_WS_2_ENABLED": ["A"], + "DD_TRACE_SPRING_WS_ENABLED": ["A"], + "DD_TRACE_SPYMEMCACHED_ENABLED": ["A"], + "DD_TRACE_SQS_BODY_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_SQS_ENABLED": ["A"], + "DD_TRACE_SSLSOCKET_ENABLED": ["A"], + "DD_TRACE_STARTUP_LOGS": ["A"], + "DD_TRACE_STRICT_WRITES_ENABLED": ["A"], + "DD_TRACE_STRUCTURED_TASK_SCOPE_ENABLED": ["A"], + "DD_TRACE_SYNAPSE3_CLIENT_ENABLED": ["A"], + "DD_TRACE_SYNAPSE3_ENABLED": ["A"], + "DD_TRACE_SYNAPSE3_SERVER_ENABLED": ["A"], + "DD_TRACE_TAGS": ["A"], + "DD_TRACE_TASK_RUNNER_ENABLED": ["A"], + "DD_TRACE_TASK_UNWRAPPING_ENABLED": ["A"], + "DD_TRACE_TESTS_ENABLED": ["A"], + "DD_TRACE_THREAD_POOL_EXECUTORS_EXCLUDE": ["A"], + "DD_TRACE_THROWABLES_ENABLED": ["A"], + "DD_TRACE_THYMELEAF_ENABLED": ["A"], + "DD_TRACE_TIBCO_BW_ENABLED": ["A"], + "DD_TRACE_TIBCO_ENABLED": ["A"], + "DD_TRACE_TINYLOG_ENABLED": ["A"], + "DD_TRACE_TOMCAT_CLASSLOADING_ENABLED": ["A"], + "DD_TRACE_TOMCAT_ENABLED": ["A"], + "DD_TRACE_TOMCAT_WEBSOCKET_ENABLED": ["A"], + "DD_TRACE_TRACER_METRICS_BUFFERING_ENABLED": ["A"], + "DD_TRACE_TRACER_METRICS_ENABLED": ["A"], + "DD_TRACE_TRACER_METRICS_IGNORED_RESOURCES": ["A"], + "DD_TRACE_TRACER_METRICS_MAX_AGGREGATES": ["A"], + "DD_TRACE_TRACER_METRICS_MAX_PENDING": ["A"], + "DD_TRACE_TRACE_ANNOTATION_ENABLED": ["A"], + "DD_TRACE_TRACE_ENABLED": ["A"], + "DD_TRACE_TRIAGE": ["A"], + "DD_TRACE_TWILIO_SDK_ENABLED": ["A"], + "DD_TRACE_UNDERTOW_2_0_ENABLED": ["A"], + "DD_TRACE_UNDERTOW_2_2_ENABLED": ["A"], + "DD_TRACE_UNDERTOW_ENABLED": ["A"], + "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["A"], + "DD_TRACE_URLCONNECTION_ENABLED": ["A"], + "DD_TRACE_VELOCITY_ENABLED": ["A"], + "DD_TRACE_VERTX_3_4_ENABLED": ["A"], + "DD_TRACE_VERTX_3_5_ENABLED": ["A"], + "DD_TRACE_VERTX_3_9_ENABLED": ["A"], + "DD_TRACE_VERTX_4_0_ENABLED": ["A"], + "DD_TRACE_VERTX_5_0_ENABLED": ["A"], + "DD_TRACE_VERTX_ENABLED": ["A"], + "DD_TRACE_WALLCLOCK_ENABLED": ["A"], + "DD_TRACE_WEBSOCKET_ENABLED": ["A"], + "DD_TRACE_WEBSOCKET_MESSAGES_ENABLED": ["A"], + "DD_TRACE_WEBSOCKET_MESSAGES_INHERIT_SAMPLING": ["A"], + "DD_TRACE_WEBSOCKET_MESSAGES_SEPARATE_TRACES": ["A"], + "DD_TRACE_WEBSOCKET_TAG_SESSION_ID": ["A"], + "DD_TRACE_X_DATADOG_TAGS_MAX_LENGTH": ["A"], + "DD_TRIAGE_REPORT_DIR": ["A"], + "DD_TRIAGE_REPORT_TRIGGER": ["A"], + "DD_UNDERTOW_CONTINUATION": ["A"], + "DD_USM_ENABLED": ["A"], + "DD_VERSION": ["A"], + "DD_WRITER_BAGGAGE_INJECT": ["A"], + "DD_WRITER_TYPE": ["A"] + }, + "aliases": { + }, + "deprecations": { + } +} diff --git a/components/environment/src/main/resources/test-supported-configurations.json b/components/environment/src/main/resources/test-supported-configurations.json new file mode 100644 index 00000000000..b57ee00fa9f --- /dev/null +++ b/components/environment/src/main/resources/test-supported-configurations.json @@ -0,0 +1,11 @@ +{ + "supportedConfigurations": { + "DD_AGENT_HOST": ["A"] + }, + "aliases": { + "DD_AGENT_HOST": ["DD_TRACE_AGENT_HOSTNAME"] + }, + "deprecated": { + "OLD_KEY": "NEW_KEY" + } +} diff --git a/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java b/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java new file mode 100644 index 00000000000..07816d5e318 --- /dev/null +++ b/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java @@ -0,0 +1,18 @@ +package datadog.environment; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import org.junit.jupiter.api.Test; + +class ParseSupportedConfigurationsTest { + @Test + void testParsingRealJsonFile() { + ParseSupportedConfigurations.loadSupportedConfigurations("test-supported-configurations.json"); + + assertTrue(ParseSupportedConfigurations.supportedConfigurations.contains("DD_AGENT_HOST")); + assertEquals( + "DD_AGENT_HOST", ParseSupportedConfigurations.aliasMapping.get("DD_TRACE_AGENT_HOSTNAME")); + assertEquals("NEW_KEY", ParseSupportedConfigurations.deprecatedConfigurations.get("OLD_KEY")); + } +} diff --git a/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java b/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java index 3ec4f41a4d7..97043834f55 100644 --- a/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java +++ b/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java @@ -1,5 +1,6 @@ package datadog.trace.bootstrap; +import datadog.environment.EnvironmentVariables; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.BufferedReader; import java.io.InputStream; @@ -101,7 +102,7 @@ static boolean compatible(String javaVersion, String javaHome, PrintStream outpu reportIncompatibleJava(javaVersion, javaHome, agentVersion, output); - String forwarderPath = System.getenv("DD_TELEMETRY_FORWARDER_PATH"); + String forwarderPath = EnvironmentVariables.get("DD_TELEMETRY_FORWARDER_PATH"); if (forwarderPath != null) { sendTelemetry(forwarderPath, javaVersion, agentVersion); } diff --git a/gradle/forbiddenApiFilters/main.txt b/gradle/forbiddenApiFilters/main.txt index 4993b965ed8..7ef593e5264 100644 --- a/gradle/forbiddenApiFilters/main.txt +++ b/gradle/forbiddenApiFilters/main.txt @@ -28,3 +28,8 @@ net.bytebuddy.matcher.ElementMatchers#isAbstract() @defaultMessage Avoid using System.out/err to prevent excess logging. To override, add @SuppressForbidden. java.lang.System#out java.lang.System#err + +# avoid using System.getenv() or System.getenv(String) in code outside of ConfigHelper.java +@defaultMessage Avoid using System.getenv() or System.getenv(String) in code outside of ConfigHelper.java +java.lang.System#getenv() +java.lang.System#getenv(java.lang.String) diff --git a/gradle/logEnvVarUsages.gradle b/gradle/logEnvVarUsages.gradle new file mode 100644 index 00000000000..45845733ded --- /dev/null +++ b/gradle/logEnvVarUsages.gradle @@ -0,0 +1,74 @@ +import groovy.json.JsonSlurper +import java.nio.file.Path + +tasks.register('logEnvVarUsages') { + description = "Scan Java files for DD_ tokens and fail if unsupported" + group = "verification" + + doLast { + def repoRoot = projectDir.toPath() + def jsonFile = file("$projectDir/components/environment/src/main/resources/supported-configurations.json") + + if (!jsonFile.exists()) { + throw new GradleException("supported-configurations.json not found at $jsonFile") + } + + def jsonSlurper = new JsonSlurper() + def supportedConfigs = jsonSlurper.parse(jsonFile) + + if (!(supportedConfigs instanceof Map) || !supportedConfigs.containsKey("supportedConfigurations")) { + throw new GradleException("supported-configurations.json must contain a top-level 'supportedConfigurations' object") + } + + // Extract keys under "supportedConfigurations" + Set supportedTokenSet = supportedConfigs.supportedConfigurations.keySet() + + def javaFiles = fileTree("$projectDir") { + include '**/src/main/java/**/*.java' + } + + def unsupportedTokensFound = [] + + javaFiles.each { file -> + Path relativePath = repoRoot.relativize(file.toPath()) + def lines = file.readLines() + def inBlockComment = false + lines.eachWithIndex { line, idx -> + def trimmed = line.trim() + + // Skip single-line comments + if (trimmed.startsWith("//")) return + + // Track block comment state + if (trimmed.contains("/*")) inBlockComment = true + if (inBlockComment) { + if (trimmed.contains("*/")) inBlockComment = false + return + } + + def matcher = (line =~ /"DD_.+?"/) + matcher.each { matchedToken -> + def token = matchedToken[1..-2] // remove quotes + if (!supportedTokenSet.contains(token)) { + unsupportedTokensFound << "Unsupported token '$token' found in ${relativePath}:${idx + 1}" + } + } + } + } + + if (!unsupportedTokensFound.isEmpty()) { + unsupportedTokensFound.each { logger.error(it) } + throw new GradleException("Unsupported DD_ tokens found! See errors above.") + } else { + logger.lifecycle("All DD_ tokens are supported.") + } + } +} + +tasks.named('spotlessCheck') { + dependsOn tasks.named('logEnvVarUsages') +} + +tasks.named('spotlessApply') { + dependsOn tasks.named('logEnvVarUsages') +} diff --git a/internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java b/internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java deleted file mode 100644 index 250039e4347..00000000000 --- a/internal-api/src/main/java/datadog/trace/api/ParseSupportedConfigurations.java +++ /dev/null @@ -1,52 +0,0 @@ -package datadog.trace.api; - -import datadog.json.JsonMapper; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.IOException; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Scanner; - -public class ParseSupportedConfigurations { - public final Map fileData; - public static Map aliasMapping; - public static final List supportedConfigurations; - public static final Map deprecatedConfigurations; - private static final Logger log = LoggerFactory.getLogger(ParseSupportedConfigurations.class); - - public ParseSupportedConfigurations(String filename) { - String jsonString; - try { - InputStream in = getClass().getClassLoader().getResourceAsStream(filename); - jsonString = new Scanner(in, "UTF-8").useDelimiter("\\A").next(); - fileData = JsonMapper.fromJsonToMap(jsonString); - } catch (IOException e) { - throw new RuntimeException("Failed to read " + filename, e); - } - supportedConfigurations = new ArrayList<>(((Map>) fileData.get("supportedConfigurations")).keySet()); - aliasToConfig(); - deprecatedConfigurations = (Map) fileData.get("deprecated"); - } - - private void aliasToConfig(){ - aliasMapping = new HashMap<>(); - Map> aliases = (Map>) fileData.get("aliases"); - for (String env : aliases.keySet()){ - for (String alias : aliases.get(env)){ - if (aliasMapping.containsKey(alias)){ - log.info("{} is listed as an alias of {} when it already exists as an alias of {}", alias, env, aliasMapping.get(alias)); - } else { - aliasMapping.put(alias, env); - } - } - } - } - - - -} diff --git a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java index b13adc60fb1..4ac60766210 100644 --- a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java +++ b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java @@ -1,5 +1,6 @@ package datadog.trace.api; +import datadog.environment.ConfigHelper; import datadog.trace.api.env.CapturedEnvironment; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; import datadog.trace.util.TraceUtils; @@ -27,7 +28,7 @@ public class ProcessTags { public static final String ENTRYPOINT_WORKDIR = "entrypoint.workdir"; // visible for testing - static Function envGetter = System::getenv; + static Function envGetter = ConfigHelper::getEnvironmentVariable; private static class Lazy { // the tags are used to compute a hash for dsm hence that map must be sorted. diff --git a/internal-api/src/main/java/datadog/trace/util/PidHelper.java b/internal-api/src/main/java/datadog/trace/util/PidHelper.java index 0fafaf8df1c..79d9b3b95ce 100644 --- a/internal-api/src/main/java/datadog/trace/util/PidHelper.java +++ b/internal-api/src/main/java/datadog/trace/util/PidHelper.java @@ -1,5 +1,6 @@ package datadog.trace.util; +import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import de.thetaphi.forbiddenapis.SuppressForbidden; @@ -75,12 +76,15 @@ private static String getTempDir() { if (OperatingSystem.isLinux()) { return "/tmp"; } else if (OperatingSystem.isWindows()) { - return Stream.of(System.getenv("TMP"), System.getenv("TEMP"), System.getenv("USERPROFILE")) + return Stream.of( + EnvironmentVariables.get("TMP"), + EnvironmentVariables.get("TEMP"), + EnvironmentVariables.get("USERPROFILE")) .filter(String::isEmpty) .findFirst() .orElse("C:\\Windows"); } else if (OperatingSystem.isMacOs()) { - return System.getenv("TMPDIR"); + return EnvironmentVariables.get("TMPDIR"); } else { return System.getProperty("java.io.tmpdir"); } diff --git a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java index bf71f4971f6..1ff5b092ac7 100644 --- a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java +++ b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java @@ -2,6 +2,7 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; +import datadog.environment.EnvironmentVariables; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; @@ -306,7 +307,7 @@ private TempLocationManager() { static String getBaseTempDirName() { String userName = System.getProperty("user.name"); // unlikely, but fall-back to system env based user name - userName = userName == null ? System.getenv("USER") : userName; + userName = userName == null ? EnvironmentVariables.get("USER") : userName; // make sure we do not have any illegal characters in the user name userName = userName != null ? userName.replace('.', '_').replace('/', '_').replace(' ', '_') : null; diff --git a/internal-api/src/main/resources/supportedConfigurations.json b/internal-api/src/main/resources/supportedConfigurations.json deleted file mode 100644 index 6f701e48323..00000000000 --- a/internal-api/src/main/resources/supportedConfigurations.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "supportedConfigurations": { - "DD_AAS_DOTNET_EXTENSION_VERSION": ["A"], - "DD_ACTION_EXECUTION_ID": ["A"] - }, - "aliases": { - "DD_AGENT_HOST": ["DD_TRACE_AGENT_HOSTNAME"], - "DD_API_KEY": ["DATADOG_API_KEY"] - }, - "deprecations": { - "DD_PROFILING_EXPERIMENTAL_ENDPOINT_COLLECTION_ENABLED": "DD_PROFILING_ENDPOINT_COLLECTION_ENABLED", - "DD_PROFILING_EXPERIMENTAL_CPU_ENABLED": "DD_PROFILING_CPU_ENABLED" - } -} diff --git a/internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy deleted file mode 100644 index 99c86a5c719..00000000000 --- a/internal-api/src/test/groovy/datadog/trace/api/ParseSupportedConfigurationsTest.groovy +++ /dev/null @@ -1,14 +0,0 @@ -package datadog.trace.api - -import spock.lang.Specification - -class ParseSupportedConfigurationsTest extends Specification{ - - def "test parsing supportedConfigurations"() { - when: - def parseSupportedConfigs = new ParseSupportedConfigurations("supportedConfigurations.json") - - then: - parseSupportedConfigs.supportedConfigs != null - } -} diff --git a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java index 0b4360b9f76..f903feb1aef 100644 --- a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java +++ b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java @@ -2,6 +2,7 @@ import datadog.common.container.ContainerInfo; import datadog.communication.ddagent.TracerVersion; +import datadog.environment.EnvironmentVariables; import datadog.telemetry.api.DistributionSeries; import datadog.telemetry.api.Integration; import datadog.telemetry.api.LogMessage; @@ -111,9 +112,9 @@ public void writeProducts() { } public void writeInstallSignature() { - String installId = System.getenv("DD_INSTRUMENTATION_INSTALL_ID"); - String installType = System.getenv("DD_INSTRUMENTATION_INSTALL_TYPE"); - String installTime = System.getenv("DD_INSTRUMENTATION_INSTALL_TIME"); + String installId = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_ID"); + String installType = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_TYPE"); + String installTime = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_TIME"); try { requestBody.writeInstallSignature(installId, installType, installTime); diff --git a/utils/container-utils/build.gradle.kts b/utils/container-utils/build.gradle.kts index 61877cbcfc9..9f78ea435e7 100644 --- a/utils/container-utils/build.gradle.kts +++ b/utils/container-utils/build.gradle.kts @@ -6,6 +6,7 @@ apply(from = "$rootDir/gradle/java.gradle") dependencies { implementation(libs.slf4j) + implementation(project(":components:environment")) testImplementation(project(":utils:test-utils")) } diff --git a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java index 41c82b57e31..a068e6d49c2 100644 --- a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java +++ b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java @@ -1,5 +1,6 @@ package datadog.common.container; +import datadog.environment.EnvironmentVariables; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.File; @@ -12,7 +13,7 @@ public class ServerlessInfo { private final boolean hasExtension; private ServerlessInfo(final String extensionPath) { - this.functionName = System.getenv(AWS_FUNCTION_VARIABLE); + this.functionName = EnvironmentVariables.get(AWS_FUNCTION_VARIABLE); if (null == extensionPath) { this.hasExtension = false; } else { From 96e2546f570a94cbe5b15a233deb654816ce31bc Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 15 Jul 2025 16:35:20 -0400 Subject: [PATCH 03/47] Fixing java6 incompatibility with EnvironmentVariables component --- .../src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java b/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java index 97043834f55..506bf60e2d6 100644 --- a/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java +++ b/dd-java-agent/src/main/java6/datadog/trace/bootstrap/AgentPreCheck.java @@ -1,6 +1,5 @@ package datadog.trace.bootstrap; -import datadog.environment.EnvironmentVariables; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.BufferedReader; import java.io.InputStream; @@ -90,6 +89,7 @@ private static boolean compatible() { return compatible(javaVersion, javaHome, System.err); } + @SuppressForbidden // Reachable for testing static boolean compatible(String javaVersion, String javaHome, PrintStream output) { int majorJavaVersion = parseJavaMajorVersion(javaVersion); @@ -102,7 +102,7 @@ static boolean compatible(String javaVersion, String javaHome, PrintStream outpu reportIncompatibleJava(javaVersion, javaHome, agentVersion, output); - String forwarderPath = EnvironmentVariables.get("DD_TELEMETRY_FORWARDER_PATH"); + String forwarderPath = System.getenv("DD_TELEMETRY_FORWARDER_PATH"); if (forwarderPath != null) { sendTelemetry(forwarderPath, javaVersion, agentVersion); } From 6a87970f06c2811c4615b7de926d8cfc5a8594db Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 17 Jul 2025 14:15:22 -0400 Subject: [PATCH 04/47] parsing JSON at buildtime --- components/environment/build.gradle.kts | 36 ++++- .../ParseSupportedConfigurations.java | 142 ++++++++++++++++++ .../resources/supported-configurations.json | 0 .../test-supported-configurations.json | 0 .../datadog/environment/ConfigHelper.java | 33 ++-- .../environment/EnvironmentVariables.java | 3 +- .../ParseSupportedConfigurations.java | 59 -------- .../ParseSupportedConfigurationsTest.java | 36 ++--- .../java/datadog/trace/bootstrap/Agent.java | 5 +- .../java/datadog/trace/bootstrap/Library.java | 4 +- .../civisibility/CiVisibilityServices.java | 3 + .../logging/ddlogger/DDLoggerFactory.java | 4 +- .../instrumentation/maven3/MavenUtils.java | 5 +- .../trace/bootstrap/AgentBootstrap.java | 8 +- gradle/logEnvVarUsages.gradle | 2 +- .../main/java/datadog/trace/api/Config.java | 4 +- .../java/datadog/trace/api/ProcessTags.java | 3 + .../trace/api/env/CapturedEnvironment.java | 6 +- .../config/provider/AgentArgsInjector.java | 3 +- .../provider/EnvironmentConfigSource.java | 4 +- .../provider/OtelEnvironmentConfigSource.java | 3 +- .../config/provider/StableConfigParser.java | 6 +- .../java/datadog/trace/util/PidHelper.java | 10 +- .../trace/util/TempLocationManager.java | 4 +- .../datadog/telemetry/TelemetryRequest.java | 8 +- .../common/container/ServerlessInfo.java | 4 +- 26 files changed, 258 insertions(+), 137 deletions(-) create mode 100644 components/environment/src/generator/java/datadog/environment/ParseSupportedConfigurations.java rename components/environment/src/{main => generator}/resources/supported-configurations.json (100%) rename components/environment/src/{main => generator}/resources/test-supported-configurations.json (100%) delete mode 100644 components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index 375a1d8e83a..80199d18672 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -3,13 +3,45 @@ plugins { id("com.gradleup.shadow") } +sourceSets { + create("generator") { + java.srcDir("src/generator/java") + } + val main by getting { + java { + srcDir("build/generated/sources/supported") + } + } +} + dependencies { - implementation(project(":components:json")) - implementation("org.slf4j:slf4j-api:1.7.36") + "generatorImplementation"("com.fasterxml.jackson.core:jackson-databind:2.15.2") + "generatorImplementation"("org.slf4j:slf4j-api:1.7.36") } apply(from = "$rootDir/gradle/java.gradle") +val compileGeneratorJava = tasks.named("compileGeneratorJava") + +val generateSupportedConfigurations by tasks.registering(JavaExec::class) { + // We can run the generator with the main sourceSet runtimeClasspath + dependsOn(compileGeneratorJava) + mainClass.set("datadog.environment.ParseSupportedConfigurations") + classpath = sourceSets["generator"].runtimeClasspath + + val outputFile = layout.buildDirectory.file("generated/sources/supported/GeneratedSupportedConfigurations.java") + args("supported-configurations.json", outputFile.get().asFile.absolutePath) + + doFirst { + outputFile.get().asFile.parentFile.mkdirs() + } +} +// Ensure Java compilation depends on the generated sources +sourceSets["main"].java.srcDir(layout.buildDirectory.dir("generated/sources/supported")) + +tasks.named("compileJava") { + dependsOn(generateSupportedConfigurations) +} /* * Add an addition gradle configuration to be consumed by bootstrap only. * "datadog.trace." prefix is required to be excluded from Jacoco instrumentation. diff --git a/components/environment/src/generator/java/datadog/environment/ParseSupportedConfigurations.java b/components/environment/src/generator/java/datadog/environment/ParseSupportedConfigurations.java new file mode 100644 index 00000000000..9d10fc60663 --- /dev/null +++ b/components/environment/src/generator/java/datadog/environment/ParseSupportedConfigurations.java @@ -0,0 +1,142 @@ +package datadog.environment; + +import com.fasterxml.jackson.databind.ObjectMapper; +import java.io.IOException; +import java.io.InputStream; +import java.io.PrintWriter; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; + +public class ParseSupportedConfigurations { + + public static void main(String[] args) { + String supportedConfigurationsFilename = + args[0]; // e.g., "resources/supported-configurations.json" + String generatedMappingPath = args[1]; // e.g., + // "build/generated-sources/datadog/environment/GeneratedSupportedConfigurations.java" + + String jsonString; + try { + + InputStream in = + ParseSupportedConfigurations.class + .getClassLoader() + .getResourceAsStream(supportedConfigurationsFilename); + if (in == null) { + throw new IllegalArgumentException( + "Resource not found: " + supportedConfigurationsFilename); + } + + ObjectMapper mapper = new ObjectMapper(); + Map fileData = mapper.readValue(in, Map.class); + + Map> supported = + (Map>) fileData.get("supportedConfigurations"); + Map> aliases = (Map>) fileData.get("aliases"); + Map deprecated = (Map) fileData.get("deprecations"); + + Map aliasMapping = new HashMap<>(); + for (Map.Entry> entry : aliases.entrySet()) { + for (String alias : entry.getValue()) { + aliasMapping.put(alias, entry.getKey()); + } + } + generateJavaFile(generatedMappingPath, supported.keySet(), aliases, aliasMapping, deprecated); + } catch (IOException e) { + throw new RuntimeException("Failed to read " + supportedConfigurationsFilename, e); + } + } + + private static void generateJavaFile( + String outputPath, + Set supported, + Map> aliases, + Map aliasMapping, + Map deprecated) + throws IOException { + try (PrintWriter out = new PrintWriter(Files.newBufferedWriter(Paths.get(outputPath)))) { + out.println("package datadog.environment;"); + out.println(); + out.println("import java.util.*;"); + out.println(); + out.println("public final class GeneratedSupportedConfigurations {"); + + // Supported set using Arrays.asList and HashSet + out.println(" public static final Set SUPPORTED;"); + out.println(); + + // ALIASES map + out.println(" public static final Map> ALIASES;"); + out.println(); + + // ALIAS_MAPPING map + out.println(" public static final Map ALIAS_MAPPING;"); + out.println(); + + // DEPRECATED map + out.println(" public static final Map DEPRECATED;"); + out.println(); + + // Static initializer block + out.println(" static {"); + + // Initialize SUPPORTED + out.print(" Set supportedSet = new HashSet<>(Arrays.asList("); + Iterator supportedIter = supported.iterator(); + while (supportedIter.hasNext()) { + String key = supportedIter.next(); + out.print("\"" + key + "\""); + if (supportedIter.hasNext()) { + out.print(", "); + } + } + out.println("));"); + out.println(" SUPPORTED = Collections.unmodifiableSet(supportedSet);"); + out.println(); + + // Initialize ALIASES + out.println(" Map> aliasesMap = new HashMap<>();"); + for (Map.Entry> entry : aliases.entrySet()) { + out.printf( + " aliasesMap.put(\"%s\", Collections.unmodifiableList(Arrays.asList(%s)));\n", + entry.getKey(), quoteList(entry.getValue())); + } + out.println(" ALIASES = Collections.unmodifiableMap(aliasesMap);"); + out.println(); + + // Initialize ALIAS_MAPPING + out.println(" Map aliasMappingMap = new HashMap<>();"); + for (Map.Entry entry : aliasMapping.entrySet()) { + out.printf(" aliasMappingMap.put(\"%s\", \"%s\");\n", entry.getKey(), entry.getValue()); + } + out.println(" ALIAS_MAPPING = Collections.unmodifiableMap(aliasMappingMap);"); + out.println(); + + // Initialize DEPRECATED + out.println(" Map deprecatedMap = new HashMap<>();"); + for (Map.Entry entry : deprecated.entrySet()) { + out.printf(" deprecatedMap.put(\"%s\", \"%s\");\n", entry.getKey(), entry.getValue()); + } + out.println(" DEPRECATED = Collections.unmodifiableMap(deprecatedMap);"); + + out.println(" }"); // end static block + out.println("}"); // end class + } + } + + private static String quoteList(List list) { + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < list.size(); i++) { + sb.append("\"").append(list.get(i)).append("\""); + if (i < list.size() - 1) { + sb.append(", "); + } + } + return sb.toString(); + } +} diff --git a/components/environment/src/main/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json similarity index 100% rename from components/environment/src/main/resources/supported-configurations.json rename to components/environment/src/generator/resources/supported-configurations.json diff --git a/components/environment/src/main/resources/test-supported-configurations.json b/components/environment/src/generator/resources/test-supported-configurations.json similarity index 100% rename from components/environment/src/main/resources/test-supported-configurations.json rename to components/environment/src/generator/resources/test-supported-configurations.json diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index 06c001572d1..11edc67d3ae 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -10,9 +10,6 @@ public class ConfigHelper { // Parse the supported-configurations JSON once using ParseSupportedConfigurations. public static Map getEnvironmentVariables() { - // TODO: Remove once JSON parsing is separate from data access - ParseSupportedConfigurations.loadSupportedConfigurations("supported-configurations.json"); - Map env = System.getenv(); Map configs = new LinkedHashMap<>(); for (Map.Entry entry : env.entrySet()) { @@ -20,19 +17,19 @@ public static Map getEnvironmentVariables() { String value = entry.getValue(); if (key.startsWith("DD_") || key.startsWith("OTEL_") - || ParseSupportedConfigurations.aliasMapping.containsKey(key)) { - if (ParseSupportedConfigurations.supportedConfigurations.contains(key)) { + || GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(key)) { + if (GeneratedSupportedConfigurations.SUPPORTED.contains(key)) { configs.put(key, value); // If this environment variable is the alias of another, and we haven't processed the // original environment variable yet, handle it here. - } else if (ParseSupportedConfigurations.aliasMapping.containsKey(key) - && !configs.containsKey(ParseSupportedConfigurations.aliasMapping.get(key))) { + } else if (GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(key) + && !configs.containsKey(GeneratedSupportedConfigurations.ALIAS_MAPPING.get(key))) { List aliasList = - ParseSupportedConfigurations.aliases.get( - ParseSupportedConfigurations.aliasMapping.get(key)); + GeneratedSupportedConfigurations.ALIASES.get( + GeneratedSupportedConfigurations.ALIAS_MAPPING.get(key)); for (String alias : aliasList) { if (env.containsKey(alias)) { - configs.put(ParseSupportedConfigurations.aliasMapping.get(key), env.get(alias)); + configs.put(GeneratedSupportedConfigurations.ALIAS_MAPPING.get(key), env.get(alias)); break; } } @@ -52,20 +49,18 @@ public static Map getEnvironmentVariables() { } public static String getEnvironmentVariable(String name) { - // TODO: Remove once JSON parsing is separate from data access - ParseSupportedConfigurations.loadSupportedConfigurations("supported-configurations.json"); - if ((name.startsWith("DD_") || name.startsWith("OTEL_") - || ParseSupportedConfigurations.aliasMapping.containsKey(name)) - && !ParseSupportedConfigurations.supportedConfigurations.contains(name)) { + || GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(name)) + && !GeneratedSupportedConfigurations.SUPPORTED.contains(name)) { throw new IllegalArgumentException( "Missing " + name + " env/configuration in supported-configurations.json file."); } - String config = System.getenv(name); - if (config == null && ParseSupportedConfigurations.aliases.containsKey(name)) { - for (String alias : ParseSupportedConfigurations.aliases.get(name)) { - String aliasValue = System.getenv(alias); + + String config = EnvironmentVariables.get(name); + if (config == null && GeneratedSupportedConfigurations.ALIASES.containsKey(name)) { + for (String alias : GeneratedSupportedConfigurations.ALIASES.get(name)) { + String aliasValue = EnvironmentVariables.get(alias); if (aliasValue != null) { return aliasValue; } diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index d7921ffa701..aeefcb926bc 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -36,7 +36,8 @@ public static String getOrDefault(String name, String defaultValue) { return defaultValue; } try { - String value = ConfigHelper.getEnvironmentVariable(name); + // String value = ConfigHelper.getEnvironmentVariable(name); + String value = System.getenv(name); return value == null ? defaultValue : value; } catch (SecurityException e) { return defaultValue; diff --git a/components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java b/components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java deleted file mode 100644 index 35650890779..00000000000 --- a/components/environment/src/main/java/datadog/environment/ParseSupportedConfigurations.java +++ /dev/null @@ -1,59 +0,0 @@ -package datadog.environment; - -import datadog.json.JsonMapper; -import java.io.IOException; -import java.io.InputStream; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Scanner; -import java.util.Set; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -// TODO: Make this class run at buildtime and generate a static class with the data -public class ParseSupportedConfigurations { - public static Map fileData; - public static Map aliasMapping; - public static Set supportedConfigurations; - public static Map deprecatedConfigurations; - public static Map> aliases; - private static final Logger log = LoggerFactory.getLogger(ParseSupportedConfigurations.class); - - public static void loadSupportedConfigurations(String filename) { - String jsonString; - try { - InputStream in = - ParseSupportedConfigurations.class.getClassLoader().getResourceAsStream(filename); - jsonString = new Scanner(in, "UTF-8").useDelimiter("\\A").next(); - fileData = JsonMapper.fromJsonToMap(jsonString); - supportedConfigurations = - new HashSet<>( - ((Map>) fileData.get("supportedConfigurations")).keySet()); - aliasToConfig(); - deprecatedConfigurations = (Map) fileData.get("deprecated"); - aliases = (Map>) fileData.get("aliases"); - } catch (IOException e) { - throw new RuntimeException("Failed to read " + filename, e); - } - } - - private static void aliasToConfig() { - aliasMapping = new HashMap<>(); - Map> aliases = (Map>) fileData.get("aliases"); - for (String env : aliases.keySet()) { - for (String alias : aliases.get(env)) { - if (aliasMapping.containsKey(alias)) { - log.info( - "{} is listed as an alias of {} when it already exists as an alias of {}", - alias, - env, - aliasMapping.get(alias)); - } else { - aliasMapping.put(alias, env); - } - } - } - } -} diff --git a/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java b/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java index 07816d5e318..334de702a3d 100644 --- a/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java +++ b/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java @@ -1,18 +1,18 @@ -package datadog.environment; - -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import org.junit.jupiter.api.Test; - -class ParseSupportedConfigurationsTest { - @Test - void testParsingRealJsonFile() { - ParseSupportedConfigurations.loadSupportedConfigurations("test-supported-configurations.json"); - - assertTrue(ParseSupportedConfigurations.supportedConfigurations.contains("DD_AGENT_HOST")); - assertEquals( - "DD_AGENT_HOST", ParseSupportedConfigurations.aliasMapping.get("DD_TRACE_AGENT_HOSTNAME")); - assertEquals("NEW_KEY", ParseSupportedConfigurations.deprecatedConfigurations.get("OLD_KEY")); - } -} +// import static org.junit.jupiter.api.Assertions.assertEquals; +// import static org.junit.jupiter.api.Assertions.assertTrue; +// +// import org.junit.jupiter.api.Test; +// +// class ParseSupportedConfigurationsTest { +// @Test +// void testParsingRealJsonFile() { +// +// ParseSupportedConfigurations.loadSupportedConfigurations("test-supported-configurations.json"); +// +// assertTrue(ParseSupportedConfigurations.supportedConfigurations.contains("DD_AGENT_HOST")); +// assertEquals( +// "DD_AGENT_HOST", +// ParseSupportedConfigurations.aliasMapping.get("DD_TRACE_AGENT_HOSTNAME")); +// assertEquals("NEW_KEY", ParseSupportedConfigurations.deprecatedConfigurations.get("OLD_KEY")); +// } +// } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java index d8f09c75089..032e491855c 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java @@ -17,6 +17,7 @@ import static datadog.trace.util.Strings.propertyNameToSystemPropertyName; import static datadog.trace.util.Strings.toEnvVar; +import datadog.environment.ConfigHelper; import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; @@ -1359,7 +1360,7 @@ private static void configureLogger() { } else { logLevel = ddGetProperty("dd.log.level"); if (null == logLevel) { - logLevel = EnvironmentVariables.get("OTEL_LOG_LEVEL"); + logLevel = ConfigHelper.getEnvironmentVariable("OTEL_LOG_LEVEL"); } } @@ -1573,7 +1574,7 @@ private static String getStableConfig(StableConfigSource source, final String sy /** Looks for the "DD_" environment variable equivalent of the given "dd." system property. */ private static String ddGetEnv(final String sysProp) { - return EnvironmentVariables.get(toEnvVar(sysProp)); + return ConfigHelper.getEnvironmentVariable(toEnvVar(sysProp)); } private static boolean okHttpMayIndirectlyLoadJUL() { diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java index 33d202f8b22..baa7c67e066 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java @@ -1,6 +1,6 @@ package datadog.trace.bootstrap; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import java.util.EnumSet; import org.slf4j.Logger; @@ -16,7 +16,7 @@ public enum Library { public static EnumSet detectLibraries(final Logger log) { final EnumSet libraries = EnumSet.noneOf(Library.class); - final String jbossHome = EnvironmentVariables.get("JBOSS_HOME"); + final String jbossHome = ConfigHelper.getEnvironmentVariable("JBOSS_HOME"); if (jbossHome != null) { log.debug("Env - jboss: {}", jbossHome); libraries.add(WILDFLY); diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java index 2cd94ba8799..e85e28d8eb4 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java @@ -1,5 +1,7 @@ package datadog.trace.civisibility; +import static datadog.environment.ConfigHelper.getEnvironmentVariables; + import com.squareup.moshi.JsonAdapter; import com.squareup.moshi.Moshi; import com.squareup.moshi.Types; @@ -34,6 +36,7 @@ import datadog.trace.civisibility.source.LinesResolver; import datadog.trace.civisibility.source.index.*; import datadog.trace.civisibility.utils.ShellCommandExecutor; +import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.File; import java.lang.reflect.Type; import java.net.InetSocketAddress; diff --git a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java index 083d559b711..c58b8e08c79 100644 --- a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java +++ b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java @@ -1,7 +1,7 @@ package datadog.trace.logging.ddlogger; -import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; +import datadog.environment.ConfigHelper; import datadog.trace.api.Platform; import datadog.trace.logging.LogLevel; import datadog.trace.logging.LogLevelSwitcher; @@ -108,7 +108,7 @@ private static boolean isFlagEnabled( if ("false".equalsIgnoreCase(value)) { return false; } - value = EnvironmentVariables.get(envVar); + value = ConfigHelper.getEnvironmentVariable(envVar); if ("true".equalsIgnoreCase(value)) { return true; } diff --git a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java index 3b49dce6841..f7fe3336119 100644 --- a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java +++ b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java @@ -1,6 +1,6 @@ package datadog.trace.instrumentation.maven3; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.trace.api.civisibility.domain.JavaAgent; import datadog.trace.util.MethodHandles; import datadog.trace.util.Strings; @@ -66,7 +66,8 @@ public abstract class MavenUtils { * of the request object */ public static String getCommandLine(MavenSession session) { - String mavenCmdLineArgsEnvVar = EnvironmentVariables.get(MAVEN_CMD_LINE_ARGS_ENVIRONMENT_VAR); + String mavenCmdLineArgsEnvVar = + ConfigHelper.getEnvironmentVariable(MAVEN_CMD_LINE_ARGS_ENVIRONMENT_VAR); if (mavenCmdLineArgsEnvVar != null) { return MVN_CMD_LINE_INVOCATION + mavenCmdLineArgsEnvVar; } diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java index 5e8b8567849..6417ebe6814 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java @@ -2,7 +2,7 @@ import static java.nio.charset.StandardCharsets.UTF_8; -import datadog.trace.bootstrap.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.trace.bootstrap.environment.JavaVirtualMachine; import datadog.trace.bootstrap.environment.SystemProperties; import de.thetaphi.forbiddenapis.SuppressForbidden; @@ -91,7 +91,7 @@ public static void agentmain(final String agentArgs, final Instrumentation inst) } private static BootstrapInitializationTelemetry createInitializationTelemetry() { - String forwarderPath = EnvironmentVariables.get("DD_TELEMETRY_FORWARDER_PATH"); + String forwarderPath = ConfigHelper.getEnvironmentVariable("DD_TELEMETRY_FORWARDER_PATH"); if (forwarderPath == null) { return BootstrapInitializationTelemetry.noOpInstance(); } @@ -165,12 +165,12 @@ private static void agentmainImpl( static boolean getConfig(String configName) { switch (configName) { case LIB_INJECTION_ENABLED_ENV_VAR: - return EnvironmentVariables.get(LIB_INJECTION_ENABLED_ENV_VAR) != null; + return ConfigHelper.getEnvironmentVariable(LIB_INJECTION_ENABLED_ENV_VAR) != null; case LIB_INJECTION_FORCE_SYS_PROP: { String envVarName = LIB_INJECTION_FORCE_SYS_PROP.replace('.', '_').replace('-', '_').toUpperCase(); - String injectionForceFlag = EnvironmentVariables.get(envVarName); + String injectionForceFlag = ConfigHelper.getEnvironmentVariable(envVarName); if (injectionForceFlag == null) { injectionForceFlag = SystemProperties.get(LIB_INJECTION_FORCE_SYS_PROP); } diff --git a/gradle/logEnvVarUsages.gradle b/gradle/logEnvVarUsages.gradle index 45845733ded..c2d22567138 100644 --- a/gradle/logEnvVarUsages.gradle +++ b/gradle/logEnvVarUsages.gradle @@ -7,7 +7,7 @@ tasks.register('logEnvVarUsages') { doLast { def repoRoot = projectDir.toPath() - def jsonFile = file("$projectDir/components/environment/src/main/resources/supported-configurations.json") + def jsonFile = file("$projectDir/components/environment/src/generator/resources/supported-configurations.json") if (!jsonFile.exists()) { throw new GradleException("supported-configurations.json not found at $jsonFile") diff --git a/internal-api/src/main/java/datadog/trace/api/Config.java b/internal-api/src/main/java/datadog/trace/api/Config.java index 1d257c56542..cd5cc1e7592 100644 --- a/internal-api/src/main/java/datadog/trace/api/Config.java +++ b/internal-api/src/main/java/datadog/trace/api/Config.java @@ -633,7 +633,7 @@ import static datadog.trace.util.CollectionUtils.tryMakeImmutableSet; import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import datadog.environment.SystemProperties; @@ -5215,7 +5215,7 @@ private static boolean isWindowsOS() { } private static String getEnv(String name) { - String value = EnvironmentVariables.get(name); + String value = ConfigHelper.getEnvironmentVariable(name); if (value != null) { ConfigCollector.get().put(name, value, ConfigOrigin.ENV); } diff --git a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java index 4ac60766210..eb5dacd16ef 100644 --- a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java +++ b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java @@ -4,6 +4,7 @@ import datadog.trace.api.env.CapturedEnvironment; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; import datadog.trace.util.TraceUtils; +import de.thetaphi.forbiddenapis.SuppressForbidden; import java.nio.file.Path; import java.nio.file.Paths; import java.util.Collections; @@ -17,6 +18,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +@SuppressForbidden public class ProcessTags { private static final Logger LOGGER = LoggerFactory.getLogger(ProcessTags.class); private static boolean enabled = Config.get().isExperimentalPropagateProcessTagsEnabled(); @@ -29,6 +31,7 @@ public class ProcessTags { // visible for testing static Function envGetter = ConfigHelper::getEnvironmentVariable; + // static Function envGetter = System::getenv; private static class Lazy { // the tags are used to compute a hash for dsm hence that map must be sorted. diff --git a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java b/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java index 956db28c2de..200d1037eb2 100644 --- a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java +++ b/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java @@ -1,6 +1,6 @@ package datadog.trace.api.env; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.environment.JavaVirtualMachine; import datadog.trace.api.config.GeneralConfig; import java.io.File; @@ -78,8 +78,8 @@ static void useFixedProcessInfo(final ProcessInfo processInfo) { * autodetection will return either the JAR filename or the java main class. */ private String autodetectServiceName() { - String inAas = EnvironmentVariables.get("DD_AZURE_APP_SERVICES"); - String siteName = EnvironmentVariables.get("WEBSITE_SITE_NAME"); + String inAas = ConfigHelper.getEnvironmentVariable("DD_AZURE_APP_SERVICES"); + String siteName = ConfigHelper.getEnvironmentVariable("WEBSITE_SITE_NAME"); if (("true".equalsIgnoreCase(inAas) || "1".equals(inAas)) && siteName != null) { return siteName; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java index 3254c30db7d..58a511b295a 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java @@ -1,5 +1,6 @@ package datadog.trace.bootstrap.config.provider; +import datadog.environment.ConfigHelper; import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; import datadog.trace.util.Strings; @@ -30,7 +31,7 @@ public static void injectAgentArgsConfig(Map args) { } String envVarName = Strings.toEnvVar(propertyName); - String envVarValue = EnvironmentVariables.get(envVarName); + String envVarValue = ConfigHelper.getEnvironmentVariable(envVarName); if (envVarValue != null) { // env variables should have higher priority than agent arguments continue; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java index c8531f6a094..e8864cad060 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java @@ -3,13 +3,13 @@ import static datadog.trace.api.ConfigOrigin.ENV; import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.trace.api.ConfigOrigin; final class EnvironmentConfigSource extends ConfigProvider.Source { @Override protected String get(String key) { - return EnvironmentVariables.get(propertyNameToEnvironmentVariableName(key)); + return ConfigHelper.getEnvironmentVariable(propertyNameToEnvironmentVariableName(key)); } @Override diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java index 863a59fdcf8..881a0d55312 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java @@ -16,6 +16,7 @@ import static datadog.trace.api.config.TracerConfig.TRACE_SAMPLE_RATE; import static datadog.trace.util.Strings.toEnvVar; +import datadog.environment.ConfigHelper; import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; import datadog.trace.api.ConfigOrigin; @@ -187,7 +188,7 @@ private String getDatadogProperty(String sysProp) { private static String getProperty(String sysProp) { String value = SystemProperties.get(sysProp); if (null == value) { - value = EnvironmentVariables.get(toEnvVar(sysProp)); + value = ConfigHelper.getEnvironmentVariable(toEnvVar(sysProp)); } return value; } diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java index bec1dbe5c38..a07a9d3e3d4 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java @@ -1,6 +1,6 @@ package datadog.trace.bootstrap.config.provider; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; import datadog.trace.bootstrap.config.provider.stableconfig.Rule; import datadog.trace.bootstrap.config.provider.stableconfig.Selector; @@ -155,7 +155,7 @@ static boolean selectorMatch(String origin, List matches, String operato if (key == null) { return false; } - String envValue = EnvironmentVariables.get(key.toUpperCase(Locale.ROOT)); + String envValue = ConfigHelper.getEnvironmentVariable(key.toUpperCase(Locale.ROOT)); return matchOperator(envValue, operator, matches); case "process_arguments": if (key == null) { @@ -231,7 +231,7 @@ private static String processTemplateVar(String templateVar) throws IOException if (envVar.isEmpty()) { throw new IOException("Empty environment variable name in template"); } - String value = EnvironmentVariables.get(envVar.toUpperCase(Locale.ROOT)); + String value = ConfigHelper.getEnvironmentVariable(envVar.toUpperCase(Locale.ROOT)); if (value == null || value.isEmpty()) { return UNDEFINED_VALUE; } diff --git a/internal-api/src/main/java/datadog/trace/util/PidHelper.java b/internal-api/src/main/java/datadog/trace/util/PidHelper.java index 79d9b3b95ce..aaf07f4b9fc 100644 --- a/internal-api/src/main/java/datadog/trace/util/PidHelper.java +++ b/internal-api/src/main/java/datadog/trace/util/PidHelper.java @@ -1,6 +1,6 @@ package datadog.trace.util; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import de.thetaphi.forbiddenapis.SuppressForbidden; @@ -77,14 +77,14 @@ private static String getTempDir() { return "/tmp"; } else if (OperatingSystem.isWindows()) { return Stream.of( - EnvironmentVariables.get("TMP"), - EnvironmentVariables.get("TEMP"), - EnvironmentVariables.get("USERPROFILE")) + ConfigHelper.getEnvironmentVariable("TMP"), + ConfigHelper.getEnvironmentVariable("TEMP"), + ConfigHelper.getEnvironmentVariable("USERPROFILE")) .filter(String::isEmpty) .findFirst() .orElse("C:\\Windows"); } else if (OperatingSystem.isMacOs()) { - return EnvironmentVariables.get("TMPDIR"); + return ConfigHelper.getEnvironmentVariable("TMPDIR"); } else { return System.getProperty("java.io.tmpdir"); } diff --git a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java index 1ff5b092ac7..009a1448aa3 100644 --- a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java +++ b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java @@ -2,7 +2,7 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; @@ -307,7 +307,7 @@ private TempLocationManager() { static String getBaseTempDirName() { String userName = System.getProperty("user.name"); // unlikely, but fall-back to system env based user name - userName = userName == null ? EnvironmentVariables.get("USER") : userName; + userName = userName == null ? ConfigHelper.getEnvironmentVariable("USER") : userName; // make sure we do not have any illegal characters in the user name userName = userName != null ? userName.replace('.', '_').replace('/', '_').replace(' ', '_') : null; diff --git a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java index f903feb1aef..dddc2950458 100644 --- a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java +++ b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java @@ -2,7 +2,7 @@ import datadog.common.container.ContainerInfo; import datadog.communication.ddagent.TracerVersion; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import datadog.telemetry.api.DistributionSeries; import datadog.telemetry.api.Integration; import datadog.telemetry.api.LogMessage; @@ -112,9 +112,9 @@ public void writeProducts() { } public void writeInstallSignature() { - String installId = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_ID"); - String installType = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_TYPE"); - String installTime = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_TIME"); + String installId = ConfigHelper.getEnvironmentVariable("DD_INSTRUMENTATION_INSTALL_ID"); + String installType = ConfigHelper.getEnvironmentVariable("DD_INSTRUMENTATION_INSTALL_TYPE"); + String installTime = ConfigHelper.getEnvironmentVariable("DD_INSTRUMENTATION_INSTALL_TIME"); try { requestBody.writeInstallSignature(installId, installType, installTime); diff --git a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java index a068e6d49c2..1f88d39b0a7 100644 --- a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java +++ b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java @@ -1,6 +1,6 @@ package datadog.common.container; -import datadog.environment.EnvironmentVariables; +import datadog.environment.ConfigHelper; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.File; @@ -13,7 +13,7 @@ public class ServerlessInfo { private final boolean hasExtension; private ServerlessInfo(final String extensionPath) { - this.functionName = EnvironmentVariables.get(AWS_FUNCTION_VARIABLE); + this.functionName = ConfigHelper.getEnvironmentVariable(AWS_FUNCTION_VARIABLE); if (null == extensionPath) { this.hasExtension = false; } else { From b062c960f17cc3089d0c0147923974a53d7d2586 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 17 Jul 2025 15:49:54 -0400 Subject: [PATCH 05/47] fixing invocationtargetexception --- .../src/main/java/datadog/environment/ConfigHelper.java | 3 +-- .../java/datadog/environment/EnvironmentVariables.java | 2 +- .../main/java/datadog/trace/bootstrap/AgentBootstrap.java | 8 ++++---- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index 11edc67d3ae..0b4a31594bb 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -53,8 +53,7 @@ public static String getEnvironmentVariable(String name) { || name.startsWith("OTEL_") || GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(name)) && !GeneratedSupportedConfigurations.SUPPORTED.contains(name)) { - throw new IllegalArgumentException( - "Missing " + name + " env/configuration in supported-configurations.json file."); + System.err.println("Warning: Unsupported environment variable " + name + " detected."); } String config = EnvironmentVariables.get(name); diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index aeefcb926bc..409285caacd 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -36,7 +36,7 @@ public static String getOrDefault(String name, String defaultValue) { return defaultValue; } try { - // String value = ConfigHelper.getEnvironmentVariable(name); + // String value = EnvironmentVariables.get(name); String value = System.getenv(name); return value == null ? defaultValue : value; } catch (SecurityException e) { diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java index 6417ebe6814..584876d0006 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java @@ -2,7 +2,6 @@ import static java.nio.charset.StandardCharsets.UTF_8; -import datadog.environment.ConfigHelper; import datadog.trace.bootstrap.environment.JavaVirtualMachine; import datadog.trace.bootstrap.environment.SystemProperties; import de.thetaphi.forbiddenapis.SuppressForbidden; @@ -44,6 +43,7 @@ *
  • Do dot touch any logging facilities here so we can configure them later * */ +@SuppressForbidden public final class AgentBootstrap { static final String LIB_INJECTION_ENABLED_ENV_VAR = "DD_INJECTION_ENABLED"; static final String LIB_INJECTION_FORCE_SYS_PROP = "dd.inject.force"; @@ -91,7 +91,7 @@ public static void agentmain(final String agentArgs, final Instrumentation inst) } private static BootstrapInitializationTelemetry createInitializationTelemetry() { - String forwarderPath = ConfigHelper.getEnvironmentVariable("DD_TELEMETRY_FORWARDER_PATH"); + String forwarderPath = System.getenv("DD_TELEMETRY_FORWARDER_PATH"); if (forwarderPath == null) { return BootstrapInitializationTelemetry.noOpInstance(); } @@ -165,12 +165,12 @@ private static void agentmainImpl( static boolean getConfig(String configName) { switch (configName) { case LIB_INJECTION_ENABLED_ENV_VAR: - return ConfigHelper.getEnvironmentVariable(LIB_INJECTION_ENABLED_ENV_VAR) != null; + return System.getenv(LIB_INJECTION_ENABLED_ENV_VAR) != null; case LIB_INJECTION_FORCE_SYS_PROP: { String envVarName = LIB_INJECTION_FORCE_SYS_PROP.replace('.', '_').replace('-', '_').toUpperCase(); - String injectionForceFlag = ConfigHelper.getEnvironmentVariable(envVarName); + String injectionForceFlag = System.getenv(envVarName); if (injectionForceFlag == null) { injectionForceFlag = SystemProperties.get(LIB_INJECTION_FORCE_SYS_PROP); } From 6769bda7ba6fa52d8cff71df5c6f2942a2b7cae3 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 17 Jul 2025 16:58:05 -0400 Subject: [PATCH 06/47] spotless --- .../src/generator/resources/supported-configurations.json | 1 + 1 file changed, 1 insertion(+) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 3490fa59061..1f2e5bb5a69 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -394,6 +394,7 @@ "DD_TELEMETRY_DEPENDENCY_RESOLUTION_PERIOD_MILLIS": ["A"], "DD_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE": ["A"], "DD_TELEMETRY_EXTENDED_HEARTBEAT_INTERVAL": ["A"], + "DD_TELEMETRY_FORWARDER_MAX_TAGS": ["A"], "DD_TELEMETRY_FORWARDER_PATH": ["A"], "DD_TELEMETRY_HEARTBEAT_INTERVAL": ["A"], "DD_TELEMETRY_LOG_COLLECTION_ENABLED": ["A"], From 06ed2fd81af4f5cf81a159321ec7737fb1de8dc1 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Fri, 18 Jul 2025 15:33:13 -0400 Subject: [PATCH 07/47] updating linter to include OTEL_ --- .../src/generator/resources/supported-configurations.json | 3 ++- .../src/main/java/datadog/environment/ConfigHelper.java | 3 ++- gradle/logEnvVarUsages.gradle | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 1f2e5bb5a69..a09ad5082ea 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -868,7 +868,8 @@ "DD_USM_ENABLED": ["A"], "DD_VERSION": ["A"], "DD_WRITER_BAGGAGE_INJECT": ["A"], - "DD_WRITER_TYPE": ["A"] + "DD_WRITER_TYPE": ["A"], + "OTEL_LOG_LEVEL": ["A"] }, "aliases": { }, diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index 0b4a31594bb..1bb513448a0 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -53,7 +53,8 @@ public static String getEnvironmentVariable(String name) { || name.startsWith("OTEL_") || GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(name)) && !GeneratedSupportedConfigurations.SUPPORTED.contains(name)) { - System.err.println("Warning: Unsupported environment variable " + name + " detected."); + System.err.println( + "Warning: Missing environment variable " + name + " from supported-configurations.json."); } String config = EnvironmentVariables.get(name); diff --git a/gradle/logEnvVarUsages.gradle b/gradle/logEnvVarUsages.gradle index c2d22567138..b2b6927386a 100644 --- a/gradle/logEnvVarUsages.gradle +++ b/gradle/logEnvVarUsages.gradle @@ -46,7 +46,7 @@ tasks.register('logEnvVarUsages') { return } - def matcher = (line =~ /"DD_.+?"/) + def matcher = (line =~ /"(?:DD_|OTEL_)[A-Za-z0-9_]+"/) matcher.each { matchedToken -> def token = matchedToken[1..-2] // remove quotes if (!supportedTokenSet.contains(token)) { From 8dd50e0399eb1afb492d6caa051eff654ce61b29 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Fri, 18 Jul 2025 16:11:37 -0400 Subject: [PATCH 08/47] adding EnvironmentVariables linter --- .../environment/EnvironmentVariables.java | 1 - dd-java-agent/build.gradle | 1 + .../BootstrapInitializationTelemetry.java | 4 +- gradle/logEnvVarUsages.gradle | 38 +++++++++++++++++++ 4 files changed, 41 insertions(+), 3 deletions(-) diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index 409285caacd..b99900e0d85 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -36,7 +36,6 @@ public static String getOrDefault(String name, String defaultValue) { return defaultValue; } try { - // String value = EnvironmentVariables.get(name); String value = System.getenv(name); return value == null ? defaultValue : value; } catch (SecurityException e) { diff --git a/dd-java-agent/build.gradle b/dd-java-agent/build.gradle index 891e58fc79c..ef089765b8e 100644 --- a/dd-java-agent/build.gradle +++ b/dd-java-agent/build.gradle @@ -35,6 +35,7 @@ tasks.compileJava.dependsOn compileMain_java6Java dependencies { main_java6CompileOnly 'de.thetaphi:forbiddenapis:3.8' + implementation project(':components:environment') testImplementation sourceSets.main_java6.output } diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java index 007e926d089..2241ec03610 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java @@ -1,10 +1,10 @@ package datadog.trace.bootstrap; +import datadog.environment.ConfigHelper; import static java.util.Collections.emptyList; import static java.util.Collections.singletonList; import datadog.json.JsonWriter; -import datadog.trace.bootstrap.environment.EnvironmentVariables; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.Closeable; import java.io.OutputStream; @@ -147,7 +147,7 @@ public void onError(String reasonCode) { } private int maxTags() { - String maxTags = EnvironmentVariables.get("DD_TELEMETRY_FORWARDER_MAX_TAGS"); + String maxTags = ConfigHelper.getEnvironmentVariable("DD_TELEMETRY_FORWARDER_MAX_TAGS"); if (maxTags != null) { try { diff --git a/gradle/logEnvVarUsages.gradle b/gradle/logEnvVarUsages.gradle index b2b6927386a..085fd3c1faa 100644 --- a/gradle/logEnvVarUsages.gradle +++ b/gradle/logEnvVarUsages.gradle @@ -65,10 +65,48 @@ tasks.register('logEnvVarUsages') { } } +tasks.register('checkEnvironmentVariablesUsage') { + group = "verification" + description = "Scans src/main/java for direct usages of EnvironmentVariables.get(...)" + + doLast { + def pattern = ~/EnvironmentVariables\.get\s*\(/ + def repoRoot = projectDir.toPath() + + def javaFiles = fileTree(projectDir) { + include '**/src/main/java/**/*.java' + + // Exclude specific files (relative to projectDir) + exclude 'components/environment/src/main/java/datadog/environment/ConfigHelper.java' + } + + def matches = [] + + javaFiles.each { file -> + def relativePath = repoRoot.relativize(file.toPath()) + file.eachLine { line, index -> + if (line =~ pattern) { + matches << "${relativePath}:${index + 1} -> ${line.trim()}" + } + } + } + + if (!matches.isEmpty()) { + println "\n❌ Found forbidden usages of EnvironmentVariables.get(...):" + matches.each { println it } + throw new GradleException("Forbidden usage of EnvironmentVariables.get(...) found in Java files.") + } else { + println "✅ No forbidden EnvironmentVariables.get(...) usages found in src/main/java." + } + } +} + tasks.named('spotlessCheck') { dependsOn tasks.named('logEnvVarUsages') + dependsOn tasks.named('checkEnvironmentVariablesUsage') } tasks.named('spotlessApply') { dependsOn tasks.named('logEnvVarUsages') + dependsOn tasks.named('checkEnvironmentVariablesUsage') } From 9660b1a36e36c7d67360672b3dbd49ac3c5017c6 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 23 Jul 2025 13:34:36 -0400 Subject: [PATCH 09/47] adding flag for strictness --- build.gradle | 2 +- .../datadog/environment/ConfigHelper.java | 13 +++++- .../trace/api/config/GeneralConfig.java | 2 + ...es.gradle => configInversionLinter.gradle} | 5 ++- .../main/java/datadog/trace/api/Config.java | 10 +++++ .../config/provider/ConfigProvider.java | 42 +++++++++++++------ 6 files changed, 56 insertions(+), 18 deletions(-) rename gradle/{logEnvVarUsages.gradle => configInversionLinter.gradle} (94%) diff --git a/build.gradle b/build.gradle index 976a929ad8e..d6b4e2d355a 100644 --- a/build.gradle +++ b/build.gradle @@ -66,7 +66,7 @@ spotlessPredeclare { } } apply from: "$rootDir/gradle/spotless.gradle" -apply from: "$rootDir/gradle/logEnvVarUsages.gradle" +apply from: "$rootDir/gradle/configInversionLinter.gradle" def compileTask = tasks.register("compile") diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index 1bb513448a0..33120cb4213 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -7,7 +7,15 @@ @SuppressForbidden public class ConfigHelper { - // Parse the supported-configurations JSON once using ParseSupportedConfigurations. + private static boolean configInversionStrict; + + public static void setConfigInversionStrict(boolean configInversionStrict) { + ConfigHelper.configInversionStrict = configInversionStrict; + } + + public static boolean isConfigInversionStrict() { + return configInversionStrict; + } public static Map getEnvironmentVariables() { Map env = System.getenv(); @@ -52,7 +60,8 @@ public static String getEnvironmentVariable(String name) { if ((name.startsWith("DD_") || name.startsWith("OTEL_") || GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(name)) - && !GeneratedSupportedConfigurations.SUPPORTED.contains(name)) { + && !GeneratedSupportedConfigurations.SUPPORTED.contains(name) + && configInversionStrict) { System.err.println( "Warning: Missing environment variable " + name + " from supported-configurations.json."); } diff --git a/dd-trace-api/src/main/java/datadog/trace/api/config/GeneralConfig.java b/dd-trace-api/src/main/java/datadog/trace/api/config/GeneralConfig.java index 588854a2069..73b84917230 100644 --- a/dd-trace-api/src/main/java/datadog/trace/api/config/GeneralConfig.java +++ b/dd-trace-api/src/main/java/datadog/trace/api/config/GeneralConfig.java @@ -111,5 +111,7 @@ public final class GeneralConfig { public static final String SSI_INJECTION_FORCE = "inject.force"; public static final String INSTRUMENTATION_SOURCE = "instrumentation.source"; + public static final String CONFIG_INVERSION_STRICT = "config.inversion.strict"; + private GeneralConfig() {} } diff --git a/gradle/logEnvVarUsages.gradle b/gradle/configInversionLinter.gradle similarity index 94% rename from gradle/logEnvVarUsages.gradle rename to gradle/configInversionLinter.gradle index 085fd3c1faa..75ac7bab88a 100644 --- a/gradle/logEnvVarUsages.gradle +++ b/gradle/configInversionLinter.gradle @@ -77,6 +77,7 @@ tasks.register('checkEnvironmentVariablesUsage') { include '**/src/main/java/**/*.java' // Exclude specific files (relative to projectDir) + exclude '**/build/**' exclude 'components/environment/src/main/java/datadog/environment/ConfigHelper.java' } @@ -92,11 +93,11 @@ tasks.register('checkEnvironmentVariablesUsage') { } if (!matches.isEmpty()) { - println "\n❌ Found forbidden usages of EnvironmentVariables.get(...):" + println "\nFound forbidden usages of EnvironmentVariables.get(...):" matches.each { println it } throw new GradleException("Forbidden usage of EnvironmentVariables.get(...) found in Java files.") } else { - println "✅ No forbidden EnvironmentVariables.get(...) usages found in src/main/java." + println "No forbidden EnvironmentVariables.get(...) usages found in src/main/java." } } } diff --git a/internal-api/src/main/java/datadog/trace/api/Config.java b/internal-api/src/main/java/datadog/trace/api/Config.java index cd5cc1e7592..adec06a6a47 100644 --- a/internal-api/src/main/java/datadog/trace/api/Config.java +++ b/internal-api/src/main/java/datadog/trace/api/Config.java @@ -1204,6 +1204,8 @@ public static String getHostName() { private final boolean telemetryDebugRequestsEnabled; + private final boolean configInversionStrict; + private final boolean agentlessLogSubmissionEnabled; private final int agentlessLogSubmissionQueueSize; private final String agentlessLogSubmissionLevel; @@ -2009,6 +2011,8 @@ PROFILING_DATADOG_PROFILER_ENABLED, isDatadogProfilerSafeInCurrentEnvironment()) DEFAULT_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE); clientIpEnabled = configProvider.getBoolean(CLIENT_IP_ENABLED, DEFAULT_CLIENT_IP_ENABLED); + configInversionStrict = ConfigHelper.isConfigInversionStrict(); + appSecReportingInband = configProvider.getBoolean(APPSEC_REPORTING_INBAND, DEFAULT_APPSEC_REPORTING_INBAND); appSecRulesFile = configProvider.getString(APPSEC_RULES_FILE, null); @@ -3484,6 +3488,10 @@ public boolean isClientIpEnabled() { return clientIpEnabled; } + public boolean isConfigInversionStrict() { + return configInversionStrict; + } + public ProductActivation getAppSecActivation() { return instrumenterConfig.getAppSecActivation(); } @@ -5641,6 +5649,8 @@ public String toString() { + grpcClientErrorStatuses + ", clientIpEnabled=" + clientIpEnabled + + ", configInversionStrict=" + + configInversionStrict + ", appSecReportingInband=" + appSecReportingInband + ", appSecRulesFile='" diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java index 1edeb072c80..cef067f32ce 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java @@ -1,7 +1,9 @@ package datadog.trace.bootstrap.config.provider; import static datadog.trace.api.config.GeneralConfig.CONFIGURATION_FILE; +import static datadog.trace.api.config.GeneralConfig.CONFIG_INVERSION_STRICT; +import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; import datadog.trace.api.ConfigCollector; import datadog.trace.api.ConfigOrigin; @@ -374,9 +376,14 @@ public static ConfigProvider getInstance() { } public static ConfigProvider createDefault() { - Properties configProperties = - loadConfigurationFile( - new ConfigProvider(new SystemPropertiesConfigSource(), new EnvironmentConfigSource())); + ConfigProvider minimalProvider = + new ConfigProvider(new SystemPropertiesConfigSource(), new EnvironmentConfigSource()); + + // TODO: Set default value to false before merging + ConfigHelper.setConfigInversionStrict( + minimalProvider.getBoolean(CONFIG_INVERSION_STRICT, true)); + + Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { return new ConfigProvider( new SystemPropertiesConfigSource(), @@ -398,10 +405,14 @@ public static ConfigProvider createDefault() { } public static ConfigProvider withoutCollector() { - Properties configProperties = - loadConfigurationFile( - new ConfigProvider( - false, new SystemPropertiesConfigSource(), new EnvironmentConfigSource())); + ConfigProvider minimalProvider = + new ConfigProvider( + false, new SystemPropertiesConfigSource(), new EnvironmentConfigSource()); + // TODO: Set default value to false before merging + ConfigHelper.setConfigInversionStrict( + minimalProvider.getBoolean(CONFIG_INVERSION_STRICT, true)); + + Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { return new ConfigProvider( false, @@ -426,12 +437,17 @@ public static ConfigProvider withoutCollector() { public static ConfigProvider withPropertiesOverride(Properties properties) { PropertiesConfigSource providedConfigSource = new PropertiesConfigSource(properties, false); - Properties configProperties = - loadConfigurationFile( - new ConfigProvider( - new SystemPropertiesConfigSource(), - new EnvironmentConfigSource(), - providedConfigSource)); + ConfigProvider minimalProvider = + new ConfigProvider( + new SystemPropertiesConfigSource(), + new EnvironmentConfigSource(), + providedConfigSource); + + // TODO: Set default value to false before merging + ConfigHelper.setConfigInversionStrict( + minimalProvider.getBoolean(CONFIG_INVERSION_STRICT, true)); + + Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { return new ConfigProvider( new SystemPropertiesConfigSource(), From f8d2a8c5e60b74dcfd4bd90ad2e379916adc2366 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 24 Jul 2025 13:10:27 -0400 Subject: [PATCH 10/47] updating supported-configurations --- .../resources/supported-configurations.json | 526 +++++++++++++++++- gradle/configInversionLinter.gradle | 2 + 2 files changed, 514 insertions(+), 14 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index a09ad5082ea..494c6059263 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -1,7 +1,16 @@ { "supportedConfigurations": { "DD_AAS_JAVA_EXTENSION_VERSION": ["A"], + "DD_INSTRUMENTATION_INSTALL_ID": ["A"], + "DD_INSTRUMENTATION_INSTALL_TYPE": ["A"], + "DD_INSTRUMENTATION_INSTALL_TIME": ["A"], + "OTEL_LOG_LEVEL": ["A"], + "DD_UNDERTOW_CONTINUATION": ["A"], + "DD_PIPELINE_EXECUTION_ID": ["A"], "DD_ACTION_EXECUTION_ID": ["A"], + "DD_CUSTOM_TRACE_ID": ["A"], + "DD_TELEMETRY_FORWARDER_MAX_TAGS": ["A"], + "DD_TELEMETRY_FORWARDER_PATH": ["A"], "DD_ADD_SPAN_POINTERS": ["A"], "DD_AGENTLESS_LOG_SUBMISSION_ENABLED": ["A"], "DD_AGENTLESS_LOG_SUBMISSION_LEVEL": ["A"], @@ -44,6 +53,8 @@ "DD_APPSEC_TRACE_RATE_LIMIT": ["A"], "DD_APPSEC_WAF_METRICS": ["A"], "DD_APPSEC_WAF_TIMEOUT": ["A"], + "DD_AWS_PROPAGATION_ENABLED": ["A"], + "DD_AWS_SDK_PROPAGATION_ENABLED": ["A"], "DD_AZURE_APP_SERVICES": ["A"], "DD_CIVISIBILITY_ADDITIONAL_CHILD_PROCESS_JVM_ARGS": ["A"], "DD_CIVISIBILITY_AGENTLESS_ENABLED": ["A"], @@ -110,7 +121,6 @@ "DD_CRASHTRACKING_PROXY_USERNAME": ["A"], "DD_CRASHTRACKING_TAGS": ["A"], "DD_CRASHTRACKING_UPLOAD_TIMEOUT": ["A"], - "DD_CUSTOM_TRACE_ID": ["A"], "DD_CWS_ENABLED": ["A"], "DD_CWS_TLS_REFRESH": ["A"], "DD_DATA_JOBS_COMMAND_PATTERN": ["A"], @@ -208,9 +218,6 @@ "DD_INJECTION_ENABLED": ["A"], "DD_INJECT_FORCE": ["A"], "DD_INSTRUMENTATION_CONFIG_ID": ["A"], - "DD_INSTRUMENTATION_INSTALL_ID": ["A"], - "DD_INSTRUMENTATION_INSTALL_TIME": ["A"], - "DD_INSTRUMENTATION_INSTALL_TYPE": ["A"], "DD_INSTRUMENTATION_SOURCE": ["A"], "DD_INSTRUMENTATION_TELEMETRY_ENABLED": ["A"], "DD_INTEGRATIONS_ENABLED": ["A"], @@ -220,6 +227,7 @@ "DD_JDK_SOCKET_ENABLED": ["A"], "DD_JMS_PROPAGATION_DISABLED_QUEUES": ["A"], "DD_JMS_PROPAGATION_DISABLED_TOPICS": ["A"], + "DD_JMS_PROPAGATION_ENABLED": ["A"], "DD_JMS_UNACKNOWLEDGED_MAX_AGE": ["A"], "DD_JMXFETCH_CHECK_PERIOD": ["A"], "DD_JMXFETCH_CONFIG": ["A"], @@ -235,16 +243,18 @@ "DD_JMXFETCH_STATSD_PORT": ["A"], "DD_KAFKA_CLIENT_BASE64_DECODING_ENABLED": ["A"], "DD_KAFKA_CLIENT_PROPAGATION_DISABLED_TOPICS": ["A"], + "DD_KAFKA_CLIENT_PROPAGATION_ENABLED": ["A"], + "DD_KAFKA_PROPAGATION_ENABLED": ["A"], "DD_LLMOBS_AGENTLESS_ENABLED": ["A"], "DD_LLMOBS_ENABLED": ["A"], "DD_LLMOBS_ML_APP": ["A"], "DD_LOGS_INJECTION": ["A"], "DD_LOGS_INJECTION_ENABLED": ["A"], - "DD_LOG_FILE": ["A"], "DD_LOG_LEVEL": ["A"], "DD_MEASURE_METHODS": ["A"], "DD_MESSAGE_BROKER_SPLIT_BY_DESTINATION": ["A"], - "DD_PIPELINE_EXECUTION_ID": ["A"], + "DD_OBFUSCATION_QUERY_STRING_REGEXP": ["A"], + "DD_OPTIMIZED_MAP_ENABLED": ["A"], "DD_PRIMARY_TAG": ["A"], "DD_PRIORITIZATION_TYPE": ["A"], "DD_PRIORITY_SAMPLING": ["A"], @@ -335,9 +345,11 @@ "DD_PROPAGATION_STYLE_EXTRACT": ["A"], "DD_PROPAGATION_STYLE_INJECT": ["A"], "DD_PROXY_NO_PROXY": ["A"], + "DD_RABBITMQ_PROPAGATION_ENABLED": ["A"], "DD_RABBIT_INCLUDE_ROUTINGKEY_IN_RESOURCE": ["A"], "DD_RABBIT_PROPAGATION_DISABLED_EXCHANGES": ["A"], "DD_RABBIT_PROPAGATION_DISABLED_QUEUES": ["A"], + "DD_RABBIT_PROPAGATION_ENABLED": ["A"], "DD_RC_TARGETS_KEY": ["A"], "DD_RC_TARGETS_KEY_ID": ["A"], "DD_REMOTE_CONFIGURATION_ENABLED": ["A"], @@ -372,6 +384,7 @@ "DD_RUNTIME_ID_ENABLED": ["A"], "DD_RUNTIME_METRICS_ENABLED": ["A"], "DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED": ["A"], + "DD_SERVICE": ["A"], "DD_SERVICE_MAPPING": ["A"], "DD_SERVICE_NAME": ["A"], "DD_SERVICE_NAME_SET_BY_USER": ["A"], @@ -381,6 +394,7 @@ "DD_SPARK_APP_NAME_AS_SERVICE": ["A"], "DD_SPARK_TASK_HISTOGRAM_ENABLED": ["A"], "DD_SPRING_DATA_REPOSITORY_INTERFACE_RESOURCE_NAME": ["A"], + "DD_SQS_PROPAGATION_ENABLED": ["A"], "DD_STACK_TRACE_LENGTH_LIMIT": ["A"], "DD_STATSD_CLIENT_QUEUE_SIZE": ["A"], "DD_STATSD_CLIENT_SOCKET_BUFFER": ["A"], @@ -394,8 +408,6 @@ "DD_TELEMETRY_DEPENDENCY_RESOLUTION_PERIOD_MILLIS": ["A"], "DD_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE": ["A"], "DD_TELEMETRY_EXTENDED_HEARTBEAT_INTERVAL": ["A"], - "DD_TELEMETRY_FORWARDER_MAX_TAGS": ["A"], - "DD_TELEMETRY_FORWARDER_PATH": ["A"], "DD_TELEMETRY_HEARTBEAT_INTERVAL": ["A"], "DD_TELEMETRY_LOG_COLLECTION_ENABLED": ["A"], "DD_TELEMETRY_METRICS_ENABLED": ["A"], @@ -433,10 +445,13 @@ "DD_TRACE_ANALYTICS_ENABLED": ["A"], "DD_TRACE_ANNOTATIONS": ["A"], "DD_TRACE_ANNOTATION_ASYNC": ["A"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT5_ENABLED": ["A"], "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCLIENT5_ENABLED": ["A"], "DD_TRACE_APACHE_HTTPCLIENT_ENABLED": ["A"], "DD_TRACE_APACHE_HTTPCORE_5_ENABLED": ["A"], "DD_TRACE_APACHE_HTTPCORE_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CLIENT5_ENABLED": ["A"], "DD_TRACE_APACHE_HTTP_CLIENT_ENABLED": ["A"], "DD_TRACE_APACHE_HTTP_CORE_5_ENABLED": ["A"], "DD_TRACE_APACHE_HTTP_CORE_ENABLED": ["A"], @@ -444,14 +459,17 @@ "DD_TRACE_ARMERIA_ENABLED": ["A"], "DD_TRACE_ARMERIA_GRPC_CLIENT_ENABLED": ["A"], "DD_TRACE_ARMERIA_GRPC_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_MESSAGE_ENABLED": ["A"], "DD_TRACE_ARMERIA_GRPC_SERVER_ENABLED": ["A"], "DD_TRACE_ARMERIA_JETTY_ENABLED": ["A"], "DD_TRACE_AUTH0_JWT_ENABLED": ["A"], "DD_TRACE_AVRO_ENABLED": ["A"], "DD_TRACE_AWS_DYNAMODB_ENABLED": ["A"], "DD_TRACE_AWS_LAMBDA_ENABLED": ["A"], + "DD_TRACE_AWS_PROPAGATION_ENABLED": ["A"], "DD_TRACE_AWS_S3_ENABLED": ["A"], "DD_TRACE_AWS_SDK_ENABLED": ["A"], + "DD_TRACE_AWS_SDK_PROPAGATION_ENABLED": ["A"], "DD_TRACE_AXIS2_ENABLED": ["A"], "DD_TRACE_AXIS2_TRANSPORT_ENABLED": ["A"], "DD_TRACE_AXIS_PROMOTE_RESOURCE_NAME": ["A"], @@ -463,6 +481,7 @@ "DD_TRACE_CAFFEINE_ENABLED": ["A"], "DD_TRACE_CASSANDRA_ENABLED": ["A"], "DD_TRACE_CASSANDRA_KEYSPACE_STATEMENT_EXTRACTION_ENABLED": ["A"], + "DD_TRACE_CI_VISIBILITY_ENABLED": ["A"], "DD_TRACE_CLASSES_EXCLUDE": ["A"], "DD_TRACE_CLASSES_EXCLUDE_FILE": ["A"], "DD_TRACE_CLASSLOADERS_DEFER": ["A"], @@ -485,6 +504,8 @@ "DD_TRACE_COUCHBASE_3_ENABLED": ["A"], "DD_TRACE_COUCHBASE_ENABLED": ["A"], "DD_TRACE_COUCHBASE_INTERNAL_SPANS_ENABLED": ["A"], + "DD_TRACE_CUCUMBER_5_ENABLED": ["A"], + "DD_TRACE_CUCUMBER_ENABLED": ["A"], "DD_TRACE_CXF_ENABLED": ["A"], "DD_TRACE_CXF_INVOKER_ENABLED": ["A"], "DD_TRACE_DATANUCLEUS_ENABLED": ["A"], @@ -532,6 +553,7 @@ "DD_TRACE_FJP_ENABLED": ["A"], "DD_TRACE_FJP_WORKQUEUE_ENABLED": ["A"], "DD_TRACE_FLUSH_INTERVAL": ["A"], + "DD_TRACE_FREEMARKER_ENABLED": ["A"], "DD_TRACE_GIT_METADATA_ENABLED": ["A"], "DD_TRACE_GLASSFISH_ENABLED": ["A"], "DD_TRACE_GLOBAL_TAGS": ["A"], @@ -559,14 +581,19 @@ "DD_TRACE_HAZELCAST_LEGACY_ENABLED": ["A"], "DD_TRACE_HEADER_BAGGAGE": ["A"], "DD_TRACE_HEADER_TAGS": ["A"], + "DD_TRACE_HEADER_TAGS_LEGACY_PARSING_ENABLED": ["A"], "DD_TRACE_HEALTH_METRICS_ENABLED": ["A"], "DD_TRACE_HEALTH_METRICS_STATSD_HOST": ["A"], "DD_TRACE_HEALTH_METRICS_STATSD_PORT": ["A"], "DD_TRACE_HIBERNATE_CORE_ENABLED": ["A"], "DD_TRACE_HIBERNATE_ENABLED": ["A"], + "DD_TRACE_HTTPASYNCCLIENT5_ENABLED": ["A"], "DD_TRACE_HTTPASYNCCLIENT_ENABLED": ["A"], + "DD_TRACE_HTTPCLIENT5_ENABLED": ["A"], "DD_TRACE_HTTPCLIENT_ENABLED": ["A"], "DD_TRACE_HTTPCLIENT_REDIRECT_ENABLED": ["A"], + "DD_TRACE_HTTPCORE_5_ENABLED": ["A"], + "DD_TRACE_HTTPCORE_ENABLED": ["A"], "DD_TRACE_HTTPURLCONNECTION_ENABLED": ["A"], "DD_TRACE_HTTP_CLIENT_ERROR_STATUSES": ["A"], "DD_TRACE_HTTP_CLIENT_PATH_RESOURCE_NAME_MAPPING": ["A"], @@ -577,6 +604,7 @@ "DD_TRACE_HTTP_SERVER_PATH_RESOURCE_NAME_MAPPING": ["A"], "DD_TRACE_HTTP_URL_CONNECTION_CLASS_NAME": ["A"], "DD_TRACE_HYSTRIX_ENABLED": ["A"], + "DD_TRACE_IASTINSTRUMENTATION_ENABLED": ["A"], "DD_TRACE_IAST_RESULTSET_ENABLED": ["A"], "DD_TRACE_IGNITE_ENABLED": ["A"], "DD_TRACE_INPUTSTREAM_ENABLED": ["A"], @@ -589,8 +617,8 @@ "DD_TRACE_JACKSON_2_ENABLED": ["A"], "DD_TRACE_JACKSON_CORE_ENABLED": ["A"], "DD_TRACE_JACKSON_ENABLED": ["A"], + "DD_TRACE_JACOCO_ENABLED": ["A"], "DD_TRACE_JAKARTARS_ENABLED": ["A"], - "DD_TRACE_JAKARTA_ENABLED": ["A"], "DD_TRACE_JAKARTA_JMS_ENABLED": ["A"], "DD_TRACE_JAKARTA_MAIL_BODY_ENABLED": ["A"], "DD_TRACE_JAKARTA_MAIL_ENABLED": ["A"], @@ -598,38 +626,84 @@ "DD_TRACE_JAKARTA_RS_ANNOTATIONS_ENABLED": ["A"], "DD_TRACE_JAKARTA_RS_ENABLED": ["A"], "DD_TRACE_JAKARTA_RS_FILTER_ENABLED": ["A"], + "DD_TRACE_JAKARTA_WEBSOCKET_ENABLED": ["A"], "DD_TRACE_JAKARTA_WS_ENABLED": ["A"], - "DD_TRACE_JAVAX_ENABLED": ["A"], "DD_TRACE_JAVAX_MAIL_BODY_ENABLED": ["A"], "DD_TRACE_JAVAX_MAIL_ENABLED": ["A"], "DD_TRACE_JAVAX_MAIL_TRANSPORT_ENABLED": ["A"], + "DD_TRACE_JAVAX_WEBSOCKET_ENABLED": ["A"], "DD_TRACE_JAVA_COMPLETABLEFUTURE_ENABLED": ["A"], "DD_TRACE_JAVA_CONCURRENT_ENABLED": ["A"], "DD_TRACE_JAVA_CONCURRENT_OTHER_ENABLED": ["A"], + "DD_TRACE_JAVA_HTTP_CLIENT_ENABLED": ["A"], "DD_TRACE_JAVA_LANG_APPSEC_ENABLED": ["A"], + "DD_TRACE_JAVA_LANG_MANAGEMENT_ENABLED": ["A"], "DD_TRACE_JAVA_TIMER_ENABLED": ["A"], + "DD_TRACE_JAXRS_ENABLED": ["A"], "DD_TRACE_JAX_RS_ADDITIONAL_ANNOTATIONS": ["A"], + "DD_TRACE_JAX_RS_ANNOTATIONS_ENABLED": ["A"], + "DD_TRACE_JAX_RS_CLIENT_ENABLED": ["A"], + "DD_TRACE_JAX_RS_ENABLED": ["A"], "DD_TRACE_JAX_RS_EXCEPTION_AS_ERROR_ENABLED": ["A"], + "DD_TRACE_JAX_RS_FILTER_ENABLED": ["A"], + "DD_TRACE_JAX_WS_ENABLED": ["A"], + "DD_TRACE_JBOSS_LOGMANAGER_ENABLED": ["A"], + "DD_TRACE_JBOSS_MODULES_ENABLED": ["A"], "DD_TRACE_JDBC_CONNECTION_CLASS_NAME": ["A"], + "DD_TRACE_JDBC_DATASOURCE_ENABLED": ["A"], "DD_TRACE_JDBC_ENABLED": ["A"], "DD_TRACE_JDBC_PREPARED_STATEMENT_CLASS_NAME": ["A"], "DD_TRACE_JDBC_RESULTSET_ENABLED": ["A"], + "DD_TRACE_JEDIS_ENABLED": ["A"], + "DD_TRACE_JEE_ENV_ENTRY_ENABLED": ["A"], "DD_TRACE_JERSEY_ENABLED": ["A"], + "DD_TRACE_JETTY_CLIENT_ENABLED": ["A"], + "DD_TRACE_JETTY_CONCURRENT_ENABLED": ["A"], + "DD_TRACE_JETTY_ENABLED": ["A"], + "DD_TRACE_JETTY_WEBSOCKET_ENABLED": ["A"], "DD_TRACE_JMS_1_ENABLED": ["A"], "DD_TRACE_JMS_2_ENABLED": ["A"], "DD_TRACE_JMS_ENABLED": ["A"], + "DD_TRACE_JMS_PROPAGATION_ENABLED": ["A"], "DD_TRACE_JMX_TAGS": ["A"], "DD_TRACE_JNI_ENABLED": ["A"], "DD_TRACE_JOSE_JWT_ENABLED": ["A"], + "DD_TRACE_JSP_COMPILE_ENABLED": ["A"], + "DD_TRACE_JSP_ENABLED": ["A"], + "DD_TRACE_JSP_RENDER_ENABLED": ["A"], + "DD_TRACE_JUNIT4_ENABLED": ["A"], + "DD_TRACE_JUNIT_38_ENABLED": ["A"], + "DD_TRACE_JUNIT_4_CUCUMBER_ENABLED": ["A"], + "DD_TRACE_JUNIT_4_ENABLED": ["A"], + "DD_TRACE_JUNIT_4_MUNIT_ENABLED": ["A"], + "DD_TRACE_JUNIT_5_CUCUMBER_ENABLED": ["A"], + "DD_TRACE_JUNIT_5_ENABLED": ["A"], + "DD_TRACE_JUNIT_5_SPOCK_ENABLED": ["A"], "DD_TRACE_JWT_ENABLED": ["A"], + "DD_TRACE_KAFKA_0_11_ENABLED": ["A"], + "DD_TRACE_KAFKA_3_8_ENABLED": ["A"], + "DD_TRACE_KAFKA_CLIENT_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_KAFKA_CONNECT_ENABLED": ["A"], "DD_TRACE_KAFKA_ENABLED": ["A"], + "DD_TRACE_KAFKA_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_KAFKA_STREAMS_ENABLED": ["A"], + "DD_TRACE_KARATE_ENABLED": ["A"], + "DD_TRACE_KOTLIN_COROUTINE_ENABLED": ["A"], + "DD_TRACE_LETTUCE_4_ASYNC_ENABLED": ["A"], + "DD_TRACE_LETTUCE_4_ENABLED": ["A"], "DD_TRACE_LETTUCE_5_ASYNC_ENABLED": ["A"], + "DD_TRACE_LETTUCE_5_ENABLED": ["A"], + "DD_TRACE_LETTUCE_5_RX_ENABLED": ["A"], + "DD_TRACE_LETTUCE_ENABLED": ["A"], + "DD_TRACE_LIBERTY_CLASSLOADING_ENABLED": ["A"], + "DD_TRACE_LIBERTY_ENABLED": ["A"], "DD_TRACE_LOG4J_1_ENABLED": ["A"], "DD_TRACE_LOG4J_2_ENABLED": ["A"], "DD_TRACE_LOG4J_ENABLED": ["A"], "DD_TRACE_LOGBACK_ENABLED": ["A"], "DD_TRACE_LOGS_INTAKE_ENABLED": ["A"], "DD_TRACE_LOGS_INTAKE_LOG4J_2_ENABLED": ["A"], + "DD_TRACE_MAVEN_ENABLED": ["A"], "DD_TRACE_METHODS": ["A"], "DD_TRACE_MICRONAUT_ENABLED": ["A"], "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED": ["A"], @@ -645,6 +719,7 @@ "DD_TRACE_MULE_ENABLED": ["A"], "DD_TRACE_MULE_JPMS_ENABLED": ["A"], "DD_TRACE_MULTIPART_ENABLED": ["A"], + "DD_TRACE_NATIVE_IMAGE_ENABLED": ["A"], "DD_TRACE_NETTY_3_8_ENABLED": ["A"], "DD_TRACE_NETTY_4_0_ENABLED": ["A"], "DD_TRACE_NETTY_4_1_ENABLED": ["A"], @@ -698,14 +773,18 @@ "DD_TRACE_PLAY_REPORT_HTTP_STATUS": ["A"], "DD_TRACE_PLAY_WS_ENABLED": ["A"], "DD_TRACE_POST_PROCESSING_TIMEOUT": ["A"], + "DD_TRACE_POWERMOCK_ENABLED": ["A"], "DD_TRACE_PROPAGATION_BEHAVIOR_EXTRACT": ["A"], "DD_TRACE_PROPAGATION_EXTRACT_FIRST": ["A"], "DD_TRACE_PROPAGATION_STYLE": ["A"], + "DD_TRACE_PROPAGATION_STYLE_B3_PADDING_ENABLED": ["A"], "DD_TRACE_PROPAGATION_STYLE_EXTRACT": ["A"], "DD_TRACE_PROPAGATION_STYLE_INJECT": ["A"], "DD_TRACE_PROTOBUF_ENABLED": ["A"], "DD_TRACE_QUARTZ_ENABLED": ["A"], "DD_TRACE_RABBITMQ_ENABLED": ["A"], + "DD_TRACE_RABBITMQ_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_RABBIT_PROPAGATION_ENABLED": ["A"], "DD_TRACE_RATE_LIMIT": ["A"], "DD_TRACE_RATPACK_ENABLED": ["A"], "DD_TRACE_RATPACK_REQUEST_BODY_ENABLED": ["A"], @@ -746,6 +825,7 @@ "DD_TRACE_SAMPLING_OPERATION_RULES": ["A"], "DD_TRACE_SAMPLING_RULES": ["A"], "DD_TRACE_SAMPLING_SERVICE_RULES": ["A"], + "DD_TRACE_SCALATEST_ENABLED": ["A"], "DD_TRACE_SCALA_CONCURRENT_ENABLED": ["A"], "DD_TRACE_SCALA_FUTURE_OBJECT_ENABLED": ["A"], "DD_TRACE_SCALA_PROMISE_COMPLETE_ENABLED": ["A"], @@ -754,6 +834,7 @@ "DD_TRACE_SCOPE_ITERATION_KEEP_ALIVE": ["A"], "DD_TRACE_SCOPE_STRICT_MODE": ["A"], "DD_TRACE_SECURE_RANDOM": ["A"], + "DD_TRACE_SELENIUM_ENABLED": ["A"], "DD_TRACE_SERIALVERSIONUID_FIELD_INJECTION": ["A"], "DD_TRACE_SERVELET_RESPONSE_ENABLED": ["A"], "DD_TRACE_SERVICETALK_CONCURRENT_ENABLED": ["A"], @@ -773,6 +854,7 @@ "DD_TRACE_SERVLET_ROOT_CONTEXT_SERVICE_NAME": ["A"], "DD_TRACE_SERVLET_SERVICE_ENABLED": ["A"], "DD_TRACE_SERVLET_SESSION_ENABLED": ["A"], + "DD_TRACE_SETUP_TEARDOWN_ENABLED": ["A"], "DD_TRACE_SFN_ENABLED": ["A"], "DD_TRACE_SHUTDOWN_ENABLED": ["A"], "DD_TRACE_SLICK_ENABLED": ["A"], @@ -788,8 +870,6 @@ "DD_TRACE_SPARK_EXIT_ENABLED": ["A"], "DD_TRACE_SPARK_OPENLINEAGE_ENABLED": ["A"], "DD_TRACE_SPLIT_BY_TAGS": ["A"], - "DD_TRACE_SPRAY_HTTP_ENABLED": ["A"], - "DD_TRACE_SPRAY_HTTP_SERVER_ENABLED": ["A"], "DD_TRACE_SPRING_ASYNC_ENABLED": ["A"], "DD_TRACE_SPRING_BEANS_ENABLED": ["A"], "DD_TRACE_SPRING_BOOT_ENABLED": ["A"], @@ -814,17 +894,26 @@ "DD_TRACE_SPYMEMCACHED_ENABLED": ["A"], "DD_TRACE_SQS_BODY_PROPAGATION_ENABLED": ["A"], "DD_TRACE_SQS_ENABLED": ["A"], + "DD_TRACE_SQS_PROPAGATION_ENABLED": ["A"], "DD_TRACE_SSLSOCKET_ENABLED": ["A"], "DD_TRACE_STARTUP_LOGS": ["A"], + "DD_TRACE_STATS_COMPUTATION_ENABLED": ["A"], "DD_TRACE_STRICT_WRITES_ENABLED": ["A"], "DD_TRACE_STRUCTURED_TASK_SCOPE_ENABLED": ["A"], + "DD_TRACE_SUREFIRE_ENABLED": ["A"], "DD_TRACE_SYNAPSE3_CLIENT_ENABLED": ["A"], "DD_TRACE_SYNAPSE3_ENABLED": ["A"], "DD_TRACE_SYNAPSE3_SERVER_ENABLED": ["A"], "DD_TRACE_TAGS": ["A"], "DD_TRACE_TASK_RUNNER_ENABLED": ["A"], "DD_TRACE_TASK_UNWRAPPING_ENABLED": ["A"], + "DD_TRACE_TESTNG_6_ENABLED": ["A"], + "DD_TRACE_TESTNG_7_ENABLED": ["A"], + "DD_TRACE_TESTNG_ENABLED": ["A"], + "DD_TRACE_TESTNG_ITR_ENABLED": ["A"], "DD_TRACE_TESTS_ENABLED": ["A"], + "DD_TRACE_TEST_ORDER_ENABLED": ["A"], + "DD_TRACE_TEST_RETRY_ENABLED": ["A"], "DD_TRACE_THREAD_POOL_EXECUTORS_EXCLUDE": ["A"], "DD_TRACE_THROWABLES_ENABLED": ["A"], "DD_TRACE_THYMELEAF_ENABLED": ["A"], @@ -840,6 +929,7 @@ "DD_TRACE_TRACER_METRICS_MAX_AGGREGATES": ["A"], "DD_TRACE_TRACER_METRICS_MAX_PENDING": ["A"], "DD_TRACE_TRACE_ANNOTATION_ENABLED": ["A"], + "DD_TRACE_TRACE_CONFIG_ENABLED": ["A"], "DD_TRACE_TRACE_ENABLED": ["A"], "DD_TRACE_TRIAGE": ["A"], "DD_TRACE_TWILIO_SDK_ENABLED": ["A"], @@ -848,6 +938,7 @@ "DD_TRACE_UNDERTOW_ENABLED": ["A"], "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["A"], "DD_TRACE_URLCONNECTION_ENABLED": ["A"], + "DD_TRACE_VALKEY_ENABLED": ["A"], "DD_TRACE_VELOCITY_ENABLED": ["A"], "DD_TRACE_VERTX_3_4_ENABLED": ["A"], "DD_TRACE_VERTX_3_5_ENABLED": ["A"], @@ -855,23 +946,430 @@ "DD_TRACE_VERTX_4_0_ENABLED": ["A"], "DD_TRACE_VERTX_5_0_ENABLED": ["A"], "DD_TRACE_VERTX_ENABLED": ["A"], + "DD_TRACE_VERTX_REDIS_CLIENT_ENABLED": ["A"], + "DD_TRACE_VERTX_SQL_CLIENT_ENABLED": ["A"], "DD_TRACE_WALLCLOCK_ENABLED": ["A"], + "DD_TRACE_WEAVER_ENABLED": ["A"], "DD_TRACE_WEBSOCKET_ENABLED": ["A"], "DD_TRACE_WEBSOCKET_MESSAGES_ENABLED": ["A"], "DD_TRACE_WEBSOCKET_MESSAGES_INHERIT_SAMPLING": ["A"], "DD_TRACE_WEBSOCKET_MESSAGES_SEPARATE_TRACES": ["A"], "DD_TRACE_WEBSOCKET_TAG_SESSION_ID": ["A"], + "DD_TRACE_WEBSPHERE_JMX_ENABLED": ["A"], + "DD_TRACE_WILDFLY_ENABLED": ["A"], "DD_TRACE_X_DATADOG_TAGS_MAX_LENGTH": ["A"], + "DD_TRACE_ZIO_EXPERIMENTAL_ENABLED": ["A"], "DD_TRIAGE_REPORT_DIR": ["A"], "DD_TRIAGE_REPORT_TRIGGER": ["A"], - "DD_UNDERTOW_CONTINUATION": ["A"], "DD_USM_ENABLED": ["A"], "DD_VERSION": ["A"], "DD_WRITER_BAGGAGE_INJECT": ["A"], "DD_WRITER_TYPE": ["A"], - "OTEL_LOG_LEVEL": ["A"] + "OTEL_JAVAAGENT_CONFIGURATION_FILE": ["A"] }, "aliases": { + "DD_TRACE_SNS_ENABLED": ["DD_TRACE_INTEGRATION_SNS_ENABLED", "DD_INTEGRATION_SNS_ENABLED"], + "DD_TRACE_AWS_SDK_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_ENABLED", "DD_INTEGRATION_AWS_SDK_ENABLED"], + "DD_TRACE_AXWAY_API_ENABLED": ["DD_TRACE_INTEGRATION_AXWAY_API_ENABLED", "DD_INTEGRATION_AXWAY_API_ENABLED"], + "DD_TRACE_EVENTBRIDGE_ENABLED": ["DD_TRACE_INTEGRATION_EVENTBRIDGE_ENABLED", "DD_INTEGRATION_EVENTBRIDGE_ENABLED"], + "DD_TRACE_DYNAMODB_ENABLED": ["DD_TRACE_INTEGRATION_DYNAMODB_ENABLED", "DD_INTEGRATION_DYNAMODB_ENABLED"], + "DD_TRACE_AWS_DYNAMODB_ENABLED": ["DD_TRACE_INTEGRATION_AWS_DYNAMODB_ENABLED", "DD_INTEGRATION_AWS_DYNAMODB_ENABLED"], + "DD_TRACE_SFN_ENABLED": ["DD_TRACE_INTEGRATION_SFN_ENABLED", "DD_INTEGRATION_SFN_ENABLED"], + "DD_TRACE_S3_ENABLED": ["DD_TRACE_INTEGRATION_S3_ENABLED", "DD_INTEGRATION_S3_ENABLED"], + "DD_TRACE_AWS_S3_ENABLED": ["DD_TRACE_INTEGRATION_AWS_S3_ENABLED", "DD_INTEGRATION_AWS_S3_ENABLED"], + "DD_TRACE_AWS_LAMBDA_ENABLED": ["DD_TRACE_INTEGRATION_AWS_LAMBDA_ENABLED", "DD_INTEGRATION_AWS_LAMBDA_ENABLED"], + "DD_TRACE_AEROSPIKE_ENABLED": ["DD_TRACE_INTEGRATION_AEROSPIKE_ENABLED", "DD_INTEGRATION_AEROSPIKE_ENABLED"], + "DD_TRACE_JAVA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_CONCURRENT_ENABLED", "DD_INTEGRATION_JAVA_CONCURRENT_ENABLED"], + "DD_TRACE_CAFFEINE_ENABLED": ["DD_TRACE_INTEGRATION_CAFFEINE_ENABLED", "DD_INTEGRATION_CAFFEINE_ENABLED"], + "DD_TRACE_AZURE_FUNCTIONS_ENABLED": ["DD_TRACE_INTEGRATION_AZURE_FUNCTIONS_ENABLED", "DD_INTEGRATION_AZURE_FUNCTIONS_ENABLED"], + "DD_TRACE_SQS_ENABLED": ["DD_TRACE_INTEGRATION_SQS_ENABLED", "DD_INTEGRATION_SQS_ENABLED"], + "DD_TRACE_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JMS_ENABLED", "DD_INTEGRATION_JMS_ENABLED"], + "DD_TRACE_AXIS2_ENABLED": ["DD_TRACE_INTEGRATION_AXIS2_ENABLED", "DD_INTEGRATION_AXIS2_ENABLED"], + "DD_TRACE_AXIS2_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_AXIS2_TRANSPORT_ENABLED", "DD_INTEGRATION_AXIS2_TRANSPORT_ENABLED"], + "DD_TRACE_DEFINECLASS_ENABLED": ["DD_TRACE_INTEGRATION_DEFINECLASS_ENABLED", "DD_INTEGRATION_DEFINECLASS_ENABLED"], + "DD_TRACE_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_CLASSLOADING_ENABLED", "DD_INTEGRATION_CLASSLOADING_ENABLED"], + "DD_TRACE_AVRO_ENABLED": ["DD_TRACE_INTEGRATION_AVRO_ENABLED", "DD_INTEGRATION_AVRO_ENABLED"], + "DD_TRACE_EMR_AWS_SDK_ENABLED": ["DD_TRACE_INTEGRATION_EMR_AWS_SDK_ENABLED", "DD_INTEGRATION_EMR_AWS_SDK_ENABLED"], + "DD_TRACE_COMMONS_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_COMMONS_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_COMMONS_HTTP_CLIENT_ENABLED"], + "DD_TRACE_GLASSFISH_ENABLED": ["DD_TRACE_INTEGRATION_GLASSFISH_ENABLED", "DD_INTEGRATION_GLASSFISH_ENABLED"], + "DD_TRACE_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_CUCUMBER_ENABLED", "DD_INTEGRATION_CUCUMBER_ENABLED"], + "DD_TRACE_CUCUMBER_5_ENABLED": ["DD_TRACE_INTEGRATION_CUCUMBER_5_ENABLED", "DD_INTEGRATION_CUCUMBER_5_ENABLED"], + "DD_TRACE_WALLCLOCK_ENABLED": ["DD_TRACE_INTEGRATION_WALLCLOCK_ENABLED", "DD_INTEGRATION_WALLCLOCK_ENABLED"], + "DD_TRACE_CXF_ENABLED": ["DD_TRACE_INTEGRATION_CXF_ENABLED", "DD_INTEGRATION_CXF_ENABLED"], + "DD_TRACE_CXF_INVOKER_ENABLED": ["DD_TRACE_INTEGRATION_CXF_INVOKER_ENABLED", "DD_INTEGRATION_CXF_INVOKER_ENABLED"], + "DD_TRACE_CASSANDRA_ENABLED": ["DD_TRACE_INTEGRATION_CASSANDRA_ENABLED", "DD_INTEGRATION_CASSANDRA_ENABLED"], + "DD_TRACE_DATANUCLEUS_ENABLED": ["DD_TRACE_INTEGRATION_DATANUCLEUS_ENABLED", "DD_INTEGRATION_DATANUCLEUS_ENABLED"], + "DD_TRACE_GOOGLE_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED"], + "DD_TRACE_MULE_ENABLED": ["DD_TRACE_INTEGRATION_MULE_ENABLED", "DD_INTEGRATION_MULE_ENABLED"], + "DD_TRACE_GRIZZLY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_CLIENT_ENABLED", "DD_INTEGRATION_GRIZZLY_CLIENT_ENABLED"], + "DD_TRACE_NING_ENABLED": ["DD_TRACE_INTEGRATION_NING_ENABLED", "DD_INTEGRATION_NING_ENABLED"], + "DD_TRACE_GSON_ENABLED": ["DD_TRACE_INTEGRATION_GSON_ENABLED", "DD_INTEGRATION_GSON_ENABLED"], + "DD_TRACE_GUAVA_ENABLED": ["DD_TRACE_INTEGRATION_GUAVA_ENABLED", "DD_INTEGRATION_GUAVA_ENABLED"], + "DD_TRACE_COMMONS_FILEUPLOAD_ENABLED": ["DD_TRACE_INTEGRATION_COMMONS_FILEUPLOAD_ENABLED", "DD_INTEGRATION_COMMONS_FILEUPLOAD_ENABLED"], + "DD_TRACE_SERVLET_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_ENABLED", "DD_INTEGRATION_SERVLET_ENABLED"], + "DD_TRACE_FILEITEMSTREAM_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEMSTREAM_ENABLED", "DD_INTEGRATION_FILEITEMSTREAM_ENABLED"], + "DD_TRACE_FILEITEM_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEM_ENABLED", "DD_INTEGRATION_FILEITEM_ENABLED"], + "DD_TRACE_FILEITEMITERATOR_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEMITERATOR_ENABLED", "DD_INTEGRATION_FILEITEMITERATOR_ENABLED"], + "DD_TRACE_GRIZZLY_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_ENABLED", "DD_INTEGRATION_GRIZZLY_ENABLED"], + "DD_TRACE_HAZELCAST_ENABLED": ["DD_TRACE_INTEGRATION_HAZELCAST_ENABLED", "DD_INTEGRATION_HAZELCAST_ENABLED"], + "DD_TRACE_URLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_URLCONNECTION_ENABLED", "DD_INTEGRATION_URLCONNECTION_ENABLED"], + "DD_TRACE_HTTPURLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_HTTPURLCONNECTION_ENABLED", "DD_INTEGRATION_HTTPURLCONNECTION_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_ENABLED", "DD_INTEGRATION_GOOGLE_PUBSUB_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED", "DD_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED", "DD_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED"], + "DD_TRACE_HAZELCAST_LEGACY_ENABLED": ["DD_TRACE_INTEGRATION_HAZELCAST_LEGACY_ENABLED", "DD_INTEGRATION_HAZELCAST_LEGACY_ENABLED"], + "DD_TRACE_HYSTRIX_ENABLED": ["DD_TRACE_INTEGRATION_HYSTRIX_ENABLED", "DD_INTEGRATION_HYSTRIX_ENABLED"], + "DD_TRACE_FINATRA_ENABLED": ["DD_TRACE_INTEGRATION_FINATRA_ENABLED", "DD_INTEGRATION_FINATRA_ENABLED"], + "DD_TRACE_IGNITE_ENABLED": ["DD_TRACE_INTEGRATION_IGNITE_ENABLED", "DD_INTEGRATION_IGNITE_ENABLED"], + "DD_TRACE_JACOCO_ENABLED": ["DD_TRACE_INTEGRATION_JACOCO_ENABLED", "DD_INTEGRATION_JACOCO_ENABLED"], + "DD_TRACE_JAKARTA_WS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_WS_ENABLED", "DD_INTEGRATION_JAKARTA_WS_ENABLED"], + "DD_TRACE_JACKSON_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_ENABLED", "DD_INTEGRATION_JACKSON_ENABLED"], + "DD_TRACE_JACKSON_2_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_ENABLED", "DD_INTEGRATION_JACKSON_2_ENABLED"], + "DD_TRACE_JACKSON_CORE_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_CORE_ENABLED", "DD_INTEGRATION_JACKSON_CORE_ENABLED"], + "DD_TRACE_JAKARTA_MAIL_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_ENABLED", "DD_INTEGRATION_JAKARTA_MAIL_ENABLED"], + "DD_TRACE_JAKARTA_MAIL_BODY_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_BODY_ENABLED", "DD_INTEGRATION_JAKARTA_MAIL_BODY_ENABLED"], + "DD_TRACE_JAKARTA_MAIL_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_TRANSPORT_ENABLED", "DD_INTEGRATION_JAKARTA_MAIL_TRANSPORT_ENABLED"], + "DD_TRACE_JMS_1_ENABLED": ["DD_TRACE_INTEGRATION_JMS_1_ENABLED", "DD_INTEGRATION_JMS_1_ENABLED"], + "DD_TRACE_JMS_2_ENABLED": ["DD_TRACE_INTEGRATION_JMS_2_ENABLED", "DD_INTEGRATION_JMS_2_ENABLED"], + "DD_TRACE_INPUTSTREAM_ENABLED": ["DD_TRACE_INTEGRATION_INPUTSTREAM_ENABLED", "DD_INTEGRATION_INPUTSTREAM_ENABLED"], + "DD_TRACE_GRIZZLY_FILTERCHAIN_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED", "DD_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED"], + "DD_TRACE_JAX_RS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_ENABLED", "DD_INTEGRATION_JAX_RS_ENABLED"], + "DD_TRACE_JAXRS_ENABLED": ["DD_TRACE_INTEGRATION_JAXRS_ENABLED", "DD_INTEGRATION_JAXRS_ENABLED"], + "DD_TRACE_JAX_RS_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_ANNOTATIONS_ENABLED", "DD_INTEGRATION_JAX_RS_ANNOTATIONS_ENABLED"], + "DD_TRACE_JAKARTA_RS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_ENABLED", "DD_INTEGRATION_JAKARTA_RS_ENABLED"], + "DD_TRACE_JAKARTARS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTARS_ENABLED", "DD_INTEGRATION_JAKARTARS_ENABLED"], + "DD_TRACE_JAKARTA_RS_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_FILTER_ENABLED", "DD_INTEGRATION_JAKARTA_RS_FILTER_ENABLED"], + "DD_TRACE_JAKARTA_RS_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_ANNOTATIONS_ENABLED", "DD_INTEGRATION_JAKARTA_RS_ANNOTATIONS_ENABLED"], + "DD_TRACE_JAX_RS_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_CLIENT_ENABLED", "DD_INTEGRATION_JAX_RS_CLIENT_ENABLED"], + "DD_TRACE_JAVAX_MAIL_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_ENABLED", "DD_INTEGRATION_JAVAX_MAIL_ENABLED"], + "DD_TRACE_JAVAX_MAIL_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_TRANSPORT_ENABLED", "DD_INTEGRATION_JAVAX_MAIL_TRANSPORT_ENABLED"], + "DD_TRACE_JAVAX_MAIL_BODY_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_BODY_ENABLED", "DD_INTEGRATION_JAVAX_MAIL_BODY_ENABLED"], + "DD_TRACE_JAVA_LANG_APPSEC_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_LANG_APPSEC_ENABLED", "DD_INTEGRATION_JAVA_LANG_APPSEC_ENABLED"], + "DD_TRACE_JAVA_LANG_MANAGEMENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_LANG_MANAGEMENT_ENABLED", "DD_INTEGRATION_JAVA_LANG_MANAGEMENT_ENABLED"], + "DD_TRACE_JAKARTA_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_JMS_ENABLED", "DD_INTEGRATION_JAKARTA_JMS_ENABLED"], + "DD_TRACE_JBOSS_LOGMANAGER_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_LOGMANAGER_ENABLED", "DD_INTEGRATION_JBOSS_LOGMANAGER_ENABLED"], + "DD_TRACE_JAX_WS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_WS_ENABLED", "DD_INTEGRATION_JAX_WS_ENABLED"], + "DD_TRACE_JBOSS_MODULES_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_MODULES_ENABLED", "DD_INTEGRATION_JBOSS_MODULES_ENABLED"], + "DD_TRACE_JAX_RS_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_FILTER_ENABLED", "DD_INTEGRATION_JAX_RS_FILTER_ENABLED"], + "DD_TRACE_IASTINSTRUMENTATION_ENABLED": ["DD_TRACE_INTEGRATION_IASTINSTRUMENTATION_ENABLED", "DD_INTEGRATION_IASTINSTRUMENTATION_ENABLED"], + "DD_TRACE_JEDIS_ENABLED": ["DD_TRACE_INTEGRATION_JEDIS_ENABLED", "DD_INTEGRATION_JEDIS_ENABLED"], + "DD_TRACE_REDIS_ENABLED": ["DD_TRACE_INTEGRATION_REDIS_ENABLED", "DD_INTEGRATION_REDIS_ENABLED"], + "DD_TRACE_NEW_TASK_FOR_ENABLED": ["DD_TRACE_INTEGRATION_NEW_TASK_FOR_ENABLED", "DD_INTEGRATION_NEW_TASK_FOR_ENABLED"], + "DD_TRACE_TASK_UNWRAPPING_ENABLED": ["DD_TRACE_INTEGRATION_TASK_UNWRAPPING_ENABLED", "DD_INTEGRATION_TASK_UNWRAPPING_ENABLED"], + "DD_TRACE_JAVA_TIMER_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_TIMER_ENABLED", "DD_INTEGRATION_JAVA_TIMER_ENABLED"], + "DD_TRACE_RUNNABLE_ENABLED": ["DD_TRACE_INTEGRATION_RUNNABLE_ENABLED", "DD_INTEGRATION_RUNNABLE_ENABLED"], + "DD_TRACE_CONSUMER_TASK_ENABLED": ["DD_TRACE_INTEGRATION_CONSUMER_TASK_ENABLED", "DD_INTEGRATION_CONSUMER_TASK_ENABLED"], + "DD_TRACE_RUNNABLE_FUTURE_ENABLED": ["DD_TRACE_INTEGRATION_RUNNABLE_FUTURE_ENABLED", "DD_INTEGRATION_RUNNABLE_FUTURE_ENABLED"], + "DD_TRACE_FJP_ENABLED": ["DD_TRACE_INTEGRATION_FJP_ENABLED", "DD_INTEGRATION_FJP_ENABLED"], + "DD_TRACE_FJP_WORKQUEUE_ENABLED": ["DD_TRACE_INTEGRATION_FJP_WORKQUEUE_ENABLED", "DD_INTEGRATION_FJP_WORKQUEUE_ENABLED"], + "DD_TRACE_JAVA_CONCURRENT_OTHER_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_CONCURRENT_OTHER_ENABLED", "DD_INTEGRATION_JAVA_CONCURRENT_OTHER_ENABLED"], + "DD_TRACE_REJECTED_EXECUTION_HANDLER_ENABLED": ["DD_TRACE_INTEGRATION_REJECTED_EXECUTION_HANDLER_ENABLED", "DD_INTEGRATION_REJECTED_EXECUTION_HANDLER_ENABLED"], + "DD_TRACE_JETTY_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_CONCURRENT_ENABLED", "DD_INTEGRATION_JETTY_CONCURRENT_ENABLED"], + "DD_TRACE_JETTY_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_ENABLED", "DD_INTEGRATION_JETTY_ENABLED"], + "DD_TRACE_JERSEY_ENABLED": ["DD_TRACE_INTEGRATION_JERSEY_ENABLED", "DD_INTEGRATION_JERSEY_ENABLED"], + "DD_TRACE_GRPC_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_ENABLED", "DD_INTEGRATION_GRPC_ENABLED"], + "DD_TRACE_GRPC_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_NETTY_ENABLED", "DD_INTEGRATION_GRPC_NETTY_ENABLED"], + "DD_TRACE_GRPC_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_ENABLED", "DD_INTEGRATION_GRPC_SERVER_ENABLED"], + "DD_TRACE_GRPC_SERVER_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED", "DD_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED"], + "DD_TRACE_GRPC_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_CLIENT_ENABLED", "DD_INTEGRATION_GRPC_CLIENT_ENABLED"], + "DD_TRACE_GRPC_MESSAGE_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_MESSAGE_ENABLED", "DD_INTEGRATION_GRPC_MESSAGE_ENABLED"], + "DD_TRACE_JDBC_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_ENABLED", "DD_INTEGRATION_JDBC_ENABLED"], + "DD_TRACE_JDBC_RESULTSET_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_RESULTSET_ENABLED", "DD_INTEGRATION_JDBC_RESULTSET_ENABLED"], + "DD_TRACE_IAST_RESULTSET_ENABLED": ["DD_TRACE_INTEGRATION_IAST_RESULTSET_ENABLED", "DD_INTEGRATION_IAST_RESULTSET_ENABLED"], + "DD_TRACE_DB2_ENABLED": ["DD_TRACE_INTEGRATION_DB2_ENABLED", "DD_INTEGRATION_DB2_ENABLED"], + "DD_TRACE_JDBC_DATASOURCE_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_DATASOURCE_ENABLED", "DD_INTEGRATION_JDBC_DATASOURCE_ENABLED"], + "DD_TRACE_DBM_ENABLED": ["DD_TRACE_INTEGRATION_DBM_ENABLED", "DD_INTEGRATION_DBM_ENABLED"], + "DD_TRACE_JSP_ENABLED": ["DD_TRACE_INTEGRATION_JSP_ENABLED", "DD_INTEGRATION_JSP_ENABLED"], + "DD_TRACE_JSP_RENDER_ENABLED": ["DD_TRACE_INTEGRATION_JSP_RENDER_ENABLED", "DD_INTEGRATION_JSP_RENDER_ENABLED"], + "DD_TRACE_JSP_COMPILE_ENABLED": ["DD_TRACE_INTEGRATION_JSP_COMPILE_ENABLED", "DD_INTEGRATION_JSP_COMPILE_ENABLED"], + "DD_TRACE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JWT_ENABLED", "DD_INTEGRATION_JWT_ENABLED"], + "DD_TRACE_JOSE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JOSE_JWT_ENABLED", "DD_INTEGRATION_JOSE_JWT_ENABLED"], + "DD_TRACE_AUTH0_JWT_ENABLED": ["DD_TRACE_INTEGRATION_AUTH0_JWT_ENABLED", "DD_INTEGRATION_AUTH0_JWT_ENABLED"], + "DD_TRACE_KAFKA_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_ENABLED", "DD_INTEGRATION_KAFKA_ENABLED"], + "DD_TRACE_KAFKA_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_STREAMS_ENABLED", "DD_INTEGRATION_KAFKA_STREAMS_ENABLED"], + "DD_TRACE_KAFKA_CONNECT_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CONNECT_ENABLED", "DD_INTEGRATION_KAFKA_CONNECT_ENABLED"], + "DD_TRACE_CI_VISIBILITY_ENABLED": ["DD_TRACE_INTEGRATION_CI_VISIBILITY_ENABLED", "DD_INTEGRATION_CI_VISIBILITY_ENABLED"], + "DD_TRACE_JUNIT_4_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_ENABLED", "DD_INTEGRATION_JUNIT_4_ENABLED"], + "DD_TRACE_JUNIT_38_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_38_ENABLED", "DD_INTEGRATION_JUNIT_38_ENABLED"], + "DD_TRACE_POWERMOCK_ENABLED": ["DD_TRACE_INTEGRATION_POWERMOCK_ENABLED", "DD_INTEGRATION_POWERMOCK_ENABLED"], + "DD_TRACE_TEST_RETRY_ENABLED": ["DD_TRACE_INTEGRATION_TEST_RETRY_ENABLED", "DD_INTEGRATION_TEST_RETRY_ENABLED"], + "DD_TRACE_JUNIT_5_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_ENABLED", "DD_INTEGRATION_JUNIT_5_ENABLED"], + "DD_TRACE_KOTLIN_COROUTINE_ENABLED": ["DD_TRACE_INTEGRATION_KOTLIN_COROUTINE_ENABLED", "DD_INTEGRATION_KOTLIN_COROUTINE_ENABLED"], + "DD_TRACE_KARATE_ENABLED": ["DD_TRACE_INTEGRATION_KARATE_ENABLED", "DD_INTEGRATION_KARATE_ENABLED"], + "DD_TRACE_KAFKA_0_11_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_0_11_ENABLED", "DD_INTEGRATION_KAFKA_0_11_ENABLED"], + "DD_TRACE_LOG4J_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_ENABLED", "DD_INTEGRATION_LOG4J_ENABLED"], + "DD_TRACE_LOG4J_2_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_2_ENABLED", "DD_INTEGRATION_LOG4J_2_ENABLED"], + "DD_TRACE_SERVELET_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_SERVELET_RESPONSE_ENABLED", "DD_INTEGRATION_SERVELET_RESPONSE_ENABLED"], + "DD_TRACE_SERVLET_SESSION_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_SESSION_ENABLED", "DD_INTEGRATION_SERVLET_SESSION_ENABLED"], + "DD_TRACE_LOGBACK_ENABLED": ["DD_TRACE_INTEGRATION_LOGBACK_ENABLED", "DD_INTEGRATION_LOGBACK_ENABLED"], + "DD_TRACE_JETTY_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_WEBSOCKET_ENABLED", "DD_INTEGRATION_JETTY_WEBSOCKET_ENABLED"], + "DD_TRACE_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_WEBSOCKET_ENABLED", "DD_INTEGRATION_WEBSOCKET_ENABLED"], + "DD_TRACE_LETTUCE_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_ENABLED", "DD_INTEGRATION_LETTUCE_ENABLED"], + "DD_TRACE_LETTUCE_4_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ENABLED", "DD_INTEGRATION_LETTUCE_4_ENABLED"], + "DD_TRACE_LETTUCE_4_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ASYNC_ENABLED", "DD_INTEGRATION_LETTUCE_4_ASYNC_ENABLED"], + "DD_TRACE_LOG4J_1_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_1_ENABLED", "DD_INTEGRATION_LOG4J_1_ENABLED"], + "DD_TRACE_LETTUCE_5_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_ENABLED", "DD_INTEGRATION_LETTUCE_5_ENABLED"], + "DD_TRACE_LETTUCE_5_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_ASYNC_ENABLED", "DD_INTEGRATION_LETTUCE_5_ASYNC_ENABLED"], + "DD_TRACE_LETTUCE_5_RX_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_RX_ENABLED", "DD_INTEGRATION_LETTUCE_5_RX_ENABLED"], + "DD_TRACE_MAVEN_ENABLED": ["DD_TRACE_INTEGRATION_MAVEN_ENABLED", "DD_INTEGRATION_MAVEN_ENABLED"], + "DD_TRACE_SUREFIRE_ENABLED": ["DD_TRACE_INTEGRATION_SUREFIRE_ENABLED", "DD_INTEGRATION_SUREFIRE_ENABLED"], + "DD_TRACE_JUNIT4_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT4_ENABLED", "DD_INTEGRATION_JUNIT4_ENABLED"], + "DD_TRACE_MICRONAUT_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_ENABLED", "DD_INTEGRATION_MICRONAUT_ENABLED"], + "DD_TRACE_MICRONAUT_SPAN_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_SPAN_ORIGIN_ENABLED", "DD_INTEGRATION_MICRONAUT_SPAN_ORIGIN_ENABLED"], + "DD_TRACE_MULTIPART_ENABLED": ["DD_TRACE_INTEGRATION_MULTIPART_ENABLED", "DD_INTEGRATION_MULTIPART_ENABLED"], + "DD_TRACE_SERVLET_3_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_3_ENABLED", "DD_INTEGRATION_SERVLET_3_ENABLED"], + "DD_TRACE_SERVLET_REQUEST_BODY_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_REQUEST_BODY_ENABLED", "DD_INTEGRATION_SERVLET_REQUEST_BODY_ENABLED"], + "DD_TRACE_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_ENABLED", "DD_INTEGRATION_NETTY_ENABLED"], + "DD_TRACE_NETTY_4_0_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_0_ENABLED", "DD_INTEGRATION_NETTY_4_0_ENABLED"], + "DD_TRACE_NETTY_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_CONCURRENT_ENABLED", "DD_INTEGRATION_NETTY_CONCURRENT_ENABLED"], + "DD_TRACE_NETTY_EVENT_EXECUTOR_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_EVENT_EXECUTOR_ENABLED", "DD_INTEGRATION_NETTY_EVENT_EXECUTOR_ENABLED"], + "DD_TRACE_NETTY_PROMISE_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_PROMISE_ENABLED", "DD_INTEGRATION_NETTY_PROMISE_ENABLED"], + "DD_TRACE_OGNL_ENABLED": ["DD_TRACE_INTEGRATION_OGNL_ENABLED", "DD_INTEGRATION_OGNL_ENABLED"], + "DD_TRACE_NETTY_3_8_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_3_8_ENABLED", "DD_INTEGRATION_NETTY_3_8_ENABLED"], + "DD_TRACE_OKHTTP_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_ENABLED", "DD_INTEGRATION_OKHTTP_ENABLED"], + "DD_TRACE_OKHTTP_2_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_2_ENABLED", "DD_INTEGRATION_OKHTTP_2_ENABLED"], + "DD_TRACE_OKHTTP_3_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_3_ENABLED", "DD_INTEGRATION_OKHTTP_3_ENABLED"], + "DD_TRACE_NETTY_4_1_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_ENABLED", "DD_INTEGRATION_NETTY_4_1_ENABLED"], + "DD_TRACE_NETTY_4_1_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_HTTP2_ENABLED", "DD_INTEGRATION_NETTY_4_1_HTTP2_ENABLED"], + "DD_TRACE_SERVLET_5_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_5_ENABLED", "DD_INTEGRATION_SERVLET_5_ENABLED"], + "DD_TRACE_SERVLET_REQUEST_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_REQUEST_ENABLED", "DD_INTEGRATION_SERVLET_REQUEST_ENABLED"], + "DD_TRACE_SERVLET_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_RESPONSE_ENABLED", "DD_INTEGRATION_SERVLET_RESPONSE_ENABLED"], + "DD_TRACE_OSGI_ENABLED": ["DD_TRACE_INTEGRATION_OSGI_ENABLED", "DD_INTEGRATION_OSGI_ENABLED"], + "DD_TRACE_ORG_JSON_ENABLED": ["DD_TRACE_INTEGRATION_ORG_JSON_ENABLED", "DD_INTEGRATION_ORG_JSON_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_RECEIVE_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_RECEIVE_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_RECEIVE_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_ENABLED"], + "DD_TRACE_PEKKO_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_CONCURRENT_ENABLED", "DD_INTEGRATION_PEKKO_CONCURRENT_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_SEND_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_SEND_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_SEND_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_MAILBOX_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_MAILBOX_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_MAILBOX_ENABLED"], + "DD_TRACE_PLAY_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ENABLED", "DD_INTEGRATION_PLAY_ENABLED"], + "DD_TRACE_PLAY_ACTION_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ACTION_ENABLED", "DD_INTEGRATION_PLAY_ACTION_ENABLED"], + "DD_TRACE_PROTOBUF_ENABLED": ["DD_TRACE_INTEGRATION_PROTOBUF_ENABLED", "DD_INTEGRATION_PROTOBUF_ENABLED"], + "DD_TRACE_PLAY_WS_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_WS_ENABLED", "DD_INTEGRATION_PLAY_WS_ENABLED"], + "DD_TRACE_QUARTZ_ENABLED": ["DD_TRACE_INTEGRATION_QUARTZ_ENABLED", "DD_INTEGRATION_QUARTZ_ENABLED"], + "DD_TRACE_LIBERTY_ENABLED": ["DD_TRACE_INTEGRATION_LIBERTY_ENABLED", "DD_INTEGRATION_LIBERTY_ENABLED"], + "DD_TRACE_PEKKO_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_ENABLED", "DD_INTEGRATION_PEKKO_HTTP_ENABLED"], + "DD_TRACE_PEKKO_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_PEKKO_HTTP_CLIENT_ENABLED"], + "DD_TRACE_PEKKO_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP2_ENABLED", "DD_INTEGRATION_PEKKO_HTTP2_ENABLED"], + "DD_TRACE_PEKKO_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED", "DD_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED"], + "DD_TRACE_REACTIVE_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_REACTIVE_STREAMS_ENABLED", "DD_INTEGRATION_REACTIVE_STREAMS_ENABLED"], + "DD_TRACE_REACTIVE_STREAMS_1_ENABLED": ["DD_TRACE_INTEGRATION_REACTIVE_STREAMS_1_ENABLED", "DD_INTEGRATION_REACTIVE_STREAMS_1_ENABLED"], + "DD_TRACE_AMQP_ENABLED": ["DD_TRACE_INTEGRATION_AMQP_ENABLED", "DD_INTEGRATION_AMQP_ENABLED"], + "DD_TRACE_RABBITMQ_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_ENABLED", "DD_INTEGRATION_RABBITMQ_ENABLED"], + "DD_TRACE_REACTOR_CORE_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_CORE_ENABLED", "DD_INTEGRATION_REACTOR_CORE_ENABLED"], + "DD_TRACE_REACTOR_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_NETTY_ENABLED", "DD_INTEGRATION_REACTOR_NETTY_ENABLED"], + "DD_TRACE_REACTOR_NETTY_1_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_NETTY_1_ENABLED", "DD_INTEGRATION_REACTOR_NETTY_1_ENABLED"], + "DD_TRACE_REDISCALA_ENABLED": ["DD_TRACE_INTEGRATION_REDISCALA_ENABLED", "DD_INTEGRATION_REDISCALA_ENABLED"], + "DD_TRACE_REDISCALA_CONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_REDISCALA_CONNECTION_ENABLED", "DD_INTEGRATION_REDISCALA_CONNECTION_ENABLED"], + "DD_TRACE_RENAISSANCE_ENABLED": ["DD_TRACE_INTEGRATION_RENAISSANCE_ENABLED", "DD_INTEGRATION_RENAISSANCE_ENABLED"], + "DD_TRACE_RMI_ENABLED": ["DD_TRACE_INTEGRATION_RMI_ENABLED", "DD_INTEGRATION_RMI_ENABLED"], + "DD_TRACE_RMI_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_RMI_SERVER_ENABLED", "DD_INTEGRATION_RMI_SERVER_ENABLED"], + "DD_TRACE_RMI_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CLIENT_ENABLED", "DD_INTEGRATION_RMI_CLIENT_ENABLED"], + "DD_TRACE_RMI_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CONTEXT_PROPAGATOR_ENABLED", "DD_INTEGRATION_RMI_CONTEXT_PROPAGATOR_ENABLED"], + "DD_TRACE_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED", "DD_INTEGRATION_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED"], + "DD_TRACE_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED", "DD_INTEGRATION_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED"], + "DD_TRACE_RATPACK_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_ENABLED", "DD_INTEGRATION_RATPACK_ENABLED"], + "DD_TRACE_RATPACK_REQUEST_BODY_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED", "DD_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED"], + "DD_TRACE_RESTLET_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_RESTLET_HTTP_ENABLED", "DD_INTEGRATION_RESTLET_HTTP_ENABLED"], + "DD_TRACE_RESTLET_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_RESTLET_HTTP_SERVER_ENABLED", "DD_INTEGRATION_RESTLET_HTTP_SERVER_ENABLED"], + "DD_TRACE_RXJAVA_ENABLED": ["DD_TRACE_INTEGRATION_RXJAVA_ENABLED", "DD_INTEGRATION_RXJAVA_ENABLED"], + "DD_TRACE_RESTEASY_ENABLED": ["DD_TRACE_INTEGRATION_RESTEASY_ENABLED", "DD_INTEGRATION_RESTEASY_ENABLED"], + "DD_TRACE_SHUTDOWN_ENABLED": ["DD_TRACE_INTEGRATION_SHUTDOWN_ENABLED", "DD_INTEGRATION_SHUTDOWN_ENABLED"], + "DD_TRACE_SCALA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_CONCURRENT_ENABLED", "DD_INTEGRATION_SCALA_CONCURRENT_ENABLED"], + "DD_TRACE_LIBERTY_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_LIBERTY_CLASSLOADING_ENABLED", "DD_INTEGRATION_LIBERTY_CLASSLOADING_ENABLED"], + "DD_TRACE_SELENIUM_ENABLED": ["DD_TRACE_INTEGRATION_SELENIUM_ENABLED", "DD_INTEGRATION_SELENIUM_ENABLED"], + "DD_TRACE_SNAKEYAML_ENABLED": ["DD_TRACE_INTEGRATION_SNAKEYAML_ENABLED", "DD_INTEGRATION_SNAKEYAML_ENABLED"], + "DD_TRACE_SCALATEST_ENABLED": ["DD_TRACE_INTEGRATION_SCALATEST_ENABLED", "DD_INTEGRATION_SCALATEST_ENABLED"], + "DD_TRACE_SPRING_BEANS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BEANS_ENABLED", "DD_INTEGRATION_SPRING_BEANS_ENABLED"], + "DD_TRACE_SPARKJAVA_ENABLED": ["DD_TRACE_INTEGRATION_SPARKJAVA_ENABLED", "DD_INTEGRATION_SPARKJAVA_ENABLED"], + "DD_TRACE_SPARKJAVA_2_4_ENABLED": ["DD_TRACE_INTEGRATION_SPARKJAVA_2_4_ENABLED", "DD_INTEGRATION_SPARKJAVA_2_4_ENABLED"], + "DD_TRACE_SPRING_BOOT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_ENABLED", "DD_INTEGRATION_SPRING_BOOT_ENABLED"], + "DD_TRACE_SPRING_BOOT_SPAN_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED", "DD_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED"], + "DD_TRACE_SERVLET_DISPATCHER_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_DISPATCHER_ENABLED", "DD_INTEGRATION_SERVLET_DISPATCHER_ENABLED"], + "DD_TRACE_SERVLET_SERVICE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_SERVICE_ENABLED", "DD_INTEGRATION_SERVLET_SERVICE_ENABLED"], + "DD_TRACE_SERVLET_COOKIE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_COOKIE_ENABLED", "DD_INTEGRATION_SERVLET_COOKIE_ENABLED"], + "DD_TRACE_SERVLET_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_FILTER_ENABLED", "DD_INTEGRATION_SERVLET_FILTER_ENABLED"], + "DD_TRACE_SLICK_ENABLED": ["DD_TRACE_INTEGRATION_SLICK_ENABLED", "DD_INTEGRATION_SLICK_ENABLED"], + "DD_TRACE_SPRING_CORE_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CORE_ENABLED", "DD_INTEGRATION_SPRING_CORE_ENABLED"], + "DD_TRACE_SPRING_JMS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_JMS_ENABLED", "DD_INTEGRATION_SPRING_JMS_ENABLED"], + "DD_TRACE_SPRING_DATA_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_DATA_ENABLED", "DD_INTEGRATION_SPRING_DATA_ENABLED"], + "DD_TRACE_SPRING_MESSAGING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_ENABLED", "DD_INTEGRATION_SPRING_MESSAGING_ENABLED"], + "DD_TRACE_SPRING_MESSAGING_4_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_4_ENABLED", "DD_INTEGRATION_SPRING_MESSAGING_4_ENABLED"], + "DD_TRACE_SPRING_CLOUD_ZUUL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED", "DD_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED"], + "DD_TRACE_SPRING_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_ASYNC_ENABLED", "DD_INTEGRATION_SPRING_ASYNC_ENABLED"], + "DD_TRACE_SPRING_SCHEDULING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SCHEDULING_ENABLED", "DD_INTEGRATION_SPRING_SCHEDULING_ENABLED"], + "DD_TRACE_SPRING_RABBIT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_RABBIT_ENABLED", "DD_INTEGRATION_SPRING_RABBIT_ENABLED"], + "DD_TRACE_SPARK_EXECUTOR_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_EXECUTOR_ENABLED", "DD_INTEGRATION_SPARK_EXECUTOR_ENABLED"], + "DD_TRACE_SPRING_WS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WS_ENABLED", "DD_INTEGRATION_SPRING_WS_ENABLED"], + "DD_TRACE_SPRING_WS_2_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WS_2_ENABLED", "DD_INTEGRATION_SPRING_WS_2_ENABLED"], + "DD_TRACE_SPRING_SECURITY_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SECURITY_ENABLED", "DD_INTEGRATION_SPRING_SECURITY_ENABLED"], + "DD_TRACE_SOCKET_ENABLED": ["DD_TRACE_INTEGRATION_SOCKET_ENABLED", "DD_INTEGRATION_SOCKET_ENABLED"], + "DD_TRACE_SSLSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_SSLSOCKET_ENABLED", "DD_INTEGRATION_SSLSOCKET_ENABLED"], + "DD_TRACE_SPRING_WEB_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_ENABLED", "DD_INTEGRATION_SPRING_WEB_ENABLED"], + "DD_TRACE_SPRING_PATH_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_PATH_FILTER_ENABLED", "DD_INTEGRATION_SPRING_PATH_FILTER_ENABLED"], + "DD_TRACE_SPYMEMCACHED_ENABLED": ["DD_TRACE_INTEGRATION_SPYMEMCACHED_ENABLED", "DD_INTEGRATION_SPYMEMCACHED_ENABLED"], + "DD_TRACE_HEADER_TAGS_LEGACY_PARSING_ENABLED": ["DD_TRACE_INTEGRATION_HEADER_TAGS_LEGACY_PARSING_ENABLED", "DD_INTEGRATION_HEADER_TAGS_LEGACY_PARSING_ENABLED"], + "DD_TRACE_PROPAGATION_STYLE_B3_PADDING_ENABLED": ["DD_TRACE_INTEGRATION_PROPAGATION_STYLE_B3_PADDING_ENABLED", "DD_INTEGRATION_PROPAGATION_STYLE_B3_PADDING_ENABLED"], + "DD_TRACE_STATS_COMPUTATION_ENABLED": ["DD_TRACE_INTEGRATION_STATS_COMPUTATION_ENABLED", "DD_INTEGRATION_STATS_COMPUTATION_ENABLED"], + "DD_TRACE_AWS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_PROPAGATION_ENABLED", "DD_INTEGRATION_AWS_PROPAGATION_ENABLED"], + "DD_TRACE_AWS_SDK_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED", "DD_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED"], + "DD_TRACE_SQS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_SQS_PROPAGATION_ENABLED", "DD_INTEGRATION_SQS_PROPAGATION_ENABLED"], + "DD_TRACE_KAFKA_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_PROPAGATION_ENABLED", "DD_INTEGRATION_KAFKA_PROPAGATION_ENABLED"], + "DD_TRACE_KAFKA_CLIENT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED", "DD_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED"], + "DD_TRACE_JMS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_JMS_PROPAGATION_ENABLED", "DD_INTEGRATION_JMS_PROPAGATION_ENABLED"], + "DD_TRACE_RABBIT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBIT_PROPAGATION_ENABLED", "DD_INTEGRATION_RABBIT_PROPAGATION_ENABLED"], + "DD_TRACE_RABBITMQ_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED", "DD_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED"], + "DD_TRACE_SPARK_EXIT_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_EXIT_ENABLED", "DD_INTEGRATION_SPARK_EXIT_ENABLED"], + "DD_TRACE_SPARK_OPENLINEAGE_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_OPENLINEAGE_ENABLED", "DD_INTEGRATION_SPARK_OPENLINEAGE_ENABLED"], + "DD_TRACE_THYMELEAF_ENABLED": ["DD_TRACE_INTEGRATION_THYMELEAF_ENABLED", "DD_INTEGRATION_THYMELEAF_ENABLED"], + "DD_TRACE_TESTNG_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_ENABLED", "DD_INTEGRATION_TESTNG_ENABLED"], + "DD_TRACE_TESTNG_ITR_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_ITR_ENABLED", "DD_INTEGRATION_TESTNG_ITR_ENABLED"], + "DD_TRACE_TINYLOG_ENABLED": ["DD_TRACE_INTEGRATION_TINYLOG_ENABLED", "DD_INTEGRATION_TINYLOG_ENABLED"], + "DD_TRACE_SYNAPSE3_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_CLIENT_ENABLED", "DD_INTEGRATION_SYNAPSE3_CLIENT_ENABLED"], + "DD_TRACE_SYNAPSE3_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_ENABLED", "DD_INTEGRATION_SYNAPSE3_ENABLED"], + "DD_TRACE_SYNAPSE3_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_SERVER_ENABLED", "DD_INTEGRATION_SYNAPSE3_SERVER_ENABLED"], + "DD_TRACE_TOMCAT_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_ENABLED", "DD_INTEGRATION_TOMCAT_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_ENABLED", "DD_INTEGRATION_SPRING_WEBFLUX_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_FUNCTIONAL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED", "DD_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED", "DD_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED"], + "DD_TRACE_TOMCAT_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED", "DD_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED"], + "DD_TRACE_TRACE_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ENABLED", "DD_INTEGRATION_TRACE_ENABLED"], + "DD_TRACE_TRACE_ANNOTATION_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ANNOTATION_ENABLED", "DD_INTEGRATION_TRACE_ANNOTATION_ENABLED"], + "DD_TRACE_TRACE_CONFIG_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_CONFIG_ENABLED", "DD_INTEGRATION_TRACE_CONFIG_ENABLED"], + "DD_TRACE_NOT_NOT_TRACE_ENABLED": ["DD_TRACE_INTEGRATION_NOT_NOT_TRACE_ENABLED", "DD_INTEGRATION_NOT_NOT_TRACE_ENABLED"], + "DD_TRACE_DO_NOT_TRACE_ANNOTATION_ENABLED": ["DD_TRACE_INTEGRATION_DO_NOT_TRACE_ANNOTATION_ENABLED", "DD_INTEGRATION_DO_NOT_TRACE_ANNOTATION_ENABLED"], + "DD_TRACE_TWILIO_SDK_ENABLED": ["DD_TRACE_INTEGRATION_TWILIO_SDK_ENABLED", "DD_INTEGRATION_TWILIO_SDK_ENABLED"], + "DD_TRACE_TOMCAT_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED", "DD_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED"], + "DD_TRACE_VALKEY_ENABLED": ["DD_TRACE_INTEGRATION_VALKEY_ENABLED", "DD_INTEGRATION_VALKEY_ENABLED"], + "DD_TRACE_VELOCITY_ENABLED": ["DD_TRACE_INTEGRATION_VELOCITY_ENABLED", "DD_INTEGRATION_VELOCITY_ENABLED"], + "DD_TRACE_VERTX_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_ENABLED", "DD_INTEGRATION_VERTX_ENABLED"], + "DD_TRACE_VERTX_SQL_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_SQL_CLIENT_ENABLED", "DD_INTEGRATION_VERTX_SQL_CLIENT_ENABLED"], + "DD_TRACE_VERTX_3_9_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_9_ENABLED", "DD_INTEGRATION_VERTX_3_9_ENABLED"], + "DD_TRACE_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_RESPONSE_ENABLED", "DD_INTEGRATION_RESPONSE_ENABLED"], + "DD_TRACE_VERTX_REDIS_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED", "DD_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED"], + "DD_TRACE_VERTX_5_0_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_5_0_ENABLED", "DD_INTEGRATION_VERTX_5_0_ENABLED"], + "DD_TRACE_VERTX_3_4_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_4_ENABLED", "DD_INTEGRATION_VERTX_3_4_ENABLED"], + "DD_TRACE_VERTX_3_5_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_5_ENABLED", "DD_INTEGRATION_VERTX_3_5_ENABLED"], + "DD_TRACE_WEBSPHERE_JMX_ENABLED": ["DD_TRACE_INTEGRATION_WEBSPHERE_JMX_ENABLED", "DD_INTEGRATION_WEBSPHERE_JMX_ENABLED"], + "DD_TRACE_WEAVER_ENABLED": ["DD_TRACE_INTEGRATION_WEAVER_ENABLED", "DD_INTEGRATION_WEAVER_ENABLED"], + "DD_TRACE_WILDFLY_ENABLED": ["DD_TRACE_INTEGRATION_WILDFLY_ENABLED", "DD_INTEGRATION_WILDFLY_ENABLED"], + "DD_TRACE_JEE_ENV_ENTRY_ENABLED": ["DD_TRACE_INTEGRATION_JEE_ENV_ENTRY_ENABLED", "DD_INTEGRATION_JEE_ENV_ENTRY_ENABLED"], + "DD_TRACE_VERTX_4_0_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_4_0_ENABLED", "DD_INTEGRATION_VERTX_4_0_ENABLED"], + "DD_TRACE_HTTPCORE_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_ENABLED", "DD_INTEGRATION_HTTPCORE_ENABLED"], + "DD_TRACE_APACHE_HTTPCORE_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCORE_ENABLED", "DD_INTEGRATION_APACHE_HTTPCORE_ENABLED"], + "DD_TRACE_APACHE_HTTP_CORE_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CORE_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CORE_ENABLED"], + "DD_TRACE_HTTPCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT_ENABLED", "DD_INTEGRATION_HTTPCLIENT_ENABLED"], + "DD_TRACE_APACHE_HTTPCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCLIENT_ENABLED", "DD_INTEGRATION_APACHE_HTTPCLIENT_ENABLED"], + "DD_TRACE_APACHE_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CLIENT_ENABLED"], + "DD_TRACE_AKKA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_CONCURRENT_ENABLED", "DD_INTEGRATION_AKKA_CONCURRENT_ENABLED"], + "DD_TRACE_AKKA_ACTOR_RECEIVE_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_RECEIVE_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_RECEIVE_ENABLED"], + "DD_TRACE_AKKA_ACTOR_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_ENABLED"], + "DD_TRACE_AKKA_ACTOR_SEND_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_SEND_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_SEND_ENABLED"], + "DD_TRACE_AKKA_ACTOR_MAILBOX_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_MAILBOX_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_MAILBOX_ENABLED"], + "DD_TRACE_HTTPCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT5_ENABLED", "DD_INTEGRATION_HTTPCLIENT5_ENABLED"], + "DD_TRACE_APACHE_HTTPCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCLIENT5_ENABLED", "DD_INTEGRATION_APACHE_HTTPCLIENT5_ENABLED"], + "DD_TRACE_APACHE_HTTP_CLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CLIENT5_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CLIENT5_ENABLED"], + "DD_TRACE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT5_ENABLED", "DD_INTEGRATION_HTTPASYNCCLIENT5_ENABLED"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED", "DD_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED"], + "DD_TRACE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_ENABLED", "DD_INTEGRATION_HTTPASYNCCLIENT_ENABLED"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED", "DD_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED"], + "DD_TRACE_HTTPCORE_5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_5_ENABLED", "DD_INTEGRATION_HTTPCORE_5_ENABLED"], + "DD_TRACE_APACHE_HTTPCORE_5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCORE_5_ENABLED", "DD_INTEGRATION_APACHE_HTTPCORE_5_ENABLED"], + "DD_TRACE_APACHE_HTTP_CORE_5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CORE_5_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CORE_5_ENABLED"], + "DD_TRACE_COUCHBASE_ENABLED": ["DD_TRACE_INTEGRATION_COUCHBASE_ENABLED", "DD_INTEGRATION_COUCHBASE_ENABLED"], + "DD_TRACE_HTTPCLIENT_REDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED", "DD_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED"], + "DD_TRACE_ARMERIA_JETTY_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_JETTY_ENABLED", "DD_INTEGRATION_ARMERIA_JETTY_ENABLED"], + "DD_TRACE_ARMERIA_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_ENABLED", "DD_INTEGRATION_ARMERIA_ENABLED"], + "DD_TRACE_ELASTICSEARCH_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_5_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_5_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_5_ENABLED"], + "DD_TRACE_COUCHBASE_3_ENABLED": ["DD_TRACE_INTEGRATION_COUCHBASE_3_ENABLED", "DD_INTEGRATION_COUCHBASE_3_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_6_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_6_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_6_ENABLED"], + "DD_TRACE_DROPWIZARD_ENABLED": ["DD_TRACE_INTEGRATION_DROPWIZARD_ENABLED", "DD_INTEGRATION_DROPWIZARD_ENABLED"], + "DD_TRACE_DROPWIZARD_VIEW_ENABLED": ["DD_TRACE_INTEGRATION_DROPWIZARD_VIEW_ENABLED", "DD_INTEGRATION_DROPWIZARD_VIEW_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_7_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_7_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_7_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_2_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_2_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_2_ENABLED"], + "DD_TRACE_THROWABLES_ENABLED": ["DD_TRACE_INTEGRATION_THROWABLES_ENABLED", "DD_INTEGRATION_THROWABLES_ENABLED"], + "DD_TRACE_FREEMARKER_ENABLED": ["DD_TRACE_INTEGRATION_FREEMARKER_ENABLED", "DD_INTEGRATION_FREEMARKER_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_5_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_5_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_5_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_6_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_6_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_6_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_7_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_7_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_7_ENABLED"], + "DD_TRACE_JACKSON_1_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_1_ENABLED", "DD_INTEGRATION_JACKSON_1_ENABLED"], + "DD_TRACE_HIBERNATE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_ENABLED", "DD_INTEGRATION_HIBERNATE_ENABLED"], + "DD_TRACE_HIBERNATE_CORE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_CORE_ENABLED", "DD_INTEGRATION_HIBERNATE_CORE_ENABLED"], + "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["DD_TRACE_INTEGRATION_GRAPHQL_JAVA_ENABLED", "DD_INTEGRATION_GRAPHQL_JAVA_ENABLED"], + "DD_TRACE_JAVA_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_JAVA_HTTP_CLIENT_ENABLED"], + "DD_TRACE_JACKSON_2_12_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_12_ENABLED", "DD_INTEGRATION_JACKSON_2_12_ENABLED"], + "DD_TRACE_JACKSON_2_16_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_16_ENABLED", "DD_INTEGRATION_JACKSON_2_16_ENABLED"], + "DD_TRACE_TASK_RUNNER_ENABLED": ["DD_TRACE_INTEGRATION_TASK_RUNNER_ENABLED", "DD_INTEGRATION_TASK_RUNNER_ENABLED"], + "DD_TRACE_STRUCTURED_TASK_SCOPE_ENABLED": ["DD_TRACE_INTEGRATION_STRUCTURED_TASK_SCOPE_ENABLED", "DD_INTEGRATION_STRUCTURED_TASK_SCOPE_ENABLED"], + "DD_TRACE_JAVA_COMPLETABLEFUTURE_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_COMPLETABLEFUTURE_ENABLED", "DD_INTEGRATION_JAVA_COMPLETABLEFUTURE_ENABLED"], + "DD_TRACE_NATIVE_IMAGE_ENABLED": ["DD_TRACE_INTEGRATION_NATIVE_IMAGE_ENABLED", "DD_INTEGRATION_NATIVE_IMAGE_ENABLED"], + "DD_TRACE_KAFKA_3_8_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_3_8_ENABLED", "DD_INTEGRATION_KAFKA_3_8_ENABLED"], + "DD_TRACE_JACKSON_2_8_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_8_ENABLED", "DD_INTEGRATION_JACKSON_2_8_ENABLED"], + "DD_TRACE_JACKSON_2_6_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_6_ENABLED", "DD_INTEGRATION_JACKSON_2_6_ENABLED"], + "DD_TRACE_MMAP_ENABLED": ["DD_TRACE_INTEGRATION_MMAP_ENABLED", "DD_INTEGRATION_MMAP_ENABLED"], + "DD_TRACE_DIRECTALLOCATION_ENABLED": ["DD_TRACE_INTEGRATION_DIRECTALLOCATION_ENABLED", "DD_INTEGRATION_DIRECTALLOCATION_ENABLED"], + "DD_TRACE_ALLOCATEDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_ALLOCATEDIRECT_ENABLED", "DD_INTEGRATION_ALLOCATEDIRECT_ENABLED"], + "DD_TRACE_JNI_ENABLED": ["DD_TRACE_INTEGRATION_JNI_ENABLED", "DD_INTEGRATION_JNI_ENABLED"], + "DD_TRACE_SETUP_TEARDOWN_ENABLED": ["DD_TRACE_INTEGRATION_SETUP_TEARDOWN_ENABLED", "DD_INTEGRATION_SETUP_TEARDOWN_ENABLED"], + "DD_TRACE_TEST_ORDER_ENABLED": ["DD_TRACE_INTEGRATION_TEST_ORDER_ENABLED", "DD_INTEGRATION_TEST_ORDER_ENABLED"], + "DD_TRACE_JUNIT_4_MUNIT_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_MUNIT_ENABLED", "DD_INTEGRATION_JUNIT_4_MUNIT_ENABLED"], + "DD_TRACE_JETTY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_CLIENT_ENABLED", "DD_INTEGRATION_JETTY_CLIENT_ENABLED"], + "DD_TRACE_JUNIT_4_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_CUCUMBER_ENABLED", "DD_INTEGRATION_JUNIT_4_CUCUMBER_ENABLED"], + "DD_TRACE_LOGS_INTAKE_ENABLED": ["DD_TRACE_INTEGRATION_LOGS_INTAKE_ENABLED", "DD_INTEGRATION_LOGS_INTAKE_ENABLED"], + "DD_TRACE_LOGS_INTAKE_LOG4J_2_ENABLED": ["DD_TRACE_INTEGRATION_LOGS_INTAKE_LOG4J_2_ENABLED", "DD_INTEGRATION_LOGS_INTAKE_LOG4J_2_ENABLED"], + "DD_TRACE_JUNIT_5_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_CUCUMBER_ENABLED", "DD_INTEGRATION_JUNIT_5_CUCUMBER_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_SERVER_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_SERVER_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_CLIENT_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_CLIENT_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_MESSAGE_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_MESSAGE_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_MESSAGE_ENABLED"], + "DD_TRACE_JUNIT_5_SPOCK_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_SPOCK_ENABLED", "DD_INTEGRATION_JUNIT_5_SPOCK_ENABLED"], + "DD_TRACE_MONGO_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_ENABLED", "DD_INTEGRATION_MONGO_ENABLED"], + "DD_TRACE_MONGO_REACTIVESTREAMS_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED", "DD_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED"], + "DD_TRACE_OPENSEARCH_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_ENABLED", "DD_INTEGRATION_OPENSEARCH_ENABLED"], + "DD_TRACE_OPENSEARCH_REST_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_REST_ENABLED", "DD_INTEGRATION_OPENSEARCH_REST_ENABLED"], + "DD_TRACE_MONGO_3_1_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_1_ENABLED", "DD_INTEGRATION_MONGO_3_1_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED"], + "DD_TRACE_OPENTELEMETRY_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_ENABLED"], + "DD_TRACE_OPENTELEMETRY_1_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_1_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_1_ENABLED"], + "DD_TRACE_MONGO_3_4_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_4_ENABLED", "DD_INTEGRATION_MONGO_3_4_ENABLED"], + "DD_TRACE_OPENTRACING_ENABLED": ["DD_TRACE_INTEGRATION_OPENTRACING_ENABLED", "DD_INTEGRATION_OPENTRACING_ENABLED"], + "DD_TRACE_OPENTRACING_GLOBALTRACER_ENABLED": ["DD_TRACE_INTEGRATION_OPENTRACING_GLOBALTRACER_ENABLED", "DD_INTEGRATION_OPENTRACING_GLOBALTRACER_ENABLED"], + "DD_TRACE_OPENTELEMETRY_BETA_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_BETA_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_BETA_ENABLED"], + "DD_TRACE_OPENSEARCH_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_TRANSPORT_ENABLED", "DD_INTEGRATION_OPENSEARCH_TRANSPORT_ENABLED"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED"], + "DD_TRACE_SCALA_PROMISE_RESOLVE_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_PROMISE_RESOLVE_ENABLED", "DD_INTEGRATION_SCALA_PROMISE_RESOLVE_ENABLED"], + "DD_TRACE_SCALA_FUTURE_OBJECT_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_FUTURE_OBJECT_ENABLED", "DD_INTEGRATION_SCALA_FUTURE_OBJECT_ENABLED"], + "DD_TRACE_SCALA_PROMISE_COMPLETE_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_PROMISE_COMPLETE_ENABLED", "DD_INTEGRATION_SCALA_PROMISE_COMPLETE_ENABLED"], + "DD_TRACE_REDISSON_ENABLED": ["DD_TRACE_INTEGRATION_REDISSON_ENABLED", "DD_INTEGRATION_REDISSON_ENABLED"], + "DD_TRACE_SERVICETALK_ENABLED": ["DD_TRACE_INTEGRATION_SERVICETALK_ENABLED", "DD_INTEGRATION_SERVICETALK_ENABLED"], + "DD_TRACE_SERVICETALK_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_SERVICETALK_CONCURRENT_ENABLED", "DD_INTEGRATION_SERVICETALK_CONCURRENT_ENABLED"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED"], + "DD_TRACE_TESTNG_6_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_6_ENABLED", "DD_INTEGRATION_TESTNG_6_ENABLED"], + "DD_TRACE_TESTNG_7_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_7_ENABLED", "DD_INTEGRATION_TESTNG_7_ENABLED"], + "DD_TRACE_UNDERTOW_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_ENABLED", "DD_INTEGRATION_UNDERTOW_ENABLED"], + "DD_TRACE_UNDERTOW_2_2_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_2_ENABLED", "DD_INTEGRATION_UNDERTOW_2_2_ENABLED"], + "DD_TRACE_SERVLET_2_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_2_ENABLED", "DD_INTEGRATION_SERVLET_2_ENABLED"], + "DD_TRACE_ZIO_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED", "DD_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED"], + "DD_TRACE_TIBCO_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_ENABLED", "DD_INTEGRATION_TIBCO_ENABLED"], + "DD_TRACE_TIBCO_BW_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_BW_ENABLED", "DD_INTEGRATION_TIBCO_BW_ENABLED"], + "DD_TRACE_SPARK_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_ENABLED", "DD_INTEGRATION_SPARK_ENABLED"], + "DD_TRACE_APACHE_SPARK_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_SPARK_ENABLED", "DD_INTEGRATION_APACHE_SPARK_ENABLED"], + "DD_TRACE_AKKA_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_ENABLED", "DD_INTEGRATION_AKKA_HTTP_ENABLED"], + "DD_TRACE_JAVAX_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_WEBSOCKET_ENABLED", "DD_INTEGRATION_JAVAX_WEBSOCKET_ENABLED"], + "DD_TRACE_UNDERTOW_2_0_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_0_ENABLED", "DD_INTEGRATION_UNDERTOW_2_0_ENABLED"], + "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED", "DD_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED"], + "DD_TRACE_AKKA_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED"], + "DD_TRACE_JAKARTA_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_WEBSOCKET_ENABLED", "DD_INTEGRATION_JAKARTA_WEBSOCKET_ENABLED"], + "DD_TRACE_MULE_JPMS_ENABLED": ["DD_TRACE_INTEGRATION_MULE_JPMS_ENABLED", "DD_INTEGRATION_MULE_JPMS_ENABLED"], + "DD_TRACE_SPRING_WEB_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED", "DD_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED"], + "DD_TRACE_AKKA_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_SERVER_ENABLED", "DD_INTEGRATION_AKKA_HTTP_SERVER_ENABLED"], + "DD_TRACE_AKKA_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP2_ENABLED", "DD_INTEGRATION_AKKA_HTTP2_ENABLED"] }, "deprecations": { } diff --git a/gradle/configInversionLinter.gradle b/gradle/configInversionLinter.gradle index 75ac7bab88a..c7fa14ba680 100644 --- a/gradle/configInversionLinter.gradle +++ b/gradle/configInversionLinter.gradle @@ -25,6 +25,8 @@ tasks.register('logEnvVarUsages') { def javaFiles = fileTree("$projectDir") { include '**/src/main/java/**/*.java' + + exclude '**/dd-smoke-tests/**' } def unsupportedTokensFound = [] From b68f0b2a70973975b06b1241204b5e2dd7b9a179 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 29 Jul 2025 18:01:08 -0400 Subject: [PATCH 11/47] updated all discoverable configs --- .../resources/supported-configurations.json | 1264 +++++++++++------ 1 file changed, 852 insertions(+), 412 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 494c6059263..774a379a219 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -1,16 +1,7 @@ { "supportedConfigurations": { "DD_AAS_JAVA_EXTENSION_VERSION": ["A"], - "DD_INSTRUMENTATION_INSTALL_ID": ["A"], - "DD_INSTRUMENTATION_INSTALL_TYPE": ["A"], - "DD_INSTRUMENTATION_INSTALL_TIME": ["A"], - "OTEL_LOG_LEVEL": ["A"], - "DD_UNDERTOW_CONTINUATION": ["A"], - "DD_PIPELINE_EXECUTION_ID": ["A"], "DD_ACTION_EXECUTION_ID": ["A"], - "DD_CUSTOM_TRACE_ID": ["A"], - "DD_TELEMETRY_FORWARDER_MAX_TAGS": ["A"], - "DD_TELEMETRY_FORWARDER_PATH": ["A"], "DD_ADD_SPAN_POINTERS": ["A"], "DD_AGENTLESS_LOG_SUBMISSION_ENABLED": ["A"], "DD_AGENTLESS_LOG_SUBMISSION_LEVEL": ["A"], @@ -121,6 +112,7 @@ "DD_CRASHTRACKING_PROXY_USERNAME": ["A"], "DD_CRASHTRACKING_TAGS": ["A"], "DD_CRASHTRACKING_UPLOAD_TIMEOUT": ["A"], + "DD_CUSTOM_TRACE_ID": ["A"], "DD_CWS_ENABLED": ["A"], "DD_CWS_TLS_REFRESH": ["A"], "DD_DATA_JOBS_COMMAND_PATTERN": ["A"], @@ -170,9 +162,20 @@ "DD_EXPERIMENTAL_API_SECURITY_ENABLED": ["A"], "DD_EXPERIMENTAL_DEFER_INTEGRATIONS_UNTIL": ["A"], "DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED": ["A"], + "DD_GIT_BRANCH": ["A"], + "DD_GIT_COMMIT_AUTHOR_DATE": ["A"], + "DD_GIT_COMMIT_AUTHOR_EMAIL": ["A"], + "DD_GIT_COMMIT_AUTHOR_NAME": ["A"], + "DD_GIT_COMMIT_COMMITTER_DATE": ["A"], + "DD_GIT_COMMIT_COMMITTER_EMAIL": ["A"], + "DD_GIT_COMMIT_COMMITTER_NAME": ["A"], "DD_GIT_COMMIT_HEAD_SHA": ["A"], + "DD_GIT_COMMIT_MESSAGE": ["A"], + "DD_GIT_COMMIT_SHA": ["A"], "DD_GIT_PULL_REQUEST_BASE_BRANCH": ["A"], "DD_GIT_PULL_REQUEST_BASE_BRANCH_SHA": ["A"], + "DD_GIT_REPOSITORY_URL": ["A"], + "DD_GIT_TAG": ["A"], "DD_GRPC_CLIENT_ERROR_STATUSES": ["A"], "DD_GRPC_SERVER_ERROR_STATUSES": ["A"], "DD_HTTP_CLIENT_ERROR_STATUSES": ["A"], @@ -218,6 +221,9 @@ "DD_INJECTION_ENABLED": ["A"], "DD_INJECT_FORCE": ["A"], "DD_INSTRUMENTATION_CONFIG_ID": ["A"], + "DD_INSTRUMENTATION_INSTALL_ID": ["A"], + "DD_INSTRUMENTATION_INSTALL_TIME": ["A"], + "DD_INSTRUMENTATION_INSTALL_TYPE": ["A"], "DD_INSTRUMENTATION_SOURCE": ["A"], "DD_INSTRUMENTATION_TELEMETRY_ENABLED": ["A"], "DD_INTEGRATIONS_ENABLED": ["A"], @@ -255,6 +261,7 @@ "DD_MESSAGE_BROKER_SPLIT_BY_DESTINATION": ["A"], "DD_OBFUSCATION_QUERY_STRING_REGEXP": ["A"], "DD_OPTIMIZED_MAP_ENABLED": ["A"], + "DD_PIPELINE_EXECUTION_ID": ["A"], "DD_PRIMARY_TAG": ["A"], "DD_PRIORITIZATION_TYPE": ["A"], "DD_PRIORITY_SAMPLING": ["A"], @@ -265,6 +272,15 @@ "DD_PROFILING_APIKEY_FILE": ["A"], "DD_PROFILING_API_KEY": ["A"], "DD_PROFILING_API_KEY_FILE": ["A"], + "DD_PROFILING_ASYNC_ALLOC_INTERVAL": ["A"], + "DD_PROFILING_ASYNC_CPU_INTERVAL_MS": ["A"], + "DD_PROFILING_ASYNC_CSTACK": ["A"], + "DD_PROFILING_ASYNC_DEBUG_LIB": ["A"], + "DD_PROFILING_ASYNC_LIVEHEAP_CAPACITY": ["A"], + "DD_PROFILING_ASYNC_LIVEHEAP_INTERVAL": ["A"], + "DD_PROFILING_ASYNC_LIVEHEAP_SAMPLE_PERCENT": ["A"], + "DD_PROFILING_ASYNC_SAFEMODE": ["A"], + "DD_PROFILING_ASYNC_WALL_INTERVAL_MS": ["A"], "DD_PROFILING_AUXILIARY": ["A"], "DD_PROFILING_BACKPRESSURE_SAMPLE_LIMIT": ["A"], "DD_PROFILING_BACKPRESSURE_SAMPLING_ENABLED": ["A"], @@ -310,6 +326,8 @@ "DD_PROFILING_EXCEPTION_RECORD_MESSAGE": ["A"], "DD_PROFILING_EXCEPTION_SAMPLE_LIMIT": ["A"], "DD_PROFILING_EXCLUDE_AGENT_THREADS": ["A"], + "DD_PROFILING_EXPERIMENTAL_ASYNC_SCHEDULING_EVENT": ["A"], + "DD_PROFILING_EXPERIMENTAL_ASYNC_SCHEDULING_EVENT_INTERVAL": ["A"], "DD_PROFILING_EXPERIMENTAL_DDPROF_SCHEDULING_EVENT": ["A"], "DD_PROFILING_EXPERIMENTAL_DDPROF_SCHEDULING_EVENT_INTERVAL": ["A"], "DD_PROFILING_EXPERIMENTAL_DDPROF_WALL_JVMTI": ["A"], @@ -408,6 +426,8 @@ "DD_TELEMETRY_DEPENDENCY_RESOLUTION_PERIOD_MILLIS": ["A"], "DD_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE": ["A"], "DD_TELEMETRY_EXTENDED_HEARTBEAT_INTERVAL": ["A"], + "DD_TELEMETRY_FORWARDER_MAX_TAGS": ["A"], + "DD_TELEMETRY_FORWARDER_PATH": ["A"], "DD_TELEMETRY_HEARTBEAT_INTERVAL": ["A"], "DD_TELEMETRY_LOG_COLLECTION_ENABLED": ["A"], "DD_TELEMETRY_METRICS_ENABLED": ["A"], @@ -420,6 +440,8 @@ "DD_THIRD_PARTY_SHADING_IDENTIFIERS": ["A"], "DD_TRACE_128_BIT_TRACEID_GENERATION_ENABLED": ["A"], "DD_TRACE_128_BIT_TRACEID_LOGGING_ENABLED": ["A"], + "DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_AEROSPIKE_ENABLED": ["A"], "DD_TRACE_AGENT_ARGS": ["A"], "DD_TRACE_AGENT_PATH": ["A"], @@ -437,48 +459,89 @@ "DD_TRACE_AKKA_FORK_JOIN_POOL_NAME": ["A"], "DD_TRACE_AKKA_FORK_JOIN_TASK_NAME": ["A"], "DD_TRACE_AKKA_HTTP2_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_AKKA_HTTP_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_AKKA_HTTP_CLIENT_ENABLED": ["A"], "DD_TRACE_AKKA_HTTP_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_SERVER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AKKA_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_AKKA_HTTP_SERVER_ENABLED": ["A"], "DD_TRACE_ALLOCATEDIRECT_ENABLED": ["A"], + "DD_TRACE_AMQP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AMQP_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_AMQP_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_AMQP_ENABLED": ["A"], "DD_TRACE_ANALYTICS_ENABLED": ["A"], "DD_TRACE_ANNOTATIONS": ["A"], + "DD_TRACE_ANNOTATIONS_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_ANNOTATION_ASYNC": ["A"], "DD_TRACE_APACHE_HTTPASYNCCLIENT5_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCLIENT5_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCLIENT5_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_APACHE_HTTPCLIENT5_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTPCLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_APACHE_HTTPCLIENT_ENABLED": ["A"], "DD_TRACE_APACHE_HTTPCORE_5_ENABLED": ["A"], "DD_TRACE_APACHE_HTTPCORE_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CLIENT5_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CLIENT5_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_APACHE_HTTP_CLIENT5_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_APACHE_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_APACHE_HTTP_CLIENT_ENABLED": ["A"], "DD_TRACE_APACHE_HTTP_CORE_5_ENABLED": ["A"], "DD_TRACE_APACHE_HTTP_CORE_ENABLED": ["A"], "DD_TRACE_APACHE_SPARK_ENABLED": ["A"], + "DD_TRACE_ARMERIA_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_ARMERIA_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_ARMERIA_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_ARMERIA_GRPC_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_ARMERIA_GRPC_CLIENT_ENABLED": ["A"], "DD_TRACE_ARMERIA_GRPC_ENABLED": ["A"], "DD_TRACE_ARMERIA_GRPC_MESSAGE_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_SERVER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_ARMERIA_GRPC_SERVER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_ARMERIA_GRPC_SERVER_ENABLED": ["A"], "DD_TRACE_ARMERIA_JETTY_ENABLED": ["A"], "DD_TRACE_AUTH0_JWT_ENABLED": ["A"], "DD_TRACE_AVRO_ENABLED": ["A"], + "DD_TRACE_AWS_ADD_SPAN_POINTERS": ["A"], "DD_TRACE_AWS_DYNAMODB_ENABLED": ["A"], "DD_TRACE_AWS_LAMBDA_ENABLED": ["A"], "DD_TRACE_AWS_PROPAGATION_ENABLED": ["A"], "DD_TRACE_AWS_S3_ENABLED": ["A"], + "DD_TRACE_AWS_SDK_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AWS_SDK_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_AWS_SDK_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_AWS_SDK_ENABLED": ["A"], + "DD_TRACE_AWS_SDK_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_AWS_SDK_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_AXIS2_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AXIS2_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_AXIS2_ENABLED": ["A"], "DD_TRACE_AXIS2_TRANSPORT_ENABLED": ["A"], "DD_TRACE_AXIS_PROMOTE_RESOURCE_NAME": ["A"], "DD_TRACE_AXIS_TRANSPORT_CLASS_NAME": ["A"], "DD_TRACE_AXWAY_API_ENABLED": ["A"], + "DD_TRACE_AXWAY_HTTP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AXWAY_HTTP_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_AZURE_FUNCTIONS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_AZURE_FUNCTIONS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_AZURE_FUNCTIONS_ENABLED": ["A"], "DD_TRACE_BAGGAGE_MAX_BYTES": ["A"], "DD_TRACE_BAGGAGE_MAX_ITEMS": ["A"], "DD_TRACE_CAFFEINE_ENABLED": ["A"], + "DD_TRACE_CASSANDRA_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_CASSANDRA_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_CASSANDRA_ENABLED": ["A"], "DD_TRACE_CASSANDRA_KEYSPACE_STATEMENT_EXTRACTION_ENABLED": ["A"], "DD_TRACE_CI_VISIBILITY_ENABLED": ["A"], @@ -498,19 +561,30 @@ "DD_TRACE_CLOUD_RESPONSE_PAYLOAD_TAGGING": ["A"], "DD_TRACE_CODESOURCES_EXCLUDE": ["A"], "DD_TRACE_COMMONS_FILEUPLOAD_ENABLED": ["A"], + "DD_TRACE_COMMONS_HTTP_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_COMMONS_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_COMMONS_HTTP_CLIENT_ENABLED": ["A"], "DD_TRACE_CONFIG": ["A"], "DD_TRACE_CONSUMER_TASK_ENABLED": ["A"], "DD_TRACE_COUCHBASE_3_ENABLED": ["A"], + "DD_TRACE_COUCHBASE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_COUCHBASE_ENABLED": ["A"], "DD_TRACE_COUCHBASE_INTERNAL_SPANS_ENABLED": ["A"], + "DD_TRACE_CUCUMBER_5_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_CUCUMBER_5_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_CUCUMBER_5_ENABLED": ["A"], + "DD_TRACE_CUCUMBER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_CUCUMBER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_CUCUMBER_ENABLED": ["A"], "DD_TRACE_CXF_ENABLED": ["A"], "DD_TRACE_CXF_INVOKER_ENABLED": ["A"], + "DD_TRACE_DATANUCLEUS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_DATANUCLEUS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_DATANUCLEUS_ENABLED": ["A"], "DD_TRACE_DB2_ENABLED": ["A"], "DD_TRACE_DBM_ENABLED": ["A"], + "DD_TRACE_DBSTATEMENTRULE_ENABLED": ["A"], "DD_TRACE_DB_CLIENT_SPLIT_BY_HOST": ["A"], "DD_TRACE_DB_CLIENT_SPLIT_BY_INSTANCE": ["A"], "DD_TRACE_DB_CLIENT_SPLIT_BY_INSTANCE_TYPE_SUFFIX": ["A"], @@ -521,6 +595,8 @@ "DD_TRACE_DROPWIZARD_ENABLED": ["A"], "DD_TRACE_DROPWIZARD_VIEW_ENABLED": ["A"], "DD_TRACE_DYNAMODB_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_ELASTICSEARCH_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_ELASTICSEARCH_BODY_AND_PARAMS_ENABLED": ["A"], "DD_TRACE_ELASTICSEARCH_BODY_ENABLED": ["A"], "DD_TRACE_ELASTICSEARCH_ENABLED": ["A"], @@ -549,29 +625,52 @@ "DD_TRACE_FILEITEMITERATOR_ENABLED": ["A"], "DD_TRACE_FILEITEMSTREAM_ENABLED": ["A"], "DD_TRACE_FILEITEM_ENABLED": ["A"], + "DD_TRACE_FINATRA_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_FINATRA_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_FINATRA_ENABLED": ["A"], "DD_TRACE_FJP_ENABLED": ["A"], "DD_TRACE_FJP_WORKQUEUE_ENABLED": ["A"], "DD_TRACE_FLUSH_INTERVAL": ["A"], + "DD_TRACE_FORCEMANUALDROPTAGINTERCEPTOR_ENABLED": ["A"], + "DD_TRACE_FORCEMANUALKEEPTAGINTERCEPTOR_ENABLED": ["A"], + "DD_TRACE_FORCESAMPLINGPRIORITYTAGINTERCEPTOR_ENABLED": ["A"], "DD_TRACE_FREEMARKER_ENABLED": ["A"], "DD_TRACE_GIT_METADATA_ENABLED": ["A"], "DD_TRACE_GLASSFISH_ENABLED": ["A"], "DD_TRACE_GLOBAL_TAGS": ["A"], + "DD_TRACE_GOOGLE_HTTP_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GOOGLE_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_GOOGLE_HTTP_CLIENT_ENABLED": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_GOOGLE_PUBSUB_ENABLED": ["A"], "DD_TRACE_GOOGLE_PUBSUB_IGNORED_GRPC_METHODS": ["A"], + "DD_TRACE_GOOGLE_PUBSUB_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["A"], "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["A"], + "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["A"], + "DD_TRACE_GRIZZLY_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GRIZZLY_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_GRIZZLY_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GRIZZLY_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_GRIZZLY_CLIENT_ENABLED": ["A"], "DD_TRACE_GRIZZLY_ENABLED": ["A"], "DD_TRACE_GRIZZLY_FILTERCHAIN_ENABLED": ["A"], + "DD_TRACE_GRPC_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_GRPC_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_GRPC_CLIENT_ENABLED": ["A"], "DD_TRACE_GRPC_ENABLED": ["A"], "DD_TRACE_GRPC_IGNORED_INBOUND_METHODS": ["A"], "DD_TRACE_GRPC_IGNORED_OUTBOUND_METHODS": ["A"], "DD_TRACE_GRPC_MESSAGE_ENABLED": ["A"], "DD_TRACE_GRPC_NETTY_ENABLED": ["A"], + "DD_TRACE_GRPC_SERVER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_GRPC_SERVER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_GRPC_SERVER_CODE_ORIGIN_ENABLED": ["A"], "DD_TRACE_GRPC_SERVER_ENABLED": ["A"], "DD_TRACE_GRPC_SERVER_TRIM_PACKAGE_RESOURCE": ["A"], @@ -579,21 +678,34 @@ "DD_TRACE_GUAVA_ENABLED": ["A"], "DD_TRACE_HAZELCAST_ENABLED": ["A"], "DD_TRACE_HAZELCAST_LEGACY_ENABLED": ["A"], + "DD_TRACE_HAZELCAST_SDK_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_HAZELCAST_SDK_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_HEADER_BAGGAGE": ["A"], "DD_TRACE_HEADER_TAGS": ["A"], "DD_TRACE_HEADER_TAGS_LEGACY_PARSING_ENABLED": ["A"], "DD_TRACE_HEALTH_METRICS_ENABLED": ["A"], "DD_TRACE_HEALTH_METRICS_STATSD_HOST": ["A"], "DD_TRACE_HEALTH_METRICS_STATSD_PORT": ["A"], + "DD_TRACE_HIBERNATE_CORE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_HIBERNATE_CORE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_HIBERNATE_CORE_ENABLED": ["A"], "DD_TRACE_HIBERNATE_ENABLED": ["A"], + "DD_TRACE_HTTPASYNCCLIENT4_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_HTTPASYNCCLIENT5_ENABLED": ["A"], + "DD_TRACE_HTTPASYNCCLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_HTTPASYNCCLIENT_ENABLED": ["A"], + "DD_TRACE_HTTPCLIENT5_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_HTTPCLIENT5_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_HTTPCLIENT5_ENABLED": ["A"], + "DD_TRACE_HTTPCLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_HTTPCLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_HTTPCLIENT_ENABLED": ["A"], "DD_TRACE_HTTPCLIENT_REDIRECT_ENABLED": ["A"], "DD_TRACE_HTTPCORE_5_ENABLED": ["A"], "DD_TRACE_HTTPCORE_ENABLED": ["A"], + "DD_TRACE_HTTPURLCONNECTION_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_HTTPURLCONNECTION_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_HTTPURLCONNECTION_ENABLED": ["A"], "DD_TRACE_HTTP_CLIENT_ERROR_STATUSES": ["A"], "DD_TRACE_HTTP_CLIENT_PATH_RESOURCE_NAME_MAPPING": ["A"], @@ -606,8 +718,20 @@ "DD_TRACE_HYSTRIX_ENABLED": ["A"], "DD_TRACE_IASTINSTRUMENTATION_ENABLED": ["A"], "DD_TRACE_IAST_RESULTSET_ENABLED": ["A"], + "DD_TRACE_IGNITE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_IGNITE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_IGNITE_ENABLED": ["A"], "DD_TRACE_INPUTSTREAM_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_DATANUCLEUS_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_DROPWIZARD_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_GRPC_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_HIBERNATE_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_HTTPASYNCCLIENT5_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_HTTPCLIENT5_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_HTTPCLIENT_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_JAVA_CONCURRENT_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_TRACE_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED": ["A"], "DD_TRACE_INTERNAL_EXIT_ON_FAILURE": ["A"], "DD_TRACE_JACKSON_1_ENABLED": ["A"], "DD_TRACE_JACKSON_2_12_ENABLED": ["A"], @@ -627,6 +751,8 @@ "DD_TRACE_JAKARTA_RS_ENABLED": ["A"], "DD_TRACE_JAKARTA_RS_FILTER_ENABLED": ["A"], "DD_TRACE_JAKARTA_WEBSOCKET_ENABLED": ["A"], + "DD_TRACE_JAKARTA_WS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JAKARTA_WS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JAKARTA_WS_ENABLED": ["A"], "DD_TRACE_JAVAX_MAIL_BODY_ENABLED": ["A"], "DD_TRACE_JAVAX_MAIL_ENABLED": ["A"], @@ -635,39 +761,67 @@ "DD_TRACE_JAVA_COMPLETABLEFUTURE_ENABLED": ["A"], "DD_TRACE_JAVA_CONCURRENT_ENABLED": ["A"], "DD_TRACE_JAVA_CONCURRENT_OTHER_ENABLED": ["A"], + "DD_TRACE_JAVA_HTTP_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JAVA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JAVA_HTTP_CLIENT_ENABLED": ["A"], "DD_TRACE_JAVA_LANG_APPSEC_ENABLED": ["A"], "DD_TRACE_JAVA_LANG_MANAGEMENT_ENABLED": ["A"], "DD_TRACE_JAVA_TIMER_ENABLED": ["A"], + "DD_TRACE_JAXRS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JAXRS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JAXRS_ENABLED": ["A"], "DD_TRACE_JAX_RS_ADDITIONAL_ANNOTATIONS": ["A"], + "DD_TRACE_JAX_RS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JAX_RS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JAX_RS_ANNOTATIONS_ENABLED": ["A"], + "DD_TRACE_JAX_RS_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JAX_RS_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JAX_RS_CLIENT_ENABLED": ["A"], "DD_TRACE_JAX_RS_ENABLED": ["A"], "DD_TRACE_JAX_RS_EXCEPTION_AS_ERROR_ENABLED": ["A"], "DD_TRACE_JAX_RS_FILTER_ENABLED": ["A"], + "DD_TRACE_JAX_WS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JAX_WS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JAX_WS_ENABLED": ["A"], "DD_TRACE_JBOSS_LOGMANAGER_ENABLED": ["A"], "DD_TRACE_JBOSS_MODULES_ENABLED": ["A"], + "DD_TRACE_JDBC_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JDBC_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JDBC_CONNECTION_CLASS_NAME": ["A"], + "DD_TRACE_JDBC_DATASOURCE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JDBC_DATASOURCE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JDBC_DATASOURCE_ENABLED": ["A"], "DD_TRACE_JDBC_ENABLED": ["A"], "DD_TRACE_JDBC_PREPARED_STATEMENT_CLASS_NAME": ["A"], "DD_TRACE_JDBC_RESULTSET_ENABLED": ["A"], + "DD_TRACE_JEDIS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JEDIS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JEDIS_ENABLED": ["A"], "DD_TRACE_JEE_ENV_ENTRY_ENABLED": ["A"], "DD_TRACE_JERSEY_ENABLED": ["A"], + "DD_TRACE_JETTY_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JETTY_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_JETTY_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JETTY_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JETTY_CLIENT_ENABLED": ["A"], "DD_TRACE_JETTY_CONCURRENT_ENABLED": ["A"], "DD_TRACE_JETTY_ENABLED": ["A"], "DD_TRACE_JETTY_WEBSOCKET_ENABLED": ["A"], "DD_TRACE_JMS_1_ENABLED": ["A"], "DD_TRACE_JMS_2_ENABLED": ["A"], + "DD_TRACE_JMS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JMS_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_JMS_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_JMS_ENABLED": ["A"], + "DD_TRACE_JMS_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_JMS_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_JMS_TIME_IN_QUEUE_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_WEBSPHERE_ENABLED": ["A"], "DD_TRACE_JMX_TAGS": ["A"], "DD_TRACE_JNI_ENABLED": ["A"], "DD_TRACE_JOSE_JWT_ENABLED": ["A"], + "DD_TRACE_JSP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_JSP_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_JSP_COMPILE_ENABLED": ["A"], "DD_TRACE_JSP_ENABLED": ["A"], "DD_TRACE_JSP_RENDER_ENABLED": ["A"], @@ -682,19 +836,32 @@ "DD_TRACE_JWT_ENABLED": ["A"], "DD_TRACE_KAFKA_0_11_ENABLED": ["A"], "DD_TRACE_KAFKA_3_8_ENABLED": ["A"], + "DD_TRACE_KAFKA_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_KAFKA_CLIENT_PROPAGATION_ENABLED": ["A"], "DD_TRACE_KAFKA_CONNECT_ENABLED": ["A"], + "DD_TRACE_KAFKA_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_KAFKA_ENABLED": ["A"], + "DD_TRACE_KAFKA_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_KAFKA_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_KAFKA_STREAMS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_KAFKA_STREAMS_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_KAFKA_STREAMS_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_KAFKA_STREAMS_ENABLED": ["A"], + "DD_TRACE_KAFKA_TIME_IN_QUEUE_ENABLED": ["A"], "DD_TRACE_KARATE_ENABLED": ["A"], "DD_TRACE_KOTLIN_COROUTINE_ENABLED": ["A"], + "DD_TRACE_LEGACY_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_LETTUCE_4_ASYNC_ENABLED": ["A"], "DD_TRACE_LETTUCE_4_ENABLED": ["A"], "DD_TRACE_LETTUCE_5_ASYNC_ENABLED": ["A"], "DD_TRACE_LETTUCE_5_ENABLED": ["A"], "DD_TRACE_LETTUCE_5_RX_ENABLED": ["A"], + "DD_TRACE_LETTUCE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_LETTUCE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_LETTUCE_ENABLED": ["A"], + "DD_TRACE_LIBERTY_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_LIBERTY_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_LIBERTY_CLASSLOADING_ENABLED": ["A"], "DD_TRACE_LIBERTY_ENABLED": ["A"], "DD_TRACE_LOG4J_1_ENABLED": ["A"], @@ -705,6 +872,8 @@ "DD_TRACE_LOGS_INTAKE_LOG4J_2_ENABLED": ["A"], "DD_TRACE_MAVEN_ENABLED": ["A"], "DD_TRACE_METHODS": ["A"], + "DD_TRACE_MICRONAUT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_MICRONAUT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_MICRONAUT_ENABLED": ["A"], "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED": ["A"], "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED": ["A"], @@ -714,34 +883,58 @@ "DD_TRACE_MMAP_ENABLED": ["A"], "DD_TRACE_MONGO_3_1_ENABLED": ["A"], "DD_TRACE_MONGO_3_4_ENABLED": ["A"], + "DD_TRACE_MONGO_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_MONGO_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_MONGO_ENABLED": ["A"], "DD_TRACE_MONGO_REACTIVESTREAMS_ENABLED": ["A"], + "DD_TRACE_MULE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_MULE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_MULE_ENABLED": ["A"], "DD_TRACE_MULE_JPMS_ENABLED": ["A"], "DD_TRACE_MULTIPART_ENABLED": ["A"], "DD_TRACE_NATIVE_IMAGE_ENABLED": ["A"], "DD_TRACE_NETTY_3_8_ENABLED": ["A"], + "DD_TRACE_NETTY_3_9_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_NETTY_3_9_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_NETTY_4_0_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_NETTY_4_0_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_NETTY_4_0_ENABLED": ["A"], "DD_TRACE_NETTY_4_1_ENABLED": ["A"], "DD_TRACE_NETTY_4_1_HTTP2_ENABLED": ["A"], + "DD_TRACE_NETTY_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_NETTY_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_NETTY_CONCURRENT_ENABLED": ["A"], "DD_TRACE_NETTY_ENABLED": ["A"], "DD_TRACE_NETTY_EVENT_EXECUTOR_ENABLED": ["A"], "DD_TRACE_NETTY_PROMISE_ENABLED": ["A"], "DD_TRACE_NEW_TASK_FOR_ENABLED": ["A"], + "DD_TRACE_NING_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_NING_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_NING_ENABLED": ["A"], "DD_TRACE_NOT_NOT_TRACE_ENABLED": ["A"], "DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXP": ["A"], "DD_TRACE_OGNL_ENABLED": ["A"], + "DD_TRACE_OKHTTP_2_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_OKHTTP_2_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_OKHTTP_2_ENABLED": ["A"], + "DD_TRACE_OKHTTP_3_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_OKHTTP_3_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_OKHTTP_3_ENABLED": ["A"], + "DD_TRACE_OKHTTP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_OKHTTP_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_OKHTTP_ENABLED": ["A"], + "DD_TRACE_OPENSEARCH_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_OPENSEARCH_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_OPENSEARCH_ENABLED": ["A"], "DD_TRACE_OPENSEARCH_REST_ENABLED": ["A"], "DD_TRACE_OPENSEARCH_TRANSPORT_ENABLED": ["A"], "DD_TRACE_OPENTELEMETRY_1_ENABLED": ["A"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED": ["A"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ENABLED": ["A"], "DD_TRACE_OPENTELEMETRY_BETA_ENABLED": ["A"], "DD_TRACE_OPENTELEMETRY_EXPERIMENTAL_ENABLED": ["A"], @@ -752,6 +945,7 @@ "DD_TRACE_OTEL_ENABLED": ["A"], "DD_TRACE_PARTIAL_FLUSH_ENABLED": ["A"], "DD_TRACE_PARTIAL_FLUSH_MIN_SPANS": ["A"], + "DD_TRACE_PEERSERVICETAGINTERCEPTOR_ENABLED": ["A"], "DD_TRACE_PEER_HOSTNAME_ENABLED": ["A"], "DD_TRACE_PEER_SERVICE_COMPONENT_OVERRIDES": ["A"], "DD_TRACE_PEER_SERVICE_DEFAULTS_ENABLED": ["A"], @@ -762,15 +956,25 @@ "DD_TRACE_PEKKO_ACTOR_SEND_ENABLED": ["A"], "DD_TRACE_PEKKO_CONCURRENT_ENABLED": ["A"], "DD_TRACE_PEKKO_HTTP2_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_PEKKO_HTTP_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_PEKKO_HTTP_CLIENT_ENABLED": ["A"], "DD_TRACE_PEKKO_HTTP_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_SERVER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_PEKKO_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_PEKKO_HTTP_SERVER_ENABLED": ["A"], "DD_TRACE_PEKKO_SCHEDULER_ENABLED": ["A"], "DD_TRACE_PERF_METRICS_ENABLED": ["A"], "DD_TRACE_PIPE_NAME": ["A"], "DD_TRACE_PLAY_ACTION_ENABLED": ["A"], + "DD_TRACE_PLAY_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_PLAY_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_PLAY_ENABLED": ["A"], "DD_TRACE_PLAY_REPORT_HTTP_STATUS": ["A"], + "DD_TRACE_PLAY_WS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_PLAY_WS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_PLAY_WS_ENABLED": ["A"], "DD_TRACE_POST_PROCESSING_TIMEOUT": ["A"], "DD_TRACE_POWERMOCK_ENABLED": ["A"], @@ -781,11 +985,22 @@ "DD_TRACE_PROPAGATION_STYLE_EXTRACT": ["A"], "DD_TRACE_PROPAGATION_STYLE_INJECT": ["A"], "DD_TRACE_PROTOBUF_ENABLED": ["A"], + "DD_TRACE_QUARTZ_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_QUARTZ_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_QUARTZ_ENABLED": ["A"], + "DD_TRACE_RABBITMQ_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_RABBITMQ_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_RABBITMQ_ENABLED": ["A"], + "DD_TRACE_RABBITMQ_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_RABBITMQ_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_RABBITMQ_TIME_IN_QUEUE_ENABLED": ["A"], + "DD_TRACE_RABBIT_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_RABBIT_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_RABBIT_TIME_IN_QUEUE_ENABLED": ["A"], "DD_TRACE_RATE_LIMIT": ["A"], + "DD_TRACE_RATPACK_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_RATPACK_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_RATPACK_ENABLED": ["A"], "DD_TRACE_RATPACK_REQUEST_BODY_ENABLED": ["A"], "DD_TRACE_REACTIVE_STREAMS_1_ENABLED": ["A"], @@ -795,7 +1010,13 @@ "DD_TRACE_REACTOR_NETTY_ENABLED": ["A"], "DD_TRACE_REDISCALA_CONNECTION_ENABLED": ["A"], "DD_TRACE_REDISCALA_ENABLED": ["A"], + "DD_TRACE_REDISSCALA_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_REDISSCALA_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_REDISSON_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_REDISSON_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_REDISSON_ENABLED": ["A"], + "DD_TRACE_REDIS_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_REDIS_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_REDIS_ENABLED": ["A"], "DD_TRACE_REJECTED_EXECUTION_HANDLER_ENABLED": ["A"], "DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED": ["A"], @@ -804,15 +1025,26 @@ "DD_TRACE_REQUEST_HEADER_TAGS": ["A"], "DD_TRACE_REQUEST_HEADER_TAGS_COMMA_ALLOWED": ["A"], "DD_TRACE_RESOLVER_ENABLED": ["A"], + "DD_TRACE_RESOURCENAMERULE_ENABLED": ["A"], "DD_TRACE_RESPONSE_ENABLED": ["A"], "DD_TRACE_RESPONSE_HEADER_TAGS": ["A"], "DD_TRACE_RESTEASY_ENABLED": ["A"], + "DD_TRACE_RESTLET_HTTP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_RESTLET_HTTP_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_RESTLET_HTTP_ENABLED": ["A"], + "DD_TRACE_RESTLET_HTTP_SERVER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_RESTLET_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_RESTLET_HTTP_SERVER_ENABLED": ["A"], + "DD_TRACE_RMI_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_RMI_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_RMI_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_RMI_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED": ["A"], "DD_TRACE_RMI_CLIENT_ENABLED": ["A"], "DD_TRACE_RMI_CONTEXT_PROPAGATOR_ENABLED": ["A"], "DD_TRACE_RMI_ENABLED": ["A"], + "DD_TRACE_RMI_SERVER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_RMI_SERVER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED": ["A"], "DD_TRACE_RMI_SERVER_ENABLED": ["A"], "DD_TRACE_RUNNABLE_ENABLED": ["A"], @@ -829,6 +1061,7 @@ "DD_TRACE_SCALA_CONCURRENT_ENABLED": ["A"], "DD_TRACE_SCALA_FUTURE_OBJECT_ENABLED": ["A"], "DD_TRACE_SCALA_PROMISE_COMPLETE_ENABLED": ["A"], + "DD_TRACE_SCALA_PROMISE_COMPLETION_PRIORITY_ENABLED": ["A"], "DD_TRACE_SCALA_PROMISE_RESOLVE_ENABLED": ["A"], "DD_TRACE_SCOPE_DEPTH_LIMIT": ["A"], "DD_TRACE_SCOPE_ITERATION_KEEP_ALIVE": ["A"], @@ -837,21 +1070,37 @@ "DD_TRACE_SELENIUM_ENABLED": ["A"], "DD_TRACE_SERIALVERSIONUID_FIELD_INJECTION": ["A"], "DD_TRACE_SERVELET_RESPONSE_ENABLED": ["A"], + "DD_TRACE_SERVICENAMETAGINTERCEPTOR_ENABLED": ["A"], "DD_TRACE_SERVICETALK_CONCURRENT_ENABLED": ["A"], "DD_TRACE_SERVICETALK_ENABLED": ["A"], + "DD_TRACE_SERVLETCONTEXTTAGINTERCEPTOR_ENABLED": ["A"], + "DD_TRACE_SERVLET_2_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SERVLET_2_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SERVLET_2_ENABLED": ["A"], + "DD_TRACE_SERVLET_3_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SERVLET_3_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SERVLET_3_ENABLED": ["A"], "DD_TRACE_SERVLET_5_ENABLED": ["A"], + "DD_TRACE_SERVLET_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SERVLET_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SERVLET_ASYNC_TIMEOUT_ERROR": ["A"], "DD_TRACE_SERVLET_COOKIE_ENABLED": ["A"], + "DD_TRACE_SERVLET_DISPATCHER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SERVLET_DISPATCHER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SERVLET_DISPATCHER_ENABLED": ["A"], "DD_TRACE_SERVLET_ENABLED": ["A"], + "DD_TRACE_SERVLET_FILTER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SERVLET_FILTER_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SERVLET_FILTER_ENABLED": ["A"], "DD_TRACE_SERVLET_PRINCIPAL_ENABLED": ["A"], "DD_TRACE_SERVLET_REQUEST_BODY_ENABLED": ["A"], "DD_TRACE_SERVLET_REQUEST_ENABLED": ["A"], + "DD_TRACE_SERVLET_RESPONSE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SERVLET_RESPONSE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SERVLET_RESPONSE_ENABLED": ["A"], "DD_TRACE_SERVLET_ROOT_CONTEXT_SERVICE_NAME": ["A"], + "DD_TRACE_SERVLET_SERVICE_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SERVLET_SERVICE_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SERVLET_SERVICE_ENABLED": ["A"], "DD_TRACE_SERVLET_SESSION_ENABLED": ["A"], "DD_TRACE_SETUP_TEARDOWN_ENABLED": ["A"], @@ -866,41 +1115,67 @@ "DD_TRACE_SPARKJAVA_2_4_ENABLED": ["A"], "DD_TRACE_SPARKJAVA_ENABLED": ["A"], "DD_TRACE_SPARK_ENABLED": ["A"], + "DD_TRACE_SPARK_EXECUTOR_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPARK_EXECUTOR_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SPARK_EXECUTOR_ENABLED": ["A"], "DD_TRACE_SPARK_EXIT_ENABLED": ["A"], "DD_TRACE_SPARK_OPENLINEAGE_ENABLED": ["A"], "DD_TRACE_SPLIT_BY_TAGS": ["A"], + "DD_TRACE_SPRAY_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPRAY_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SPRING_ASYNC_ENABLED": ["A"], "DD_TRACE_SPRING_BEANS_ENABLED": ["A"], "DD_TRACE_SPRING_BOOT_ENABLED": ["A"], "DD_TRACE_SPRING_BOOT_SPAN_ORIGIN_ENABLED": ["A"], "DD_TRACE_SPRING_CLOUD_ZUUL_ENABLED": ["A"], "DD_TRACE_SPRING_CORE_ENABLED": ["A"], + "DD_TRACE_SPRING_DATA_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPRING_DATA_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SPRING_DATA_ENABLED": ["A"], "DD_TRACE_SPRING_JMS_ENABLED": ["A"], "DD_TRACE_SPRING_MESSAGING_4_ENABLED": ["A"], + "DD_TRACE_SPRING_MESSAGING_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPRING_MESSAGING_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_SPRING_MESSAGING_E2E_DURATION_ENABLED": ["A"], "DD_TRACE_SPRING_MESSAGING_ENABLED": ["A"], "DD_TRACE_SPRING_PATH_FILTER_ENABLED": ["A"], "DD_TRACE_SPRING_RABBIT_ENABLED": ["A"], + "DD_TRACE_SPRING_SCHEDULING_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPRING_SCHEDULING_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SPRING_SCHEDULING_ENABLED": ["A"], + "DD_TRACE_SPRING_SCHEDULING_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_SPRING_SECURITY_ENABLED": ["A"], + "DD_TRACE_SPRING_WEBFLUX_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPRING_WEBFLUX_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_SPRING_WEBFLUX_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPRING_WEBFLUX_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SPRING_WEBFLUX_CLIENT_ENABLED": ["A"], "DD_TRACE_SPRING_WEBFLUX_ENABLED": ["A"], "DD_TRACE_SPRING_WEBFLUX_FUNCTIONAL_ENABLED": ["A"], + "DD_TRACE_SPRING_WEB_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPRING_WEB_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SPRING_WEB_CODE_ORIGIN_ENABLED": ["A"], "DD_TRACE_SPRING_WEB_ENABLED": ["A"], "DD_TRACE_SPRING_WS_2_ENABLED": ["A"], "DD_TRACE_SPRING_WS_ENABLED": ["A"], + "DD_TRACE_SPYMEMCACHED_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SPYMEMCACHED_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SPYMEMCACHED_ENABLED": ["A"], "DD_TRACE_SQS_BODY_PROPAGATION_ENABLED": ["A"], "DD_TRACE_SQS_ENABLED": ["A"], + "DD_TRACE_SQS_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_SQS_PROPAGATION_ENABLED": ["A"], + "DD_TRACE_SQS_TIME_IN_QUEUE_ENABLED": ["A"], "DD_TRACE_SSLSOCKET_ENABLED": ["A"], "DD_TRACE_STARTUP_LOGS": ["A"], "DD_TRACE_STATS_COMPUTATION_ENABLED": ["A"], + "DD_TRACE_STATUS404DECORATOR_ENABLED": ["A"], + "DD_TRACE_STATUS404RULE_ENABLED": ["A"], "DD_TRACE_STRICT_WRITES_ENABLED": ["A"], "DD_TRACE_STRUCTURED_TASK_SCOPE_ENABLED": ["A"], "DD_TRACE_SUREFIRE_ENABLED": ["A"], + "DD_TRACE_SYNAPSE3_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_SYNAPSE3_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_SYNAPSE3_CLIENT_ENABLED": ["A"], "DD_TRACE_SYNAPSE3_ENABLED": ["A"], "DD_TRACE_SYNAPSE3_SERVER_ENABLED": ["A"], @@ -915,11 +1190,16 @@ "DD_TRACE_TEST_ORDER_ENABLED": ["A"], "DD_TRACE_TEST_RETRY_ENABLED": ["A"], "DD_TRACE_THREAD_POOL_EXECUTORS_EXCLUDE": ["A"], + "DD_TRACE_THREAD_POOL_EXECUTORS_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_THROWABLES_ENABLED": ["A"], "DD_TRACE_THYMELEAF_ENABLED": ["A"], + "DD_TRACE_TIBCO_BW_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_TIBCO_BW_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_TIBCO_BW_ENABLED": ["A"], "DD_TRACE_TIBCO_ENABLED": ["A"], "DD_TRACE_TINYLOG_ENABLED": ["A"], + "DD_TRACE_TOMCAT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_TOMCAT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_TOMCAT_CLASSLOADING_ENABLED": ["A"], "DD_TRACE_TOMCAT_ENABLED": ["A"], "DD_TRACE_TOMCAT_WEBSOCKET_ENABLED": ["A"], @@ -928,16 +1208,32 @@ "DD_TRACE_TRACER_METRICS_IGNORED_RESOURCES": ["A"], "DD_TRACE_TRACER_METRICS_MAX_AGGREGATES": ["A"], "DD_TRACE_TRACER_METRICS_MAX_PENDING": ["A"], + "DD_TRACE_TRACE_ANNOTATION_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_TRACE_ANNOTATION_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_TRACE_ANNOTATION_ENABLED": ["A"], + "DD_TRACE_TRACE_CONFIG_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_TRACE_CONFIG_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_TRACE_CONFIG_ENABLED": ["A"], "DD_TRACE_TRACE_ENABLED": ["A"], "DD_TRACE_TRIAGE": ["A"], + "DD_TRACE_TWILIO_SDK_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_TWILIO_SDK_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_TWILIO_SDK_ENABLED": ["A"], "DD_TRACE_UNDERTOW_2_0_ENABLED": ["A"], "DD_TRACE_UNDERTOW_2_2_ENABLED": ["A"], "DD_TRACE_UNDERTOW_ENABLED": ["A"], + "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_UNDERTOW_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["A"], + "DD_TRACE_URLASRESOURCENAMERULE_ENABLED": ["A"], + "DD_TRACE_URLCONNECTION_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_URLCONNECTION_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_URLCONNECTION_ENABLED": ["A"], + "DD_TRACE_VALKEY_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_VALKEY_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_VALKEY_ENABLED": ["A"], "DD_TRACE_VELOCITY_ENABLED": ["A"], "DD_TRACE_VERTX_3_4_ENABLED": ["A"], @@ -945,11 +1241,21 @@ "DD_TRACE_VERTX_3_9_ENABLED": ["A"], "DD_TRACE_VERTX_4_0_ENABLED": ["A"], "DD_TRACE_VERTX_5_0_ENABLED": ["A"], + "DD_TRACE_VERTX_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_VERTX_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_VERTX_ENABLED": ["A"], + "DD_TRACE_VERTX_REDIS_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_VERTX_REDIS_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_VERTX_REDIS_CLIENT_ENABLED": ["A"], + "DD_TRACE_VERTX_ROUTE_HANDLER_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_VERTX_ROUTE_HANDLER_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_VERTX_SQL_CLIENT_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_VERTX_SQL_CLIENT_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_VERTX_SQL_CLIENT_ENABLED": ["A"], "DD_TRACE_WALLCLOCK_ENABLED": ["A"], "DD_TRACE_WEAVER_ENABLED": ["A"], + "DD_TRACE_WEBSOCKET_ANALYTICS_ENABLED": ["A"], + "DD_TRACE_WEBSOCKET_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_WEBSOCKET_ENABLED": ["A"], "DD_TRACE_WEBSOCKET_MESSAGES_ENABLED": ["A"], "DD_TRACE_WEBSOCKET_MESSAGES_INHERIT_SAMPLING": ["A"], @@ -961,415 +1267,549 @@ "DD_TRACE_ZIO_EXPERIMENTAL_ENABLED": ["A"], "DD_TRIAGE_REPORT_DIR": ["A"], "DD_TRIAGE_REPORT_TRIGGER": ["A"], + "DD_UNDERTOW_CONTINUATION": ["A"], "DD_USM_ENABLED": ["A"], "DD_VERSION": ["A"], "DD_WRITER_BAGGAGE_INJECT": ["A"], "DD_WRITER_TYPE": ["A"], - "OTEL_JAVAAGENT_CONFIGURATION_FILE": ["A"] + "OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_REQUEST_HEADERS": ["A"], + "OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_RESPONSE_HEADERS": ["A"], + "OTEL_INSTRUMENTATION_HTTP_SERVER_CAPTURE_REQUEST_HEADERS": ["A"], + "OTEL_INSTRUMENTATION_HTTP_SERVER_CAPTURE_RESPONSE_HEADERS": ["A"], + "OTEL_JAVAAGENT_CONFIGURATION_FILE": ["A"], + "OTEL_JAVAAGENT_EXTENSIONS": ["A"], + "OTEL_LOG_LEVEL": ["A"], + "OTEL_PROPAGATORS": ["A"], + "OTEL_RESOURCE_ATTRIBUTES": ["A"], + "OTEL_SDK_DISABLED": ["A"], + "OTEL_SERVICE_NAME": ["A"], + "OTEL_TRACES_SAMPLER": ["A"] }, "aliases": { - "DD_TRACE_SNS_ENABLED": ["DD_TRACE_INTEGRATION_SNS_ENABLED", "DD_INTEGRATION_SNS_ENABLED"], - "DD_TRACE_AWS_SDK_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_ENABLED", "DD_INTEGRATION_AWS_SDK_ENABLED"], - "DD_TRACE_AXWAY_API_ENABLED": ["DD_TRACE_INTEGRATION_AXWAY_API_ENABLED", "DD_INTEGRATION_AXWAY_API_ENABLED"], - "DD_TRACE_EVENTBRIDGE_ENABLED": ["DD_TRACE_INTEGRATION_EVENTBRIDGE_ENABLED", "DD_INTEGRATION_EVENTBRIDGE_ENABLED"], - "DD_TRACE_DYNAMODB_ENABLED": ["DD_TRACE_INTEGRATION_DYNAMODB_ENABLED", "DD_INTEGRATION_DYNAMODB_ENABLED"], - "DD_TRACE_AWS_DYNAMODB_ENABLED": ["DD_TRACE_INTEGRATION_AWS_DYNAMODB_ENABLED", "DD_INTEGRATION_AWS_DYNAMODB_ENABLED"], - "DD_TRACE_SFN_ENABLED": ["DD_TRACE_INTEGRATION_SFN_ENABLED", "DD_INTEGRATION_SFN_ENABLED"], - "DD_TRACE_S3_ENABLED": ["DD_TRACE_INTEGRATION_S3_ENABLED", "DD_INTEGRATION_S3_ENABLED"], - "DD_TRACE_AWS_S3_ENABLED": ["DD_TRACE_INTEGRATION_AWS_S3_ENABLED", "DD_INTEGRATION_AWS_S3_ENABLED"], - "DD_TRACE_AWS_LAMBDA_ENABLED": ["DD_TRACE_INTEGRATION_AWS_LAMBDA_ENABLED", "DD_INTEGRATION_AWS_LAMBDA_ENABLED"], - "DD_TRACE_AEROSPIKE_ENABLED": ["DD_TRACE_INTEGRATION_AEROSPIKE_ENABLED", "DD_INTEGRATION_AEROSPIKE_ENABLED"], - "DD_TRACE_JAVA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_CONCURRENT_ENABLED", "DD_INTEGRATION_JAVA_CONCURRENT_ENABLED"], - "DD_TRACE_CAFFEINE_ENABLED": ["DD_TRACE_INTEGRATION_CAFFEINE_ENABLED", "DD_INTEGRATION_CAFFEINE_ENABLED"], - "DD_TRACE_AZURE_FUNCTIONS_ENABLED": ["DD_TRACE_INTEGRATION_AZURE_FUNCTIONS_ENABLED", "DD_INTEGRATION_AZURE_FUNCTIONS_ENABLED"], - "DD_TRACE_SQS_ENABLED": ["DD_TRACE_INTEGRATION_SQS_ENABLED", "DD_INTEGRATION_SQS_ENABLED"], - "DD_TRACE_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JMS_ENABLED", "DD_INTEGRATION_JMS_ENABLED"], - "DD_TRACE_AXIS2_ENABLED": ["DD_TRACE_INTEGRATION_AXIS2_ENABLED", "DD_INTEGRATION_AXIS2_ENABLED"], - "DD_TRACE_AXIS2_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_AXIS2_TRANSPORT_ENABLED", "DD_INTEGRATION_AXIS2_TRANSPORT_ENABLED"], - "DD_TRACE_DEFINECLASS_ENABLED": ["DD_TRACE_INTEGRATION_DEFINECLASS_ENABLED", "DD_INTEGRATION_DEFINECLASS_ENABLED"], - "DD_TRACE_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_CLASSLOADING_ENABLED", "DD_INTEGRATION_CLASSLOADING_ENABLED"], - "DD_TRACE_AVRO_ENABLED": ["DD_TRACE_INTEGRATION_AVRO_ENABLED", "DD_INTEGRATION_AVRO_ENABLED"], - "DD_TRACE_EMR_AWS_SDK_ENABLED": ["DD_TRACE_INTEGRATION_EMR_AWS_SDK_ENABLED", "DD_INTEGRATION_EMR_AWS_SDK_ENABLED"], - "DD_TRACE_COMMONS_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_COMMONS_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_COMMONS_HTTP_CLIENT_ENABLED"], - "DD_TRACE_GLASSFISH_ENABLED": ["DD_TRACE_INTEGRATION_GLASSFISH_ENABLED", "DD_INTEGRATION_GLASSFISH_ENABLED"], - "DD_TRACE_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_CUCUMBER_ENABLED", "DD_INTEGRATION_CUCUMBER_ENABLED"], - "DD_TRACE_CUCUMBER_5_ENABLED": ["DD_TRACE_INTEGRATION_CUCUMBER_5_ENABLED", "DD_INTEGRATION_CUCUMBER_5_ENABLED"], - "DD_TRACE_WALLCLOCK_ENABLED": ["DD_TRACE_INTEGRATION_WALLCLOCK_ENABLED", "DD_INTEGRATION_WALLCLOCK_ENABLED"], - "DD_TRACE_CXF_ENABLED": ["DD_TRACE_INTEGRATION_CXF_ENABLED", "DD_INTEGRATION_CXF_ENABLED"], - "DD_TRACE_CXF_INVOKER_ENABLED": ["DD_TRACE_INTEGRATION_CXF_INVOKER_ENABLED", "DD_INTEGRATION_CXF_INVOKER_ENABLED"], - "DD_TRACE_CASSANDRA_ENABLED": ["DD_TRACE_INTEGRATION_CASSANDRA_ENABLED", "DD_INTEGRATION_CASSANDRA_ENABLED"], - "DD_TRACE_DATANUCLEUS_ENABLED": ["DD_TRACE_INTEGRATION_DATANUCLEUS_ENABLED", "DD_INTEGRATION_DATANUCLEUS_ENABLED"], - "DD_TRACE_GOOGLE_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED"], - "DD_TRACE_MULE_ENABLED": ["DD_TRACE_INTEGRATION_MULE_ENABLED", "DD_INTEGRATION_MULE_ENABLED"], - "DD_TRACE_GRIZZLY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_CLIENT_ENABLED", "DD_INTEGRATION_GRIZZLY_CLIENT_ENABLED"], - "DD_TRACE_NING_ENABLED": ["DD_TRACE_INTEGRATION_NING_ENABLED", "DD_INTEGRATION_NING_ENABLED"], - "DD_TRACE_GSON_ENABLED": ["DD_TRACE_INTEGRATION_GSON_ENABLED", "DD_INTEGRATION_GSON_ENABLED"], - "DD_TRACE_GUAVA_ENABLED": ["DD_TRACE_INTEGRATION_GUAVA_ENABLED", "DD_INTEGRATION_GUAVA_ENABLED"], - "DD_TRACE_COMMONS_FILEUPLOAD_ENABLED": ["DD_TRACE_INTEGRATION_COMMONS_FILEUPLOAD_ENABLED", "DD_INTEGRATION_COMMONS_FILEUPLOAD_ENABLED"], - "DD_TRACE_SERVLET_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_ENABLED", "DD_INTEGRATION_SERVLET_ENABLED"], - "DD_TRACE_FILEITEMSTREAM_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEMSTREAM_ENABLED", "DD_INTEGRATION_FILEITEMSTREAM_ENABLED"], - "DD_TRACE_FILEITEM_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEM_ENABLED", "DD_INTEGRATION_FILEITEM_ENABLED"], - "DD_TRACE_FILEITEMITERATOR_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEMITERATOR_ENABLED", "DD_INTEGRATION_FILEITEMITERATOR_ENABLED"], - "DD_TRACE_GRIZZLY_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_ENABLED", "DD_INTEGRATION_GRIZZLY_ENABLED"], - "DD_TRACE_HAZELCAST_ENABLED": ["DD_TRACE_INTEGRATION_HAZELCAST_ENABLED", "DD_INTEGRATION_HAZELCAST_ENABLED"], - "DD_TRACE_URLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_URLCONNECTION_ENABLED", "DD_INTEGRATION_URLCONNECTION_ENABLED"], - "DD_TRACE_HTTPURLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_HTTPURLCONNECTION_ENABLED", "DD_INTEGRATION_HTTPURLCONNECTION_ENABLED"], - "DD_TRACE_GOOGLE_PUBSUB_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_ENABLED", "DD_INTEGRATION_GOOGLE_PUBSUB_ENABLED"], - "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED", "DD_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED"], - "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED", "DD_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED"], - "DD_TRACE_HAZELCAST_LEGACY_ENABLED": ["DD_TRACE_INTEGRATION_HAZELCAST_LEGACY_ENABLED", "DD_INTEGRATION_HAZELCAST_LEGACY_ENABLED"], - "DD_TRACE_HYSTRIX_ENABLED": ["DD_TRACE_INTEGRATION_HYSTRIX_ENABLED", "DD_INTEGRATION_HYSTRIX_ENABLED"], - "DD_TRACE_FINATRA_ENABLED": ["DD_TRACE_INTEGRATION_FINATRA_ENABLED", "DD_INTEGRATION_FINATRA_ENABLED"], - "DD_TRACE_IGNITE_ENABLED": ["DD_TRACE_INTEGRATION_IGNITE_ENABLED", "DD_INTEGRATION_IGNITE_ENABLED"], - "DD_TRACE_JACOCO_ENABLED": ["DD_TRACE_INTEGRATION_JACOCO_ENABLED", "DD_INTEGRATION_JACOCO_ENABLED"], - "DD_TRACE_JAKARTA_WS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_WS_ENABLED", "DD_INTEGRATION_JAKARTA_WS_ENABLED"], - "DD_TRACE_JACKSON_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_ENABLED", "DD_INTEGRATION_JACKSON_ENABLED"], - "DD_TRACE_JACKSON_2_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_ENABLED", "DD_INTEGRATION_JACKSON_2_ENABLED"], - "DD_TRACE_JACKSON_CORE_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_CORE_ENABLED", "DD_INTEGRATION_JACKSON_CORE_ENABLED"], - "DD_TRACE_JAKARTA_MAIL_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_ENABLED", "DD_INTEGRATION_JAKARTA_MAIL_ENABLED"], - "DD_TRACE_JAKARTA_MAIL_BODY_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_BODY_ENABLED", "DD_INTEGRATION_JAKARTA_MAIL_BODY_ENABLED"], - "DD_TRACE_JAKARTA_MAIL_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_TRANSPORT_ENABLED", "DD_INTEGRATION_JAKARTA_MAIL_TRANSPORT_ENABLED"], - "DD_TRACE_JMS_1_ENABLED": ["DD_TRACE_INTEGRATION_JMS_1_ENABLED", "DD_INTEGRATION_JMS_1_ENABLED"], - "DD_TRACE_JMS_2_ENABLED": ["DD_TRACE_INTEGRATION_JMS_2_ENABLED", "DD_INTEGRATION_JMS_2_ENABLED"], - "DD_TRACE_INPUTSTREAM_ENABLED": ["DD_TRACE_INTEGRATION_INPUTSTREAM_ENABLED", "DD_INTEGRATION_INPUTSTREAM_ENABLED"], - "DD_TRACE_GRIZZLY_FILTERCHAIN_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED", "DD_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED"], - "DD_TRACE_JAX_RS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_ENABLED", "DD_INTEGRATION_JAX_RS_ENABLED"], - "DD_TRACE_JAXRS_ENABLED": ["DD_TRACE_INTEGRATION_JAXRS_ENABLED", "DD_INTEGRATION_JAXRS_ENABLED"], - "DD_TRACE_JAX_RS_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_ANNOTATIONS_ENABLED", "DD_INTEGRATION_JAX_RS_ANNOTATIONS_ENABLED"], - "DD_TRACE_JAKARTA_RS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_ENABLED", "DD_INTEGRATION_JAKARTA_RS_ENABLED"], - "DD_TRACE_JAKARTARS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTARS_ENABLED", "DD_INTEGRATION_JAKARTARS_ENABLED"], - "DD_TRACE_JAKARTA_RS_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_FILTER_ENABLED", "DD_INTEGRATION_JAKARTA_RS_FILTER_ENABLED"], - "DD_TRACE_JAKARTA_RS_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_ANNOTATIONS_ENABLED", "DD_INTEGRATION_JAKARTA_RS_ANNOTATIONS_ENABLED"], - "DD_TRACE_JAX_RS_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_CLIENT_ENABLED", "DD_INTEGRATION_JAX_RS_CLIENT_ENABLED"], - "DD_TRACE_JAVAX_MAIL_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_ENABLED", "DD_INTEGRATION_JAVAX_MAIL_ENABLED"], - "DD_TRACE_JAVAX_MAIL_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_TRANSPORT_ENABLED", "DD_INTEGRATION_JAVAX_MAIL_TRANSPORT_ENABLED"], - "DD_TRACE_JAVAX_MAIL_BODY_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_BODY_ENABLED", "DD_INTEGRATION_JAVAX_MAIL_BODY_ENABLED"], - "DD_TRACE_JAVA_LANG_APPSEC_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_LANG_APPSEC_ENABLED", "DD_INTEGRATION_JAVA_LANG_APPSEC_ENABLED"], - "DD_TRACE_JAVA_LANG_MANAGEMENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_LANG_MANAGEMENT_ENABLED", "DD_INTEGRATION_JAVA_LANG_MANAGEMENT_ENABLED"], - "DD_TRACE_JAKARTA_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_JMS_ENABLED", "DD_INTEGRATION_JAKARTA_JMS_ENABLED"], - "DD_TRACE_JBOSS_LOGMANAGER_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_LOGMANAGER_ENABLED", "DD_INTEGRATION_JBOSS_LOGMANAGER_ENABLED"], - "DD_TRACE_JAX_WS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_WS_ENABLED", "DD_INTEGRATION_JAX_WS_ENABLED"], - "DD_TRACE_JBOSS_MODULES_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_MODULES_ENABLED", "DD_INTEGRATION_JBOSS_MODULES_ENABLED"], - "DD_TRACE_JAX_RS_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_FILTER_ENABLED", "DD_INTEGRATION_JAX_RS_FILTER_ENABLED"], - "DD_TRACE_IASTINSTRUMENTATION_ENABLED": ["DD_TRACE_INTEGRATION_IASTINSTRUMENTATION_ENABLED", "DD_INTEGRATION_IASTINSTRUMENTATION_ENABLED"], - "DD_TRACE_JEDIS_ENABLED": ["DD_TRACE_INTEGRATION_JEDIS_ENABLED", "DD_INTEGRATION_JEDIS_ENABLED"], - "DD_TRACE_REDIS_ENABLED": ["DD_TRACE_INTEGRATION_REDIS_ENABLED", "DD_INTEGRATION_REDIS_ENABLED"], - "DD_TRACE_NEW_TASK_FOR_ENABLED": ["DD_TRACE_INTEGRATION_NEW_TASK_FOR_ENABLED", "DD_INTEGRATION_NEW_TASK_FOR_ENABLED"], - "DD_TRACE_TASK_UNWRAPPING_ENABLED": ["DD_TRACE_INTEGRATION_TASK_UNWRAPPING_ENABLED", "DD_INTEGRATION_TASK_UNWRAPPING_ENABLED"], - "DD_TRACE_JAVA_TIMER_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_TIMER_ENABLED", "DD_INTEGRATION_JAVA_TIMER_ENABLED"], - "DD_TRACE_RUNNABLE_ENABLED": ["DD_TRACE_INTEGRATION_RUNNABLE_ENABLED", "DD_INTEGRATION_RUNNABLE_ENABLED"], - "DD_TRACE_CONSUMER_TASK_ENABLED": ["DD_TRACE_INTEGRATION_CONSUMER_TASK_ENABLED", "DD_INTEGRATION_CONSUMER_TASK_ENABLED"], - "DD_TRACE_RUNNABLE_FUTURE_ENABLED": ["DD_TRACE_INTEGRATION_RUNNABLE_FUTURE_ENABLED", "DD_INTEGRATION_RUNNABLE_FUTURE_ENABLED"], - "DD_TRACE_FJP_ENABLED": ["DD_TRACE_INTEGRATION_FJP_ENABLED", "DD_INTEGRATION_FJP_ENABLED"], - "DD_TRACE_FJP_WORKQUEUE_ENABLED": ["DD_TRACE_INTEGRATION_FJP_WORKQUEUE_ENABLED", "DD_INTEGRATION_FJP_WORKQUEUE_ENABLED"], - "DD_TRACE_JAVA_CONCURRENT_OTHER_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_CONCURRENT_OTHER_ENABLED", "DD_INTEGRATION_JAVA_CONCURRENT_OTHER_ENABLED"], - "DD_TRACE_REJECTED_EXECUTION_HANDLER_ENABLED": ["DD_TRACE_INTEGRATION_REJECTED_EXECUTION_HANDLER_ENABLED", "DD_INTEGRATION_REJECTED_EXECUTION_HANDLER_ENABLED"], - "DD_TRACE_JETTY_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_CONCURRENT_ENABLED", "DD_INTEGRATION_JETTY_CONCURRENT_ENABLED"], - "DD_TRACE_JETTY_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_ENABLED", "DD_INTEGRATION_JETTY_ENABLED"], - "DD_TRACE_JERSEY_ENABLED": ["DD_TRACE_INTEGRATION_JERSEY_ENABLED", "DD_INTEGRATION_JERSEY_ENABLED"], - "DD_TRACE_GRPC_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_ENABLED", "DD_INTEGRATION_GRPC_ENABLED"], - "DD_TRACE_GRPC_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_NETTY_ENABLED", "DD_INTEGRATION_GRPC_NETTY_ENABLED"], - "DD_TRACE_GRPC_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_ENABLED", "DD_INTEGRATION_GRPC_SERVER_ENABLED"], - "DD_TRACE_GRPC_SERVER_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED", "DD_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED"], - "DD_TRACE_GRPC_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_CLIENT_ENABLED", "DD_INTEGRATION_GRPC_CLIENT_ENABLED"], - "DD_TRACE_GRPC_MESSAGE_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_MESSAGE_ENABLED", "DD_INTEGRATION_GRPC_MESSAGE_ENABLED"], - "DD_TRACE_JDBC_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_ENABLED", "DD_INTEGRATION_JDBC_ENABLED"], - "DD_TRACE_JDBC_RESULTSET_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_RESULTSET_ENABLED", "DD_INTEGRATION_JDBC_RESULTSET_ENABLED"], - "DD_TRACE_IAST_RESULTSET_ENABLED": ["DD_TRACE_INTEGRATION_IAST_RESULTSET_ENABLED", "DD_INTEGRATION_IAST_RESULTSET_ENABLED"], - "DD_TRACE_DB2_ENABLED": ["DD_TRACE_INTEGRATION_DB2_ENABLED", "DD_INTEGRATION_DB2_ENABLED"], - "DD_TRACE_JDBC_DATASOURCE_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_DATASOURCE_ENABLED", "DD_INTEGRATION_JDBC_DATASOURCE_ENABLED"], - "DD_TRACE_DBM_ENABLED": ["DD_TRACE_INTEGRATION_DBM_ENABLED", "DD_INTEGRATION_DBM_ENABLED"], - "DD_TRACE_JSP_ENABLED": ["DD_TRACE_INTEGRATION_JSP_ENABLED", "DD_INTEGRATION_JSP_ENABLED"], - "DD_TRACE_JSP_RENDER_ENABLED": ["DD_TRACE_INTEGRATION_JSP_RENDER_ENABLED", "DD_INTEGRATION_JSP_RENDER_ENABLED"], - "DD_TRACE_JSP_COMPILE_ENABLED": ["DD_TRACE_INTEGRATION_JSP_COMPILE_ENABLED", "DD_INTEGRATION_JSP_COMPILE_ENABLED"], - "DD_TRACE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JWT_ENABLED", "DD_INTEGRATION_JWT_ENABLED"], - "DD_TRACE_JOSE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JOSE_JWT_ENABLED", "DD_INTEGRATION_JOSE_JWT_ENABLED"], - "DD_TRACE_AUTH0_JWT_ENABLED": ["DD_TRACE_INTEGRATION_AUTH0_JWT_ENABLED", "DD_INTEGRATION_AUTH0_JWT_ENABLED"], - "DD_TRACE_KAFKA_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_ENABLED", "DD_INTEGRATION_KAFKA_ENABLED"], - "DD_TRACE_KAFKA_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_STREAMS_ENABLED", "DD_INTEGRATION_KAFKA_STREAMS_ENABLED"], - "DD_TRACE_KAFKA_CONNECT_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CONNECT_ENABLED", "DD_INTEGRATION_KAFKA_CONNECT_ENABLED"], - "DD_TRACE_CI_VISIBILITY_ENABLED": ["DD_TRACE_INTEGRATION_CI_VISIBILITY_ENABLED", "DD_INTEGRATION_CI_VISIBILITY_ENABLED"], - "DD_TRACE_JUNIT_4_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_ENABLED", "DD_INTEGRATION_JUNIT_4_ENABLED"], - "DD_TRACE_JUNIT_38_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_38_ENABLED", "DD_INTEGRATION_JUNIT_38_ENABLED"], - "DD_TRACE_POWERMOCK_ENABLED": ["DD_TRACE_INTEGRATION_POWERMOCK_ENABLED", "DD_INTEGRATION_POWERMOCK_ENABLED"], - "DD_TRACE_TEST_RETRY_ENABLED": ["DD_TRACE_INTEGRATION_TEST_RETRY_ENABLED", "DD_INTEGRATION_TEST_RETRY_ENABLED"], - "DD_TRACE_JUNIT_5_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_ENABLED", "DD_INTEGRATION_JUNIT_5_ENABLED"], - "DD_TRACE_KOTLIN_COROUTINE_ENABLED": ["DD_TRACE_INTEGRATION_KOTLIN_COROUTINE_ENABLED", "DD_INTEGRATION_KOTLIN_COROUTINE_ENABLED"], - "DD_TRACE_KARATE_ENABLED": ["DD_TRACE_INTEGRATION_KARATE_ENABLED", "DD_INTEGRATION_KARATE_ENABLED"], - "DD_TRACE_KAFKA_0_11_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_0_11_ENABLED", "DD_INTEGRATION_KAFKA_0_11_ENABLED"], - "DD_TRACE_LOG4J_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_ENABLED", "DD_INTEGRATION_LOG4J_ENABLED"], - "DD_TRACE_LOG4J_2_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_2_ENABLED", "DD_INTEGRATION_LOG4J_2_ENABLED"], - "DD_TRACE_SERVELET_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_SERVELET_RESPONSE_ENABLED", "DD_INTEGRATION_SERVELET_RESPONSE_ENABLED"], - "DD_TRACE_SERVLET_SESSION_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_SESSION_ENABLED", "DD_INTEGRATION_SERVLET_SESSION_ENABLED"], - "DD_TRACE_LOGBACK_ENABLED": ["DD_TRACE_INTEGRATION_LOGBACK_ENABLED", "DD_INTEGRATION_LOGBACK_ENABLED"], - "DD_TRACE_JETTY_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_WEBSOCKET_ENABLED", "DD_INTEGRATION_JETTY_WEBSOCKET_ENABLED"], - "DD_TRACE_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_WEBSOCKET_ENABLED", "DD_INTEGRATION_WEBSOCKET_ENABLED"], - "DD_TRACE_LETTUCE_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_ENABLED", "DD_INTEGRATION_LETTUCE_ENABLED"], - "DD_TRACE_LETTUCE_4_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ENABLED", "DD_INTEGRATION_LETTUCE_4_ENABLED"], - "DD_TRACE_LETTUCE_4_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ASYNC_ENABLED", "DD_INTEGRATION_LETTUCE_4_ASYNC_ENABLED"], - "DD_TRACE_LOG4J_1_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_1_ENABLED", "DD_INTEGRATION_LOG4J_1_ENABLED"], - "DD_TRACE_LETTUCE_5_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_ENABLED", "DD_INTEGRATION_LETTUCE_5_ENABLED"], - "DD_TRACE_LETTUCE_5_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_ASYNC_ENABLED", "DD_INTEGRATION_LETTUCE_5_ASYNC_ENABLED"], - "DD_TRACE_LETTUCE_5_RX_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_RX_ENABLED", "DD_INTEGRATION_LETTUCE_5_RX_ENABLED"], - "DD_TRACE_MAVEN_ENABLED": ["DD_TRACE_INTEGRATION_MAVEN_ENABLED", "DD_INTEGRATION_MAVEN_ENABLED"], - "DD_TRACE_SUREFIRE_ENABLED": ["DD_TRACE_INTEGRATION_SUREFIRE_ENABLED", "DD_INTEGRATION_SUREFIRE_ENABLED"], - "DD_TRACE_JUNIT4_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT4_ENABLED", "DD_INTEGRATION_JUNIT4_ENABLED"], - "DD_TRACE_MICRONAUT_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_ENABLED", "DD_INTEGRATION_MICRONAUT_ENABLED"], - "DD_TRACE_MICRONAUT_SPAN_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_SPAN_ORIGIN_ENABLED", "DD_INTEGRATION_MICRONAUT_SPAN_ORIGIN_ENABLED"], - "DD_TRACE_MULTIPART_ENABLED": ["DD_TRACE_INTEGRATION_MULTIPART_ENABLED", "DD_INTEGRATION_MULTIPART_ENABLED"], - "DD_TRACE_SERVLET_3_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_3_ENABLED", "DD_INTEGRATION_SERVLET_3_ENABLED"], - "DD_TRACE_SERVLET_REQUEST_BODY_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_REQUEST_BODY_ENABLED", "DD_INTEGRATION_SERVLET_REQUEST_BODY_ENABLED"], - "DD_TRACE_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_ENABLED", "DD_INTEGRATION_NETTY_ENABLED"], - "DD_TRACE_NETTY_4_0_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_0_ENABLED", "DD_INTEGRATION_NETTY_4_0_ENABLED"], - "DD_TRACE_NETTY_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_CONCURRENT_ENABLED", "DD_INTEGRATION_NETTY_CONCURRENT_ENABLED"], - "DD_TRACE_NETTY_EVENT_EXECUTOR_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_EVENT_EXECUTOR_ENABLED", "DD_INTEGRATION_NETTY_EVENT_EXECUTOR_ENABLED"], - "DD_TRACE_NETTY_PROMISE_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_PROMISE_ENABLED", "DD_INTEGRATION_NETTY_PROMISE_ENABLED"], - "DD_TRACE_OGNL_ENABLED": ["DD_TRACE_INTEGRATION_OGNL_ENABLED", "DD_INTEGRATION_OGNL_ENABLED"], - "DD_TRACE_NETTY_3_8_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_3_8_ENABLED", "DD_INTEGRATION_NETTY_3_8_ENABLED"], - "DD_TRACE_OKHTTP_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_ENABLED", "DD_INTEGRATION_OKHTTP_ENABLED"], - "DD_TRACE_OKHTTP_2_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_2_ENABLED", "DD_INTEGRATION_OKHTTP_2_ENABLED"], - "DD_TRACE_OKHTTP_3_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_3_ENABLED", "DD_INTEGRATION_OKHTTP_3_ENABLED"], - "DD_TRACE_NETTY_4_1_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_ENABLED", "DD_INTEGRATION_NETTY_4_1_ENABLED"], - "DD_TRACE_NETTY_4_1_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_HTTP2_ENABLED", "DD_INTEGRATION_NETTY_4_1_HTTP2_ENABLED"], - "DD_TRACE_SERVLET_5_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_5_ENABLED", "DD_INTEGRATION_SERVLET_5_ENABLED"], - "DD_TRACE_SERVLET_REQUEST_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_REQUEST_ENABLED", "DD_INTEGRATION_SERVLET_REQUEST_ENABLED"], - "DD_TRACE_SERVLET_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_RESPONSE_ENABLED", "DD_INTEGRATION_SERVLET_RESPONSE_ENABLED"], - "DD_TRACE_OSGI_ENABLED": ["DD_TRACE_INTEGRATION_OSGI_ENABLED", "DD_INTEGRATION_OSGI_ENABLED"], - "DD_TRACE_ORG_JSON_ENABLED": ["DD_TRACE_INTEGRATION_ORG_JSON_ENABLED", "DD_INTEGRATION_ORG_JSON_ENABLED"], - "DD_TRACE_PEKKO_ACTOR_RECEIVE_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_RECEIVE_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_RECEIVE_ENABLED"], - "DD_TRACE_PEKKO_ACTOR_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_ENABLED"], - "DD_TRACE_PEKKO_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_CONCURRENT_ENABLED", "DD_INTEGRATION_PEKKO_CONCURRENT_ENABLED"], - "DD_TRACE_PEKKO_ACTOR_SEND_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_SEND_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_SEND_ENABLED"], - "DD_TRACE_PEKKO_ACTOR_MAILBOX_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_MAILBOX_ENABLED", "DD_INTEGRATION_PEKKO_ACTOR_MAILBOX_ENABLED"], - "DD_TRACE_PLAY_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ENABLED", "DD_INTEGRATION_PLAY_ENABLED"], - "DD_TRACE_PLAY_ACTION_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ACTION_ENABLED", "DD_INTEGRATION_PLAY_ACTION_ENABLED"], - "DD_TRACE_PROTOBUF_ENABLED": ["DD_TRACE_INTEGRATION_PROTOBUF_ENABLED", "DD_INTEGRATION_PROTOBUF_ENABLED"], - "DD_TRACE_PLAY_WS_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_WS_ENABLED", "DD_INTEGRATION_PLAY_WS_ENABLED"], - "DD_TRACE_QUARTZ_ENABLED": ["DD_TRACE_INTEGRATION_QUARTZ_ENABLED", "DD_INTEGRATION_QUARTZ_ENABLED"], - "DD_TRACE_LIBERTY_ENABLED": ["DD_TRACE_INTEGRATION_LIBERTY_ENABLED", "DD_INTEGRATION_LIBERTY_ENABLED"], - "DD_TRACE_PEKKO_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_ENABLED", "DD_INTEGRATION_PEKKO_HTTP_ENABLED"], - "DD_TRACE_PEKKO_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_PEKKO_HTTP_CLIENT_ENABLED"], - "DD_TRACE_PEKKO_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP2_ENABLED", "DD_INTEGRATION_PEKKO_HTTP2_ENABLED"], - "DD_TRACE_PEKKO_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED", "DD_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED"], - "DD_TRACE_REACTIVE_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_REACTIVE_STREAMS_ENABLED", "DD_INTEGRATION_REACTIVE_STREAMS_ENABLED"], - "DD_TRACE_REACTIVE_STREAMS_1_ENABLED": ["DD_TRACE_INTEGRATION_REACTIVE_STREAMS_1_ENABLED", "DD_INTEGRATION_REACTIVE_STREAMS_1_ENABLED"], - "DD_TRACE_AMQP_ENABLED": ["DD_TRACE_INTEGRATION_AMQP_ENABLED", "DD_INTEGRATION_AMQP_ENABLED"], - "DD_TRACE_RABBITMQ_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_ENABLED", "DD_INTEGRATION_RABBITMQ_ENABLED"], - "DD_TRACE_REACTOR_CORE_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_CORE_ENABLED", "DD_INTEGRATION_REACTOR_CORE_ENABLED"], - "DD_TRACE_REACTOR_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_NETTY_ENABLED", "DD_INTEGRATION_REACTOR_NETTY_ENABLED"], - "DD_TRACE_REACTOR_NETTY_1_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_NETTY_1_ENABLED", "DD_INTEGRATION_REACTOR_NETTY_1_ENABLED"], - "DD_TRACE_REDISCALA_ENABLED": ["DD_TRACE_INTEGRATION_REDISCALA_ENABLED", "DD_INTEGRATION_REDISCALA_ENABLED"], - "DD_TRACE_REDISCALA_CONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_REDISCALA_CONNECTION_ENABLED", "DD_INTEGRATION_REDISCALA_CONNECTION_ENABLED"], - "DD_TRACE_RENAISSANCE_ENABLED": ["DD_TRACE_INTEGRATION_RENAISSANCE_ENABLED", "DD_INTEGRATION_RENAISSANCE_ENABLED"], - "DD_TRACE_RMI_ENABLED": ["DD_TRACE_INTEGRATION_RMI_ENABLED", "DD_INTEGRATION_RMI_ENABLED"], - "DD_TRACE_RMI_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_RMI_SERVER_ENABLED", "DD_INTEGRATION_RMI_SERVER_ENABLED"], - "DD_TRACE_RMI_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CLIENT_ENABLED", "DD_INTEGRATION_RMI_CLIENT_ENABLED"], - "DD_TRACE_RMI_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CONTEXT_PROPAGATOR_ENABLED", "DD_INTEGRATION_RMI_CONTEXT_PROPAGATOR_ENABLED"], - "DD_TRACE_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED", "DD_INTEGRATION_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED"], - "DD_TRACE_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED", "DD_INTEGRATION_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED"], - "DD_TRACE_RATPACK_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_ENABLED", "DD_INTEGRATION_RATPACK_ENABLED"], - "DD_TRACE_RATPACK_REQUEST_BODY_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED", "DD_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED"], - "DD_TRACE_RESTLET_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_RESTLET_HTTP_ENABLED", "DD_INTEGRATION_RESTLET_HTTP_ENABLED"], - "DD_TRACE_RESTLET_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_RESTLET_HTTP_SERVER_ENABLED", "DD_INTEGRATION_RESTLET_HTTP_SERVER_ENABLED"], - "DD_TRACE_RXJAVA_ENABLED": ["DD_TRACE_INTEGRATION_RXJAVA_ENABLED", "DD_INTEGRATION_RXJAVA_ENABLED"], - "DD_TRACE_RESTEASY_ENABLED": ["DD_TRACE_INTEGRATION_RESTEASY_ENABLED", "DD_INTEGRATION_RESTEASY_ENABLED"], - "DD_TRACE_SHUTDOWN_ENABLED": ["DD_TRACE_INTEGRATION_SHUTDOWN_ENABLED", "DD_INTEGRATION_SHUTDOWN_ENABLED"], - "DD_TRACE_SCALA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_CONCURRENT_ENABLED", "DD_INTEGRATION_SCALA_CONCURRENT_ENABLED"], - "DD_TRACE_LIBERTY_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_LIBERTY_CLASSLOADING_ENABLED", "DD_INTEGRATION_LIBERTY_CLASSLOADING_ENABLED"], - "DD_TRACE_SELENIUM_ENABLED": ["DD_TRACE_INTEGRATION_SELENIUM_ENABLED", "DD_INTEGRATION_SELENIUM_ENABLED"], - "DD_TRACE_SNAKEYAML_ENABLED": ["DD_TRACE_INTEGRATION_SNAKEYAML_ENABLED", "DD_INTEGRATION_SNAKEYAML_ENABLED"], - "DD_TRACE_SCALATEST_ENABLED": ["DD_TRACE_INTEGRATION_SCALATEST_ENABLED", "DD_INTEGRATION_SCALATEST_ENABLED"], - "DD_TRACE_SPRING_BEANS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BEANS_ENABLED", "DD_INTEGRATION_SPRING_BEANS_ENABLED"], - "DD_TRACE_SPARKJAVA_ENABLED": ["DD_TRACE_INTEGRATION_SPARKJAVA_ENABLED", "DD_INTEGRATION_SPARKJAVA_ENABLED"], - "DD_TRACE_SPARKJAVA_2_4_ENABLED": ["DD_TRACE_INTEGRATION_SPARKJAVA_2_4_ENABLED", "DD_INTEGRATION_SPARKJAVA_2_4_ENABLED"], - "DD_TRACE_SPRING_BOOT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_ENABLED", "DD_INTEGRATION_SPRING_BOOT_ENABLED"], - "DD_TRACE_SPRING_BOOT_SPAN_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED", "DD_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED"], - "DD_TRACE_SERVLET_DISPATCHER_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_DISPATCHER_ENABLED", "DD_INTEGRATION_SERVLET_DISPATCHER_ENABLED"], - "DD_TRACE_SERVLET_SERVICE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_SERVICE_ENABLED", "DD_INTEGRATION_SERVLET_SERVICE_ENABLED"], - "DD_TRACE_SERVLET_COOKIE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_COOKIE_ENABLED", "DD_INTEGRATION_SERVLET_COOKIE_ENABLED"], - "DD_TRACE_SERVLET_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_FILTER_ENABLED", "DD_INTEGRATION_SERVLET_FILTER_ENABLED"], - "DD_TRACE_SLICK_ENABLED": ["DD_TRACE_INTEGRATION_SLICK_ENABLED", "DD_INTEGRATION_SLICK_ENABLED"], - "DD_TRACE_SPRING_CORE_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CORE_ENABLED", "DD_INTEGRATION_SPRING_CORE_ENABLED"], - "DD_TRACE_SPRING_JMS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_JMS_ENABLED", "DD_INTEGRATION_SPRING_JMS_ENABLED"], - "DD_TRACE_SPRING_DATA_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_DATA_ENABLED", "DD_INTEGRATION_SPRING_DATA_ENABLED"], - "DD_TRACE_SPRING_MESSAGING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_ENABLED", "DD_INTEGRATION_SPRING_MESSAGING_ENABLED"], - "DD_TRACE_SPRING_MESSAGING_4_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_4_ENABLED", "DD_INTEGRATION_SPRING_MESSAGING_4_ENABLED"], - "DD_TRACE_SPRING_CLOUD_ZUUL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED", "DD_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED"], - "DD_TRACE_SPRING_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_ASYNC_ENABLED", "DD_INTEGRATION_SPRING_ASYNC_ENABLED"], - "DD_TRACE_SPRING_SCHEDULING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SCHEDULING_ENABLED", "DD_INTEGRATION_SPRING_SCHEDULING_ENABLED"], - "DD_TRACE_SPRING_RABBIT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_RABBIT_ENABLED", "DD_INTEGRATION_SPRING_RABBIT_ENABLED"], - "DD_TRACE_SPARK_EXECUTOR_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_EXECUTOR_ENABLED", "DD_INTEGRATION_SPARK_EXECUTOR_ENABLED"], - "DD_TRACE_SPRING_WS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WS_ENABLED", "DD_INTEGRATION_SPRING_WS_ENABLED"], - "DD_TRACE_SPRING_WS_2_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WS_2_ENABLED", "DD_INTEGRATION_SPRING_WS_2_ENABLED"], - "DD_TRACE_SPRING_SECURITY_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SECURITY_ENABLED", "DD_INTEGRATION_SPRING_SECURITY_ENABLED"], - "DD_TRACE_SOCKET_ENABLED": ["DD_TRACE_INTEGRATION_SOCKET_ENABLED", "DD_INTEGRATION_SOCKET_ENABLED"], - "DD_TRACE_SSLSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_SSLSOCKET_ENABLED", "DD_INTEGRATION_SSLSOCKET_ENABLED"], - "DD_TRACE_SPRING_WEB_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_ENABLED", "DD_INTEGRATION_SPRING_WEB_ENABLED"], - "DD_TRACE_SPRING_PATH_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_PATH_FILTER_ENABLED", "DD_INTEGRATION_SPRING_PATH_FILTER_ENABLED"], - "DD_TRACE_SPYMEMCACHED_ENABLED": ["DD_TRACE_INTEGRATION_SPYMEMCACHED_ENABLED", "DD_INTEGRATION_SPYMEMCACHED_ENABLED"], - "DD_TRACE_HEADER_TAGS_LEGACY_PARSING_ENABLED": ["DD_TRACE_INTEGRATION_HEADER_TAGS_LEGACY_PARSING_ENABLED", "DD_INTEGRATION_HEADER_TAGS_LEGACY_PARSING_ENABLED"], - "DD_TRACE_PROPAGATION_STYLE_B3_PADDING_ENABLED": ["DD_TRACE_INTEGRATION_PROPAGATION_STYLE_B3_PADDING_ENABLED", "DD_INTEGRATION_PROPAGATION_STYLE_B3_PADDING_ENABLED"], - "DD_TRACE_STATS_COMPUTATION_ENABLED": ["DD_TRACE_INTEGRATION_STATS_COMPUTATION_ENABLED", "DD_INTEGRATION_STATS_COMPUTATION_ENABLED"], - "DD_TRACE_AWS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_PROPAGATION_ENABLED", "DD_INTEGRATION_AWS_PROPAGATION_ENABLED"], - "DD_TRACE_AWS_SDK_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED", "DD_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED"], - "DD_TRACE_SQS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_SQS_PROPAGATION_ENABLED", "DD_INTEGRATION_SQS_PROPAGATION_ENABLED"], - "DD_TRACE_KAFKA_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_PROPAGATION_ENABLED", "DD_INTEGRATION_KAFKA_PROPAGATION_ENABLED"], - "DD_TRACE_KAFKA_CLIENT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED", "DD_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED"], - "DD_TRACE_JMS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_JMS_PROPAGATION_ENABLED", "DD_INTEGRATION_JMS_PROPAGATION_ENABLED"], - "DD_TRACE_RABBIT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBIT_PROPAGATION_ENABLED", "DD_INTEGRATION_RABBIT_PROPAGATION_ENABLED"], - "DD_TRACE_RABBITMQ_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED", "DD_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED"], - "DD_TRACE_SPARK_EXIT_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_EXIT_ENABLED", "DD_INTEGRATION_SPARK_EXIT_ENABLED"], - "DD_TRACE_SPARK_OPENLINEAGE_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_OPENLINEAGE_ENABLED", "DD_INTEGRATION_SPARK_OPENLINEAGE_ENABLED"], - "DD_TRACE_THYMELEAF_ENABLED": ["DD_TRACE_INTEGRATION_THYMELEAF_ENABLED", "DD_INTEGRATION_THYMELEAF_ENABLED"], - "DD_TRACE_TESTNG_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_ENABLED", "DD_INTEGRATION_TESTNG_ENABLED"], - "DD_TRACE_TESTNG_ITR_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_ITR_ENABLED", "DD_INTEGRATION_TESTNG_ITR_ENABLED"], - "DD_TRACE_TINYLOG_ENABLED": ["DD_TRACE_INTEGRATION_TINYLOG_ENABLED", "DD_INTEGRATION_TINYLOG_ENABLED"], - "DD_TRACE_SYNAPSE3_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_CLIENT_ENABLED", "DD_INTEGRATION_SYNAPSE3_CLIENT_ENABLED"], - "DD_TRACE_SYNAPSE3_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_ENABLED", "DD_INTEGRATION_SYNAPSE3_ENABLED"], - "DD_TRACE_SYNAPSE3_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_SERVER_ENABLED", "DD_INTEGRATION_SYNAPSE3_SERVER_ENABLED"], - "DD_TRACE_TOMCAT_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_ENABLED", "DD_INTEGRATION_TOMCAT_ENABLED"], - "DD_TRACE_SPRING_WEBFLUX_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_ENABLED", "DD_INTEGRATION_SPRING_WEBFLUX_ENABLED"], - "DD_TRACE_SPRING_WEBFLUX_FUNCTIONAL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED", "DD_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED"], - "DD_TRACE_SPRING_WEBFLUX_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED", "DD_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED"], - "DD_TRACE_TOMCAT_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED", "DD_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED"], - "DD_TRACE_TRACE_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ENABLED", "DD_INTEGRATION_TRACE_ENABLED"], - "DD_TRACE_TRACE_ANNOTATION_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ANNOTATION_ENABLED", "DD_INTEGRATION_TRACE_ANNOTATION_ENABLED"], - "DD_TRACE_TRACE_CONFIG_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_CONFIG_ENABLED", "DD_INTEGRATION_TRACE_CONFIG_ENABLED"], - "DD_TRACE_NOT_NOT_TRACE_ENABLED": ["DD_TRACE_INTEGRATION_NOT_NOT_TRACE_ENABLED", "DD_INTEGRATION_NOT_NOT_TRACE_ENABLED"], - "DD_TRACE_DO_NOT_TRACE_ANNOTATION_ENABLED": ["DD_TRACE_INTEGRATION_DO_NOT_TRACE_ANNOTATION_ENABLED", "DD_INTEGRATION_DO_NOT_TRACE_ANNOTATION_ENABLED"], - "DD_TRACE_TWILIO_SDK_ENABLED": ["DD_TRACE_INTEGRATION_TWILIO_SDK_ENABLED", "DD_INTEGRATION_TWILIO_SDK_ENABLED"], - "DD_TRACE_TOMCAT_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED", "DD_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED"], - "DD_TRACE_VALKEY_ENABLED": ["DD_TRACE_INTEGRATION_VALKEY_ENABLED", "DD_INTEGRATION_VALKEY_ENABLED"], - "DD_TRACE_VELOCITY_ENABLED": ["DD_TRACE_INTEGRATION_VELOCITY_ENABLED", "DD_INTEGRATION_VELOCITY_ENABLED"], - "DD_TRACE_VERTX_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_ENABLED", "DD_INTEGRATION_VERTX_ENABLED"], - "DD_TRACE_VERTX_SQL_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_SQL_CLIENT_ENABLED", "DD_INTEGRATION_VERTX_SQL_CLIENT_ENABLED"], - "DD_TRACE_VERTX_3_9_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_9_ENABLED", "DD_INTEGRATION_VERTX_3_9_ENABLED"], - "DD_TRACE_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_RESPONSE_ENABLED", "DD_INTEGRATION_RESPONSE_ENABLED"], - "DD_TRACE_VERTX_REDIS_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED", "DD_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED"], - "DD_TRACE_VERTX_5_0_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_5_0_ENABLED", "DD_INTEGRATION_VERTX_5_0_ENABLED"], - "DD_TRACE_VERTX_3_4_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_4_ENABLED", "DD_INTEGRATION_VERTX_3_4_ENABLED"], - "DD_TRACE_VERTX_3_5_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_5_ENABLED", "DD_INTEGRATION_VERTX_3_5_ENABLED"], - "DD_TRACE_WEBSPHERE_JMX_ENABLED": ["DD_TRACE_INTEGRATION_WEBSPHERE_JMX_ENABLED", "DD_INTEGRATION_WEBSPHERE_JMX_ENABLED"], - "DD_TRACE_WEAVER_ENABLED": ["DD_TRACE_INTEGRATION_WEAVER_ENABLED", "DD_INTEGRATION_WEAVER_ENABLED"], - "DD_TRACE_WILDFLY_ENABLED": ["DD_TRACE_INTEGRATION_WILDFLY_ENABLED", "DD_INTEGRATION_WILDFLY_ENABLED"], - "DD_TRACE_JEE_ENV_ENTRY_ENABLED": ["DD_TRACE_INTEGRATION_JEE_ENV_ENTRY_ENABLED", "DD_INTEGRATION_JEE_ENV_ENTRY_ENABLED"], - "DD_TRACE_VERTX_4_0_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_4_0_ENABLED", "DD_INTEGRATION_VERTX_4_0_ENABLED"], - "DD_TRACE_HTTPCORE_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_ENABLED", "DD_INTEGRATION_HTTPCORE_ENABLED"], - "DD_TRACE_APACHE_HTTPCORE_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCORE_ENABLED", "DD_INTEGRATION_APACHE_HTTPCORE_ENABLED"], - "DD_TRACE_APACHE_HTTP_CORE_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CORE_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CORE_ENABLED"], - "DD_TRACE_HTTPCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT_ENABLED", "DD_INTEGRATION_HTTPCLIENT_ENABLED"], - "DD_TRACE_APACHE_HTTPCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCLIENT_ENABLED", "DD_INTEGRATION_APACHE_HTTPCLIENT_ENABLED"], - "DD_TRACE_APACHE_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CLIENT_ENABLED"], - "DD_TRACE_AKKA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_CONCURRENT_ENABLED", "DD_INTEGRATION_AKKA_CONCURRENT_ENABLED"], - "DD_TRACE_AKKA_ACTOR_RECEIVE_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_RECEIVE_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_RECEIVE_ENABLED"], - "DD_TRACE_AKKA_ACTOR_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_ENABLED"], - "DD_TRACE_AKKA_ACTOR_SEND_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_SEND_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_SEND_ENABLED"], - "DD_TRACE_AKKA_ACTOR_MAILBOX_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_MAILBOX_ENABLED", "DD_INTEGRATION_AKKA_ACTOR_MAILBOX_ENABLED"], - "DD_TRACE_HTTPCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT5_ENABLED", "DD_INTEGRATION_HTTPCLIENT5_ENABLED"], - "DD_TRACE_APACHE_HTTPCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCLIENT5_ENABLED", "DD_INTEGRATION_APACHE_HTTPCLIENT5_ENABLED"], - "DD_TRACE_APACHE_HTTP_CLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CLIENT5_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CLIENT5_ENABLED"], - "DD_TRACE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT5_ENABLED", "DD_INTEGRATION_HTTPASYNCCLIENT5_ENABLED"], - "DD_TRACE_APACHE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED", "DD_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED"], - "DD_TRACE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_ENABLED", "DD_INTEGRATION_HTTPASYNCCLIENT_ENABLED"], - "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED", "DD_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED"], - "DD_TRACE_HTTPCORE_5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_5_ENABLED", "DD_INTEGRATION_HTTPCORE_5_ENABLED"], - "DD_TRACE_APACHE_HTTPCORE_5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCORE_5_ENABLED", "DD_INTEGRATION_APACHE_HTTPCORE_5_ENABLED"], - "DD_TRACE_APACHE_HTTP_CORE_5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CORE_5_ENABLED", "DD_INTEGRATION_APACHE_HTTP_CORE_5_ENABLED"], - "DD_TRACE_COUCHBASE_ENABLED": ["DD_TRACE_INTEGRATION_COUCHBASE_ENABLED", "DD_INTEGRATION_COUCHBASE_ENABLED"], - "DD_TRACE_HTTPCLIENT_REDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED", "DD_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED"], - "DD_TRACE_ARMERIA_JETTY_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_JETTY_ENABLED", "DD_INTEGRATION_ARMERIA_JETTY_ENABLED"], - "DD_TRACE_ARMERIA_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_ENABLED", "DD_INTEGRATION_ARMERIA_ENABLED"], - "DD_TRACE_ELASTICSEARCH_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_ENABLED"], - "DD_TRACE_ELASTICSEARCH_REST_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_ENABLED"], - "DD_TRACE_ELASTICSEARCH_REST_5_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_5_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_5_ENABLED"], - "DD_TRACE_COUCHBASE_3_ENABLED": ["DD_TRACE_INTEGRATION_COUCHBASE_3_ENABLED", "DD_INTEGRATION_COUCHBASE_3_ENABLED"], - "DD_TRACE_ELASTICSEARCH_REST_6_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_6_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_6_ENABLED"], - "DD_TRACE_DROPWIZARD_ENABLED": ["DD_TRACE_INTEGRATION_DROPWIZARD_ENABLED", "DD_INTEGRATION_DROPWIZARD_ENABLED"], - "DD_TRACE_DROPWIZARD_VIEW_ENABLED": ["DD_TRACE_INTEGRATION_DROPWIZARD_VIEW_ENABLED", "DD_INTEGRATION_DROPWIZARD_VIEW_ENABLED"], - "DD_TRACE_ELASTICSEARCH_REST_7_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_7_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_REST_7_ENABLED"], - "DD_TRACE_ELASTICSEARCH_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_ENABLED"], - "DD_TRACE_ELASTICSEARCH_TRANSPORT_2_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_2_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_2_ENABLED"], - "DD_TRACE_THROWABLES_ENABLED": ["DD_TRACE_INTEGRATION_THROWABLES_ENABLED", "DD_INTEGRATION_THROWABLES_ENABLED"], - "DD_TRACE_FREEMARKER_ENABLED": ["DD_TRACE_INTEGRATION_FREEMARKER_ENABLED", "DD_INTEGRATION_FREEMARKER_ENABLED"], - "DD_TRACE_ELASTICSEARCH_TRANSPORT_5_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_5_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_5_ENABLED"], - "DD_TRACE_ELASTICSEARCH_TRANSPORT_6_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_6_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_6_ENABLED"], - "DD_TRACE_ELASTICSEARCH_TRANSPORT_7_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_7_ENABLED", "DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_7_ENABLED"], - "DD_TRACE_JACKSON_1_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_1_ENABLED", "DD_INTEGRATION_JACKSON_1_ENABLED"], - "DD_TRACE_HIBERNATE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_ENABLED", "DD_INTEGRATION_HIBERNATE_ENABLED"], - "DD_TRACE_HIBERNATE_CORE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_CORE_ENABLED", "DD_INTEGRATION_HIBERNATE_CORE_ENABLED"], - "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["DD_TRACE_INTEGRATION_GRAPHQL_JAVA_ENABLED", "DD_INTEGRATION_GRAPHQL_JAVA_ENABLED"], - "DD_TRACE_JAVA_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_JAVA_HTTP_CLIENT_ENABLED"], - "DD_TRACE_JACKSON_2_12_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_12_ENABLED", "DD_INTEGRATION_JACKSON_2_12_ENABLED"], - "DD_TRACE_JACKSON_2_16_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_16_ENABLED", "DD_INTEGRATION_JACKSON_2_16_ENABLED"], - "DD_TRACE_TASK_RUNNER_ENABLED": ["DD_TRACE_INTEGRATION_TASK_RUNNER_ENABLED", "DD_INTEGRATION_TASK_RUNNER_ENABLED"], - "DD_TRACE_STRUCTURED_TASK_SCOPE_ENABLED": ["DD_TRACE_INTEGRATION_STRUCTURED_TASK_SCOPE_ENABLED", "DD_INTEGRATION_STRUCTURED_TASK_SCOPE_ENABLED"], - "DD_TRACE_JAVA_COMPLETABLEFUTURE_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_COMPLETABLEFUTURE_ENABLED", "DD_INTEGRATION_JAVA_COMPLETABLEFUTURE_ENABLED"], - "DD_TRACE_NATIVE_IMAGE_ENABLED": ["DD_TRACE_INTEGRATION_NATIVE_IMAGE_ENABLED", "DD_INTEGRATION_NATIVE_IMAGE_ENABLED"], - "DD_TRACE_KAFKA_3_8_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_3_8_ENABLED", "DD_INTEGRATION_KAFKA_3_8_ENABLED"], - "DD_TRACE_JACKSON_2_8_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_8_ENABLED", "DD_INTEGRATION_JACKSON_2_8_ENABLED"], - "DD_TRACE_JACKSON_2_6_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_6_ENABLED", "DD_INTEGRATION_JACKSON_2_6_ENABLED"], - "DD_TRACE_MMAP_ENABLED": ["DD_TRACE_INTEGRATION_MMAP_ENABLED", "DD_INTEGRATION_MMAP_ENABLED"], - "DD_TRACE_DIRECTALLOCATION_ENABLED": ["DD_TRACE_INTEGRATION_DIRECTALLOCATION_ENABLED", "DD_INTEGRATION_DIRECTALLOCATION_ENABLED"], - "DD_TRACE_ALLOCATEDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_ALLOCATEDIRECT_ENABLED", "DD_INTEGRATION_ALLOCATEDIRECT_ENABLED"], - "DD_TRACE_JNI_ENABLED": ["DD_TRACE_INTEGRATION_JNI_ENABLED", "DD_INTEGRATION_JNI_ENABLED"], - "DD_TRACE_SETUP_TEARDOWN_ENABLED": ["DD_TRACE_INTEGRATION_SETUP_TEARDOWN_ENABLED", "DD_INTEGRATION_SETUP_TEARDOWN_ENABLED"], - "DD_TRACE_TEST_ORDER_ENABLED": ["DD_TRACE_INTEGRATION_TEST_ORDER_ENABLED", "DD_INTEGRATION_TEST_ORDER_ENABLED"], - "DD_TRACE_JUNIT_4_MUNIT_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_MUNIT_ENABLED", "DD_INTEGRATION_JUNIT_4_MUNIT_ENABLED"], - "DD_TRACE_JETTY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_CLIENT_ENABLED", "DD_INTEGRATION_JETTY_CLIENT_ENABLED"], - "DD_TRACE_JUNIT_4_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_CUCUMBER_ENABLED", "DD_INTEGRATION_JUNIT_4_CUCUMBER_ENABLED"], - "DD_TRACE_LOGS_INTAKE_ENABLED": ["DD_TRACE_INTEGRATION_LOGS_INTAKE_ENABLED", "DD_INTEGRATION_LOGS_INTAKE_ENABLED"], - "DD_TRACE_LOGS_INTAKE_LOG4J_2_ENABLED": ["DD_TRACE_INTEGRATION_LOGS_INTAKE_LOG4J_2_ENABLED", "DD_INTEGRATION_LOGS_INTAKE_LOG4J_2_ENABLED"], - "DD_TRACE_JUNIT_5_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_CUCUMBER_ENABLED", "DD_INTEGRATION_JUNIT_5_CUCUMBER_ENABLED"], - "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_ENABLED"], - "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED"], - "DD_TRACE_ARMERIA_GRPC_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_SERVER_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_SERVER_ENABLED"], - "DD_TRACE_ARMERIA_GRPC_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_ENABLED"], - "DD_TRACE_ARMERIA_GRPC_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_CLIENT_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_CLIENT_ENABLED"], - "DD_TRACE_ARMERIA_GRPC_MESSAGE_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_MESSAGE_ENABLED", "DD_INTEGRATION_ARMERIA_GRPC_MESSAGE_ENABLED"], - "DD_TRACE_JUNIT_5_SPOCK_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_SPOCK_ENABLED", "DD_INTEGRATION_JUNIT_5_SPOCK_ENABLED"], - "DD_TRACE_MONGO_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_ENABLED", "DD_INTEGRATION_MONGO_ENABLED"], - "DD_TRACE_MONGO_REACTIVESTREAMS_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED", "DD_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED"], - "DD_TRACE_OPENSEARCH_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_ENABLED", "DD_INTEGRATION_OPENSEARCH_ENABLED"], - "DD_TRACE_OPENSEARCH_REST_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_REST_ENABLED", "DD_INTEGRATION_OPENSEARCH_REST_ENABLED"], - "DD_TRACE_MONGO_3_1_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_1_ENABLED", "DD_INTEGRATION_MONGO_3_1_ENABLED"], - "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED"], - "DD_TRACE_OPENTELEMETRY_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_ENABLED"], - "DD_TRACE_OPENTELEMETRY_1_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_1_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_1_ENABLED"], - "DD_TRACE_MONGO_3_4_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_4_ENABLED", "DD_INTEGRATION_MONGO_3_4_ENABLED"], - "DD_TRACE_OPENTRACING_ENABLED": ["DD_TRACE_INTEGRATION_OPENTRACING_ENABLED", "DD_INTEGRATION_OPENTRACING_ENABLED"], - "DD_TRACE_OPENTRACING_GLOBALTRACER_ENABLED": ["DD_TRACE_INTEGRATION_OPENTRACING_GLOBALTRACER_ENABLED", "DD_INTEGRATION_OPENTRACING_GLOBALTRACER_ENABLED"], - "DD_TRACE_OPENTELEMETRY_BETA_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_BETA_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_BETA_ENABLED"], - "DD_TRACE_OPENSEARCH_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_TRANSPORT_ENABLED", "DD_INTEGRATION_OPENSEARCH_TRANSPORT_ENABLED"], - "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED"], - "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED"], - "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED", "DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED"], - "DD_TRACE_SCALA_PROMISE_RESOLVE_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_PROMISE_RESOLVE_ENABLED", "DD_INTEGRATION_SCALA_PROMISE_RESOLVE_ENABLED"], - "DD_TRACE_SCALA_FUTURE_OBJECT_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_FUTURE_OBJECT_ENABLED", "DD_INTEGRATION_SCALA_FUTURE_OBJECT_ENABLED"], - "DD_TRACE_SCALA_PROMISE_COMPLETE_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_PROMISE_COMPLETE_ENABLED", "DD_INTEGRATION_SCALA_PROMISE_COMPLETE_ENABLED"], - "DD_TRACE_REDISSON_ENABLED": ["DD_TRACE_INTEGRATION_REDISSON_ENABLED", "DD_INTEGRATION_REDISSON_ENABLED"], - "DD_TRACE_SERVICETALK_ENABLED": ["DD_TRACE_INTEGRATION_SERVICETALK_ENABLED", "DD_INTEGRATION_SERVICETALK_ENABLED"], - "DD_TRACE_SERVICETALK_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_SERVICETALK_CONCURRENT_ENABLED", "DD_INTEGRATION_SERVICETALK_CONCURRENT_ENABLED"], - "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED", "DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED"], - "DD_TRACE_TESTNG_6_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_6_ENABLED", "DD_INTEGRATION_TESTNG_6_ENABLED"], - "DD_TRACE_TESTNG_7_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_7_ENABLED", "DD_INTEGRATION_TESTNG_7_ENABLED"], - "DD_TRACE_UNDERTOW_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_ENABLED", "DD_INTEGRATION_UNDERTOW_ENABLED"], - "DD_TRACE_UNDERTOW_2_2_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_2_ENABLED", "DD_INTEGRATION_UNDERTOW_2_2_ENABLED"], - "DD_TRACE_SERVLET_2_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_2_ENABLED", "DD_INTEGRATION_SERVLET_2_ENABLED"], - "DD_TRACE_ZIO_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED", "DD_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED"], - "DD_TRACE_TIBCO_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_ENABLED", "DD_INTEGRATION_TIBCO_ENABLED"], - "DD_TRACE_TIBCO_BW_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_BW_ENABLED", "DD_INTEGRATION_TIBCO_BW_ENABLED"], - "DD_TRACE_SPARK_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_ENABLED", "DD_INTEGRATION_SPARK_ENABLED"], - "DD_TRACE_APACHE_SPARK_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_SPARK_ENABLED", "DD_INTEGRATION_APACHE_SPARK_ENABLED"], - "DD_TRACE_AKKA_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_ENABLED", "DD_INTEGRATION_AKKA_HTTP_ENABLED"], - "DD_TRACE_JAVAX_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_WEBSOCKET_ENABLED", "DD_INTEGRATION_JAVAX_WEBSOCKET_ENABLED"], - "DD_TRACE_UNDERTOW_2_0_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_0_ENABLED", "DD_INTEGRATION_UNDERTOW_2_0_ENABLED"], - "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED", "DD_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED"], - "DD_TRACE_AKKA_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED", "DD_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED"], - "DD_TRACE_JAKARTA_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_WEBSOCKET_ENABLED", "DD_INTEGRATION_JAKARTA_WEBSOCKET_ENABLED"], - "DD_TRACE_MULE_JPMS_ENABLED": ["DD_TRACE_INTEGRATION_MULE_JPMS_ENABLED", "DD_INTEGRATION_MULE_JPMS_ENABLED"], - "DD_TRACE_SPRING_WEB_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED", "DD_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED"], - "DD_TRACE_AKKA_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_SERVER_ENABLED", "DD_INTEGRATION_AKKA_HTTP_SERVER_ENABLED"], - "DD_TRACE_AKKA_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP2_ENABLED", "DD_INTEGRATION_AKKA_HTTP2_ENABLED"] + "DD_PROFILING_ASYNC_LIVEHEAP_CAPACITY": ["DD_PROFILING_DDPROF_MEMLEAK_CAPACITY"], + "DD_PROFILING_ASYNC_LIVEHEAP_INTERVAL": ["DD_PROFILING_DDPROF_MEMLEAK_INTERVAL"], + "DD_PROFILING_STACKDEPTH": ["DD_PROFILING_DDPROF_STACKDEPTH"], + "DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE": ["DD_AEROSPIKE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AEROSPIKE_ENABLED": ["DD_TRACE_INTEGRATION_AEROSPIKE_ENABLED","DD_INTEGRATION_AEROSPIKE_ENABLED"], + "DD_TRACE_AKKA_ACTOR_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_ENABLED","DD_INTEGRATION_AKKA_ACTOR_ENABLED"], + "DD_TRACE_AKKA_ACTOR_MAILBOX_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_MAILBOX_ENABLED","DD_INTEGRATION_AKKA_ACTOR_MAILBOX_ENABLED"], + "DD_TRACE_AKKA_ACTOR_RECEIVE_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_RECEIVE_ENABLED","DD_INTEGRATION_AKKA_ACTOR_RECEIVE_ENABLED"], + "DD_TRACE_AKKA_ACTOR_SEND_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_SEND_ENABLED","DD_INTEGRATION_AKKA_ACTOR_SEND_ENABLED"], + "DD_TRACE_AKKA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_CONCURRENT_ENABLED","DD_INTEGRATION_AKKA_CONCURRENT_ENABLED"], + "DD_TRACE_AKKA_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP2_ENABLED","DD_INTEGRATION_AKKA_HTTP2_ENABLED"], + "DD_TRACE_AKKA_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_AKKA_HTTP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AKKA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_AKKA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AKKA_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED","DD_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED"], + "DD_TRACE_AKKA_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_ENABLED","DD_INTEGRATION_AKKA_HTTP_ENABLED"], + "DD_TRACE_AKKA_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_AKKA_HTTP_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AKKA_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_SERVER_ENABLED","DD_INTEGRATION_AKKA_HTTP_SERVER_ENABLED"], + "DD_TRACE_ALLOCATEDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_ALLOCATEDIRECT_ENABLED","DD_INTEGRATION_ALLOCATEDIRECT_ENABLED"], + "DD_TRACE_AMQP_ANALYTICS_SAMPLE_RATE": ["DD_AMQP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AMQP_ENABLED": ["DD_TRACE_INTEGRATION_AMQP_ENABLED","DD_INTEGRATION_AMQP_ENABLED"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED","DD_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE": ["DD_APACHE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED","DD_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED"], + "DD_TRACE_APACHE_HTTPCLIENT5_ANALYTICS_SAMPLE_RATE": ["DD_APACHE_HTTPCLIENT5_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_APACHE_HTTPCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCLIENT5_ENABLED","DD_INTEGRATION_APACHE_HTTPCLIENT5_ENABLED"], + "DD_TRACE_APACHE_HTTPCLIENT_ANALYTICS_SAMPLE_RATE": ["DD_APACHE_HTTPCLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_APACHE_HTTPCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCLIENT_ENABLED","DD_INTEGRATION_APACHE_HTTPCLIENT_ENABLED"], + "DD_TRACE_APACHE_HTTPCORE_5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCORE_5_ENABLED","DD_INTEGRATION_APACHE_HTTPCORE_5_ENABLED"], + "DD_TRACE_APACHE_HTTPCORE_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPCORE_ENABLED","DD_INTEGRATION_APACHE_HTTPCORE_ENABLED"], + "DD_TRACE_APACHE_HTTP_CLIENT5_ANALYTICS_SAMPLE_RATE": ["DD_APACHE_HTTP_CLIENT5_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_APACHE_HTTP_CLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CLIENT5_ENABLED","DD_INTEGRATION_APACHE_HTTP_CLIENT5_ENABLED"], + "DD_TRACE_APACHE_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_APACHE_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_APACHE_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CLIENT_ENABLED","DD_INTEGRATION_APACHE_HTTP_CLIENT_ENABLED"], + "DD_TRACE_APACHE_HTTP_CORE_5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CORE_5_ENABLED","DD_INTEGRATION_APACHE_HTTP_CORE_5_ENABLED"], + "DD_TRACE_APACHE_HTTP_CORE_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTP_CORE_ENABLED","DD_INTEGRATION_APACHE_HTTP_CORE_ENABLED"], + "DD_TRACE_APACHE_SPARK_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_SPARK_ENABLED","DD_INTEGRATION_APACHE_SPARK_ENABLED"], + "DD_TRACE_ARMERIA_ANALYTICS_SAMPLE_RATE": ["DD_ARMERIA_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_ARMERIA_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_ENABLED","DD_INTEGRATION_ARMERIA_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_ANALYTICS_SAMPLE_RATE": ["DD_ARMERIA_GRPC_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_ARMERIA_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_ARMERIA_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_ARMERIA_GRPC_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_CLIENT_ENABLED","DD_INTEGRATION_ARMERIA_GRPC_CLIENT_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_ENABLED","DD_INTEGRATION_ARMERIA_GRPC_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_MESSAGE_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_MESSAGE_ENABLED","DD_INTEGRATION_ARMERIA_GRPC_MESSAGE_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_ARMERIA_GRPC_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_ARMERIA_GRPC_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_GRPC_SERVER_ENABLED","DD_INTEGRATION_ARMERIA_GRPC_SERVER_ENABLED"], + "DD_TRACE_ARMERIA_JETTY_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_JETTY_ENABLED","DD_INTEGRATION_ARMERIA_JETTY_ENABLED"], + "DD_TRACE_AUTH0_JWT_ENABLED": ["DD_TRACE_INTEGRATION_AUTH0_JWT_ENABLED","DD_INTEGRATION_AUTH0_JWT_ENABLED"], + "DD_TRACE_AVRO_ENABLED": ["DD_TRACE_INTEGRATION_AVRO_ENABLED","DD_INTEGRATION_AVRO_ENABLED"], + "DD_TRACE_AWS_DYNAMODB_ENABLED": ["DD_TRACE_INTEGRATION_AWS_DYNAMODB_ENABLED","DD_INTEGRATION_AWS_DYNAMODB_ENABLED"], + "DD_TRACE_AWS_LAMBDA_ENABLED": ["DD_TRACE_INTEGRATION_AWS_LAMBDA_ENABLED","DD_INTEGRATION_AWS_LAMBDA_ENABLED"], + "DD_TRACE_AWS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_PROPAGATION_ENABLED","DD_INTEGRATION_AWS_PROPAGATION_ENABLED"], + "DD_TRACE_AWS_S3_ENABLED": ["DD_TRACE_INTEGRATION_AWS_S3_ENABLED","DD_INTEGRATION_AWS_S3_ENABLED"], + "DD_TRACE_AWS_SDK_ANALYTICS_SAMPLE_RATE": ["DD_AWS_SDK_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AWS_SDK_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_ENABLED","DD_INTEGRATION_AWS_SDK_ENABLED"], + "DD_TRACE_AWS_SDK_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED","DD_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED"], + "DD_TRACE_AXIS2_ANALYTICS_SAMPLE_RATE": ["DD_AXIS2_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AXIS2_ENABLED": ["DD_TRACE_INTEGRATION_AXIS2_ENABLED","DD_INTEGRATION_AXIS2_ENABLED"], + "DD_TRACE_AXIS2_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_AXIS2_TRANSPORT_ENABLED","DD_INTEGRATION_AXIS2_TRANSPORT_ENABLED"], + "DD_TRACE_AXWAY_API_ENABLED": ["DD_TRACE_INTEGRATION_AXWAY_API_ENABLED","DD_INTEGRATION_AXWAY_API_ENABLED"], + "DD_TRACE_AXWAY_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_AXWAY_HTTP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AZURE_FUNCTIONS_ANALYTICS_SAMPLE_RATE": ["DD_AZURE_FUNCTIONS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_AZURE_FUNCTIONS_ENABLED": ["DD_TRACE_INTEGRATION_AZURE_FUNCTIONS_ENABLED","DD_INTEGRATION_AZURE_FUNCTIONS_ENABLED"], + "DD_TRACE_CAFFEINE_ENABLED": ["DD_TRACE_INTEGRATION_CAFFEINE_ENABLED","DD_INTEGRATION_CAFFEINE_ENABLED"], + "DD_TRACE_CASSANDRA_ANALYTICS_SAMPLE_RATE": ["DD_CASSANDRA_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_CASSANDRA_ENABLED": ["DD_TRACE_INTEGRATION_CASSANDRA_ENABLED","DD_INTEGRATION_CASSANDRA_ENABLED"], + "DD_TRACE_CI_VISIBILITY_ENABLED": ["DD_TRACE_INTEGRATION_CI_VISIBILITY_ENABLED","DD_INTEGRATION_CI_VISIBILITY_ENABLED"], + "DD_TRACE_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_CLASSLOADING_ENABLED","DD_INTEGRATION_CLASSLOADING_ENABLED"], + "DD_TRACE_COMMONS_FILEUPLOAD_ENABLED": ["DD_TRACE_INTEGRATION_COMMONS_FILEUPLOAD_ENABLED","DD_INTEGRATION_COMMONS_FILEUPLOAD_ENABLED"], + "DD_TRACE_COMMONS_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_COMMONS_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_COMMONS_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_COMMONS_HTTP_CLIENT_ENABLED","DD_INTEGRATION_COMMONS_HTTP_CLIENT_ENABLED"], + "DD_TRACE_CONSUMER_TASK_ENABLED": ["DD_TRACE_INTEGRATION_CONSUMER_TASK_ENABLED","DD_INTEGRATION_CONSUMER_TASK_ENABLED"], + "DD_TRACE_COUCHBASE_3_ENABLED": ["DD_TRACE_INTEGRATION_COUCHBASE_3_ENABLED","DD_INTEGRATION_COUCHBASE_3_ENABLED"], + "DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE": ["DD_COUCHBASE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_COUCHBASE_ENABLED": ["DD_TRACE_INTEGRATION_COUCHBASE_ENABLED","DD_INTEGRATION_COUCHBASE_ENABLED"], + "DD_TRACE_CUCUMBER_5_ANALYTICS_SAMPLE_RATE": ["DD_CUCUMBER_5_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_CUCUMBER_5_ENABLED": ["DD_TRACE_INTEGRATION_CUCUMBER_5_ENABLED","DD_INTEGRATION_CUCUMBER_5_ENABLED"], + "DD_TRACE_CUCUMBER_ANALYTICS_SAMPLE_RATE": ["DD_CUCUMBER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_CUCUMBER_ENABLED","DD_INTEGRATION_CUCUMBER_ENABLED"], + "DD_TRACE_CXF_ENABLED": ["DD_TRACE_INTEGRATION_CXF_ENABLED","DD_INTEGRATION_CXF_ENABLED"], + "DD_TRACE_CXF_INVOKER_ENABLED": ["DD_TRACE_INTEGRATION_CXF_INVOKER_ENABLED","DD_INTEGRATION_CXF_INVOKER_ENABLED"], + "DD_TRACE_DATANUCLEUS_ANALYTICS_SAMPLE_RATE": ["DD_DATANUCLEUS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_DATANUCLEUS_ENABLED": ["DD_TRACE_INTEGRATION_DATANUCLEUS_ENABLED","DD_INTEGRATION_DATANUCLEUS_ENABLED"], + "DD_TRACE_DB2_ENABLED": ["DD_TRACE_INTEGRATION_DB2_ENABLED","DD_INTEGRATION_DB2_ENABLED"], + "DD_TRACE_DBM_ENABLED": ["DD_TRACE_INTEGRATION_DBM_ENABLED","DD_INTEGRATION_DBM_ENABLED"], + "DD_TRACE_DEFINECLASS_ENABLED": ["DD_TRACE_INTEGRATION_DEFINECLASS_ENABLED","DD_INTEGRATION_DEFINECLASS_ENABLED"], + "DD_TRACE_DIRECTALLOCATION_ENABLED": ["DD_TRACE_INTEGRATION_DIRECTALLOCATION_ENABLED","DD_INTEGRATION_DIRECTALLOCATION_ENABLED"], + "DD_TRACE_DO_NOT_TRACE_ANNOTATION_ENABLED": ["DD_TRACE_INTEGRATION_DO_NOT_TRACE_ANNOTATION_ENABLED","DD_INTEGRATION_DO_NOT_TRACE_ANNOTATION_ENABLED"], + "DD_TRACE_DROPWIZARD_ENABLED": ["DD_TRACE_INTEGRATION_DROPWIZARD_ENABLED","DD_INTEGRATION_DROPWIZARD_ENABLED"], + "DD_TRACE_DROPWIZARD_VIEW_ENABLED": ["DD_TRACE_INTEGRATION_DROPWIZARD_VIEW_ENABLED","DD_INTEGRATION_DROPWIZARD_VIEW_ENABLED"], + "DD_TRACE_DYNAMODB_ENABLED": ["DD_TRACE_INTEGRATION_DYNAMODB_ENABLED","DD_INTEGRATION_DYNAMODB_ENABLED"], + "DD_TRACE_ELASTICSEARCH_ANALYTICS_SAMPLE_RATE": ["DD_ELASTICSEARCH_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_ELASTICSEARCH_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_ENABLED","DD_INTEGRATION_ELASTICSEARCH_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_5_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_5_ENABLED","DD_INTEGRATION_ELASTICSEARCH_REST_5_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_6_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_6_ENABLED","DD_INTEGRATION_ELASTICSEARCH_REST_6_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_7_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_7_ENABLED","DD_INTEGRATION_ELASTICSEARCH_REST_7_ENABLED"], + "DD_TRACE_ELASTICSEARCH_REST_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_REST_ENABLED","DD_INTEGRATION_ELASTICSEARCH_REST_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_2_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_2_ENABLED","DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_2_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_5_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_5_ENABLED","DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_5_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_6_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_6_ENABLED","DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_6_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_7_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_7_ENABLED","DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_7_ENABLED"], + "DD_TRACE_ELASTICSEARCH_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_ELASTICSEARCH_TRANSPORT_ENABLED","DD_INTEGRATION_ELASTICSEARCH_TRANSPORT_ENABLED"], + "DD_TRACE_EMR_AWS_SDK_ENABLED": ["DD_TRACE_INTEGRATION_EMR_AWS_SDK_ENABLED","DD_INTEGRATION_EMR_AWS_SDK_ENABLED"], + "DD_TRACE_EVENTBRIDGE_ENABLED": ["DD_TRACE_INTEGRATION_EVENTBRIDGE_ENABLED","DD_INTEGRATION_EVENTBRIDGE_ENABLED"], + "DD_TRACE_FILEITEMITERATOR_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEMITERATOR_ENABLED","DD_INTEGRATION_FILEITEMITERATOR_ENABLED"], + "DD_TRACE_FILEITEMSTREAM_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEMSTREAM_ENABLED","DD_INTEGRATION_FILEITEMSTREAM_ENABLED"], + "DD_TRACE_FILEITEM_ENABLED": ["DD_TRACE_INTEGRATION_FILEITEM_ENABLED","DD_INTEGRATION_FILEITEM_ENABLED"], + "DD_TRACE_FINATRA_ANALYTICS_SAMPLE_RATE": ["DD_FINATRA_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_FINATRA_ENABLED": ["DD_TRACE_INTEGRATION_FINATRA_ENABLED","DD_INTEGRATION_FINATRA_ENABLED"], + "DD_TRACE_FJP_ENABLED": ["DD_TRACE_INTEGRATION_FJP_ENABLED","DD_INTEGRATION_FJP_ENABLED"], + "DD_TRACE_FJP_WORKQUEUE_ENABLED": ["DD_TRACE_INTEGRATION_FJP_WORKQUEUE_ENABLED","DD_INTEGRATION_FJP_WORKQUEUE_ENABLED"], + "DD_TRACE_FREEMARKER_ENABLED": ["DD_TRACE_INTEGRATION_FREEMARKER_ENABLED","DD_INTEGRATION_FREEMARKER_ENABLED"], + "DD_TRACE_GLASSFISH_ENABLED": ["DD_TRACE_INTEGRATION_GLASSFISH_ENABLED","DD_INTEGRATION_GLASSFISH_ENABLED"], + "DD_TRACE_GOOGLE_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_GOOGLE_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GOOGLE_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED","DD_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_ANALYTICS_SAMPLE_RATE": ["DD_GOOGLE_PUBSUB_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GOOGLE_PUBSUB_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED"], + "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE": ["DD_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["DD_TRACE_INTEGRATION_GRAPHQL_JAVA_ENABLED","DD_INTEGRATION_GRAPHQL_JAVA_ENABLED"], + "DD_TRACE_GRIZZLY_ANALYTICS_SAMPLE_RATE": ["DD_GRIZZLY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GRIZZLY_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_GRIZZLY_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GRIZZLY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_CLIENT_ENABLED","DD_INTEGRATION_GRIZZLY_CLIENT_ENABLED"], + "DD_TRACE_GRIZZLY_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_ENABLED","DD_INTEGRATION_GRIZZLY_ENABLED"], + "DD_TRACE_GRIZZLY_FILTERCHAIN_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED","DD_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED"], + "DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE": ["DD_GRPC_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GRPC_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_CLIENT_ENABLED","DD_INTEGRATION_GRPC_CLIENT_ENABLED"], + "DD_TRACE_GRPC_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_ENABLED","DD_INTEGRATION_GRPC_ENABLED"], + "DD_TRACE_GRPC_MESSAGE_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_MESSAGE_ENABLED","DD_INTEGRATION_GRPC_MESSAGE_ENABLED"], + "DD_TRACE_GRPC_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_NETTY_ENABLED","DD_INTEGRATION_GRPC_NETTY_ENABLED"], + "DD_TRACE_GRPC_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_GRPC_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GRPC_SERVER_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED","DD_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED"], + "DD_TRACE_GRPC_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_ENABLED","DD_INTEGRATION_GRPC_SERVER_ENABLED"], + "DD_TRACE_GSON_ENABLED": ["DD_TRACE_INTEGRATION_GSON_ENABLED","DD_INTEGRATION_GSON_ENABLED"], + "DD_TRACE_GUAVA_ENABLED": ["DD_TRACE_INTEGRATION_GUAVA_ENABLED","DD_INTEGRATION_GUAVA_ENABLED"], + "DD_TRACE_HAZELCAST_ENABLED": ["DD_TRACE_INTEGRATION_HAZELCAST_ENABLED","DD_INTEGRATION_HAZELCAST_ENABLED"], + "DD_TRACE_HAZELCAST_LEGACY_ENABLED": ["DD_TRACE_INTEGRATION_HAZELCAST_LEGACY_ENABLED","DD_INTEGRATION_HAZELCAST_LEGACY_ENABLED"], + "DD_TRACE_HAZELCAST_SDK_ANALYTICS_SAMPLE_RATE": ["DD_HAZELCAST_SDK_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_HEADER_TAGS_LEGACY_PARSING_ENABLED": ["DD_TRACE_INTEGRATION_HEADER_TAGS_LEGACY_PARSING_ENABLED","DD_INTEGRATION_HEADER_TAGS_LEGACY_PARSING_ENABLED"], + "DD_TRACE_HIBERNATE_CORE_ANALYTICS_SAMPLE_RATE": ["DD_HIBERNATE_CORE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_HIBERNATE_CORE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_CORE_ENABLED","DD_INTEGRATION_HIBERNATE_CORE_ENABLED"], + "DD_TRACE_HIBERNATE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_ENABLED","DD_INTEGRATION_HIBERNATE_ENABLED"], + "DD_TRACE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT5_ENABLED","DD_INTEGRATION_HTTPASYNCCLIENT5_ENABLED"], + "DD_TRACE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE": ["DD_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_ENABLED","DD_INTEGRATION_HTTPASYNCCLIENT_ENABLED"], + "DD_TRACE_HTTPCLIENT5_ANALYTICS_SAMPLE_RATE": ["DD_HTTPCLIENT5_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_HTTPCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT5_ENABLED","DD_INTEGRATION_HTTPCLIENT5_ENABLED"], + "DD_TRACE_HTTPCLIENT_ANALYTICS_SAMPLE_RATE": ["DD_HTTPCLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_HTTPCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT_ENABLED","DD_INTEGRATION_HTTPCLIENT_ENABLED"], + "DD_TRACE_HTTPCLIENT_REDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED","DD_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED"], + "DD_TRACE_HTTPCORE_5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_5_ENABLED","DD_INTEGRATION_HTTPCORE_5_ENABLED"], + "DD_TRACE_HTTPCORE_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_ENABLED","DD_INTEGRATION_HTTPCORE_ENABLED"], + "DD_TRACE_HTTPURLCONNECTION_ANALYTICS_SAMPLE_RATE": ["DD_HTTPURLCONNECTION_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_HTTPURLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_HTTPURLCONNECTION_ENABLED","DD_INTEGRATION_HTTPURLCONNECTION_ENABLED"], + "DD_TRACE_HYSTRIX_ENABLED": ["DD_TRACE_INTEGRATION_HYSTRIX_ENABLED","DD_INTEGRATION_HYSTRIX_ENABLED"], + "DD_TRACE_IASTINSTRUMENTATION_ENABLED": ["DD_TRACE_INTEGRATION_IASTINSTRUMENTATION_ENABLED","DD_INTEGRATION_IASTINSTRUMENTATION_ENABLED"], + "DD_TRACE_IAST_RESULTSET_ENABLED": ["DD_TRACE_INTEGRATION_IAST_RESULTSET_ENABLED","DD_INTEGRATION_IAST_RESULTSET_ENABLED"], + "DD_TRACE_IGNITE_ANALYTICS_SAMPLE_RATE": ["DD_IGNITE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_IGNITE_ENABLED": ["DD_TRACE_INTEGRATION_IGNITE_ENABLED","DD_INTEGRATION_IGNITE_ENABLED"], + "DD_TRACE_INPUTSTREAM_ENABLED": ["DD_TRACE_INTEGRATION_INPUTSTREAM_ENABLED","DD_INTEGRATION_INPUTSTREAM_ENABLED"], + "DD_TRACE_JACKSON_1_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_1_ENABLED","DD_INTEGRATION_JACKSON_1_ENABLED"], + "DD_TRACE_JACKSON_2_12_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_12_ENABLED","DD_INTEGRATION_JACKSON_2_12_ENABLED"], + "DD_TRACE_JACKSON_2_16_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_16_ENABLED","DD_INTEGRATION_JACKSON_2_16_ENABLED"], + "DD_TRACE_JACKSON_2_6_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_6_ENABLED","DD_INTEGRATION_JACKSON_2_6_ENABLED"], + "DD_TRACE_JACKSON_2_8_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_8_ENABLED","DD_INTEGRATION_JACKSON_2_8_ENABLED"], + "DD_TRACE_JACKSON_2_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_ENABLED","DD_INTEGRATION_JACKSON_2_ENABLED"], + "DD_TRACE_JACKSON_CORE_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_CORE_ENABLED","DD_INTEGRATION_JACKSON_CORE_ENABLED"], + "DD_TRACE_JACKSON_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_ENABLED","DD_INTEGRATION_JACKSON_ENABLED"], + "DD_TRACE_JACOCO_ENABLED": ["DD_TRACE_INTEGRATION_JACOCO_ENABLED","DD_INTEGRATION_JACOCO_ENABLED"], + "DD_TRACE_JAKARTARS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTARS_ENABLED","DD_INTEGRATION_JAKARTARS_ENABLED"], + "DD_TRACE_JAKARTA_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_JMS_ENABLED","DD_INTEGRATION_JAKARTA_JMS_ENABLED"], + "DD_TRACE_JAKARTA_MAIL_BODY_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_BODY_ENABLED","DD_INTEGRATION_JAKARTA_MAIL_BODY_ENABLED"], + "DD_TRACE_JAKARTA_MAIL_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_ENABLED","DD_INTEGRATION_JAKARTA_MAIL_ENABLED"], + "DD_TRACE_JAKARTA_MAIL_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_MAIL_TRANSPORT_ENABLED","DD_INTEGRATION_JAKARTA_MAIL_TRANSPORT_ENABLED"], + "DD_TRACE_JAKARTA_RS_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_ANNOTATIONS_ENABLED","DD_INTEGRATION_JAKARTA_RS_ANNOTATIONS_ENABLED"], + "DD_TRACE_JAKARTA_RS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_ENABLED","DD_INTEGRATION_JAKARTA_RS_ENABLED"], + "DD_TRACE_JAKARTA_RS_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_RS_FILTER_ENABLED","DD_INTEGRATION_JAKARTA_RS_FILTER_ENABLED"], + "DD_TRACE_JAKARTA_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_WEBSOCKET_ENABLED","DD_INTEGRATION_JAKARTA_WEBSOCKET_ENABLED"], + "DD_TRACE_JAKARTA_WS_ANALYTICS_SAMPLE_RATE": ["DD_JAKARTA_WS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JAKARTA_WS_ENABLED": ["DD_TRACE_INTEGRATION_JAKARTA_WS_ENABLED","DD_INTEGRATION_JAKARTA_WS_ENABLED"], + "DD_TRACE_JAVAX_MAIL_BODY_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_BODY_ENABLED","DD_INTEGRATION_JAVAX_MAIL_BODY_ENABLED"], + "DD_TRACE_JAVAX_MAIL_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_ENABLED","DD_INTEGRATION_JAVAX_MAIL_ENABLED"], + "DD_TRACE_JAVAX_MAIL_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_MAIL_TRANSPORT_ENABLED","DD_INTEGRATION_JAVAX_MAIL_TRANSPORT_ENABLED"], + "DD_TRACE_JAVAX_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JAVAX_WEBSOCKET_ENABLED","DD_INTEGRATION_JAVAX_WEBSOCKET_ENABLED"], + "DD_TRACE_JAVA_COMPLETABLEFUTURE_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_COMPLETABLEFUTURE_ENABLED","DD_INTEGRATION_JAVA_COMPLETABLEFUTURE_ENABLED"], + "DD_TRACE_JAVA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_CONCURRENT_ENABLED","DD_INTEGRATION_JAVA_CONCURRENT_ENABLED"], + "DD_TRACE_JAVA_CONCURRENT_OTHER_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_CONCURRENT_OTHER_ENABLED","DD_INTEGRATION_JAVA_CONCURRENT_OTHER_ENABLED"], + "DD_TRACE_JAVA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_JAVA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JAVA_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_HTTP_CLIENT_ENABLED","DD_INTEGRATION_JAVA_HTTP_CLIENT_ENABLED"], + "DD_TRACE_JAVA_LANG_APPSEC_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_LANG_APPSEC_ENABLED","DD_INTEGRATION_JAVA_LANG_APPSEC_ENABLED"], + "DD_TRACE_JAVA_LANG_MANAGEMENT_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_LANG_MANAGEMENT_ENABLED","DD_INTEGRATION_JAVA_LANG_MANAGEMENT_ENABLED"], + "DD_TRACE_JAVA_TIMER_ENABLED": ["DD_TRACE_INTEGRATION_JAVA_TIMER_ENABLED","DD_INTEGRATION_JAVA_TIMER_ENABLED"], + "DD_TRACE_JAXRS_ANALYTICS_SAMPLE_RATE": ["DD_JAXRS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JAXRS_ENABLED": ["DD_TRACE_INTEGRATION_JAXRS_ENABLED","DD_INTEGRATION_JAXRS_ENABLED"], + "DD_TRACE_JAX_RS_ANALYTICS_SAMPLE_RATE": ["DD_JAX_RS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JAX_RS_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_ANNOTATIONS_ENABLED","DD_INTEGRATION_JAX_RS_ANNOTATIONS_ENABLED"], + "DD_TRACE_JAX_RS_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_JAX_RS_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JAX_RS_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_CLIENT_ENABLED","DD_INTEGRATION_JAX_RS_CLIENT_ENABLED"], + "DD_TRACE_JAX_RS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_ENABLED","DD_INTEGRATION_JAX_RS_ENABLED"], + "DD_TRACE_JAX_RS_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_JAX_RS_FILTER_ENABLED","DD_INTEGRATION_JAX_RS_FILTER_ENABLED"], + "DD_TRACE_JAX_WS_ANALYTICS_SAMPLE_RATE": ["DD_JAX_WS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JAX_WS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_WS_ENABLED","DD_INTEGRATION_JAX_WS_ENABLED"], + "DD_TRACE_JBOSS_LOGMANAGER_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_LOGMANAGER_ENABLED","DD_INTEGRATION_JBOSS_LOGMANAGER_ENABLED"], + "DD_TRACE_JBOSS_MODULES_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_MODULES_ENABLED","DD_INTEGRATION_JBOSS_MODULES_ENABLED"], + "DD_TRACE_JDBC_ANALYTICS_SAMPLE_RATE": ["DD_JDBC_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JDBC_DATASOURCE_ANALYTICS_SAMPLE_RATE": ["DD_JDBC_DATASOURCE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JDBC_DATASOURCE_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_DATASOURCE_ENABLED","DD_INTEGRATION_JDBC_DATASOURCE_ENABLED"], + "DD_TRACE_JDBC_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_ENABLED","DD_INTEGRATION_JDBC_ENABLED"], + "DD_TRACE_JDBC_RESULTSET_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_RESULTSET_ENABLED","DD_INTEGRATION_JDBC_RESULTSET_ENABLED"], + "DD_TRACE_JEDIS_ANALYTICS_SAMPLE_RATE": ["DD_JEDIS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JEDIS_ENABLED": ["DD_TRACE_INTEGRATION_JEDIS_ENABLED","DD_INTEGRATION_JEDIS_ENABLED"], + "DD_TRACE_JEE_ENV_ENTRY_ENABLED": ["DD_TRACE_INTEGRATION_JEE_ENV_ENTRY_ENABLED","DD_INTEGRATION_JEE_ENV_ENTRY_ENABLED"], + "DD_TRACE_JERSEY_ENABLED": ["DD_TRACE_INTEGRATION_JERSEY_ENABLED","DD_INTEGRATION_JERSEY_ENABLED"], + "DD_TRACE_JETTY_ANALYTICS_SAMPLE_RATE": ["DD_JETTY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JETTY_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_JETTY_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JETTY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_CLIENT_ENABLED","DD_INTEGRATION_JETTY_CLIENT_ENABLED"], + "DD_TRACE_JETTY_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_CONCURRENT_ENABLED","DD_INTEGRATION_JETTY_CONCURRENT_ENABLED"], + "DD_TRACE_JETTY_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_ENABLED","DD_INTEGRATION_JETTY_ENABLED"], + "DD_TRACE_JETTY_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_WEBSOCKET_ENABLED","DD_INTEGRATION_JETTY_WEBSOCKET_ENABLED"], + "DD_TRACE_JMS_1_ENABLED": ["DD_TRACE_INTEGRATION_JMS_1_ENABLED","DD_INTEGRATION_JMS_1_ENABLED"], + "DD_TRACE_JMS_2_ENABLED": ["DD_TRACE_INTEGRATION_JMS_2_ENABLED","DD_INTEGRATION_JMS_2_ENABLED"], + "DD_TRACE_JMS_ANALYTICS_SAMPLE_RATE": ["DD_JMS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JMS_ENABLED","DD_INTEGRATION_JMS_ENABLED"], + "DD_TRACE_JMS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_JMS_PROPAGATION_ENABLED","DD_INTEGRATION_JMS_PROPAGATION_ENABLED"], + "DD_TRACE_JNI_ENABLED": ["DD_TRACE_INTEGRATION_JNI_ENABLED","DD_INTEGRATION_JNI_ENABLED"], + "DD_TRACE_JOSE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JOSE_JWT_ENABLED","DD_INTEGRATION_JOSE_JWT_ENABLED"], + "DD_TRACE_JSP_ANALYTICS_SAMPLE_RATE": ["DD_JSP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_JSP_COMPILE_ENABLED": ["DD_TRACE_INTEGRATION_JSP_COMPILE_ENABLED","DD_INTEGRATION_JSP_COMPILE_ENABLED"], + "DD_TRACE_JSP_ENABLED": ["DD_TRACE_INTEGRATION_JSP_ENABLED","DD_INTEGRATION_JSP_ENABLED"], + "DD_TRACE_JSP_RENDER_ENABLED": ["DD_TRACE_INTEGRATION_JSP_RENDER_ENABLED","DD_INTEGRATION_JSP_RENDER_ENABLED"], + "DD_TRACE_JUNIT4_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT4_ENABLED","DD_INTEGRATION_JUNIT4_ENABLED"], + "DD_TRACE_JUNIT_38_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_38_ENABLED","DD_INTEGRATION_JUNIT_38_ENABLED"], + "DD_TRACE_JUNIT_4_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_CUCUMBER_ENABLED","DD_INTEGRATION_JUNIT_4_CUCUMBER_ENABLED"], + "DD_TRACE_JUNIT_4_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_ENABLED","DD_INTEGRATION_JUNIT_4_ENABLED"], + "DD_TRACE_JUNIT_4_MUNIT_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_4_MUNIT_ENABLED","DD_INTEGRATION_JUNIT_4_MUNIT_ENABLED"], + "DD_TRACE_JUNIT_5_CUCUMBER_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_CUCUMBER_ENABLED","DD_INTEGRATION_JUNIT_5_CUCUMBER_ENABLED"], + "DD_TRACE_JUNIT_5_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_ENABLED","DD_INTEGRATION_JUNIT_5_ENABLED"], + "DD_TRACE_JUNIT_5_SPOCK_ENABLED": ["DD_TRACE_INTEGRATION_JUNIT_5_SPOCK_ENABLED","DD_INTEGRATION_JUNIT_5_SPOCK_ENABLED"], + "DD_TRACE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JWT_ENABLED","DD_INTEGRATION_JWT_ENABLED"], + "DD_TRACE_KAFKA_0_11_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_0_11_ENABLED","DD_INTEGRATION_KAFKA_0_11_ENABLED"], + "DD_TRACE_KAFKA_3_8_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_3_8_ENABLED","DD_INTEGRATION_KAFKA_3_8_ENABLED"], + "DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE": ["DD_KAFKA_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_KAFKA_CLIENT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED","DD_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED"], + "DD_TRACE_KAFKA_CONNECT_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CONNECT_ENABLED","DD_INTEGRATION_KAFKA_CONNECT_ENABLED"], + "DD_TRACE_KAFKA_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_ENABLED","DD_INTEGRATION_KAFKA_ENABLED"], + "DD_TRACE_KAFKA_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_PROPAGATION_ENABLED","DD_INTEGRATION_KAFKA_PROPAGATION_ENABLED"], + "DD_TRACE_KAFKA_STREAMS_ANALYTICS_SAMPLE_RATE": ["DD_KAFKA_STREAMS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_KAFKA_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_STREAMS_ENABLED","DD_INTEGRATION_KAFKA_STREAMS_ENABLED"], + "DD_TRACE_KARATE_ENABLED": ["DD_TRACE_INTEGRATION_KARATE_ENABLED","DD_INTEGRATION_KARATE_ENABLED"], + "DD_TRACE_KOTLIN_COROUTINE_ENABLED": ["DD_TRACE_INTEGRATION_KOTLIN_COROUTINE_ENABLED","DD_INTEGRATION_KOTLIN_COROUTINE_ENABLED"], + "DD_TRACE_LETTUCE_4_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ASYNC_ENABLED","DD_INTEGRATION_LETTUCE_4_ASYNC_ENABLED"], + "DD_TRACE_LETTUCE_4_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ENABLED","DD_INTEGRATION_LETTUCE_4_ENABLED"], + "DD_TRACE_LETTUCE_5_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_ASYNC_ENABLED","DD_INTEGRATION_LETTUCE_5_ASYNC_ENABLED"], + "DD_TRACE_LETTUCE_5_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_ENABLED","DD_INTEGRATION_LETTUCE_5_ENABLED"], + "DD_TRACE_LETTUCE_5_RX_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_RX_ENABLED","DD_INTEGRATION_LETTUCE_5_RX_ENABLED"], + "DD_TRACE_LETTUCE_ANALYTICS_SAMPLE_RATE": ["DD_LETTUCE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_LETTUCE_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_ENABLED","DD_INTEGRATION_LETTUCE_ENABLED"], + "DD_TRACE_LIBERTY_ANALYTICS_SAMPLE_RATE": ["DD_LIBERTY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_LIBERTY_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_LIBERTY_CLASSLOADING_ENABLED","DD_INTEGRATION_LIBERTY_CLASSLOADING_ENABLED"], + "DD_TRACE_LIBERTY_ENABLED": ["DD_TRACE_INTEGRATION_LIBERTY_ENABLED","DD_INTEGRATION_LIBERTY_ENABLED"], + "DD_TRACE_LOG4J_1_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_1_ENABLED","DD_INTEGRATION_LOG4J_1_ENABLED"], + "DD_TRACE_LOG4J_2_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_2_ENABLED","DD_INTEGRATION_LOG4J_2_ENABLED"], + "DD_TRACE_LOG4J_ENABLED": ["DD_TRACE_INTEGRATION_LOG4J_ENABLED","DD_INTEGRATION_LOG4J_ENABLED"], + "DD_TRACE_LOGBACK_ENABLED": ["DD_TRACE_INTEGRATION_LOGBACK_ENABLED","DD_INTEGRATION_LOGBACK_ENABLED"], + "DD_TRACE_LOGS_INTAKE_ENABLED": ["DD_TRACE_INTEGRATION_LOGS_INTAKE_ENABLED","DD_INTEGRATION_LOGS_INTAKE_ENABLED"], + "DD_TRACE_LOGS_INTAKE_LOG4J_2_ENABLED": ["DD_TRACE_INTEGRATION_LOGS_INTAKE_LOG4J_2_ENABLED","DD_INTEGRATION_LOGS_INTAKE_LOG4J_2_ENABLED"], + "DD_TRACE_MAVEN_ENABLED": ["DD_TRACE_INTEGRATION_MAVEN_ENABLED","DD_INTEGRATION_MAVEN_ENABLED"], + "DD_TRACE_MICRONAUT_ANALYTICS_SAMPLE_RATE": ["DD_MICRONAUT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_MICRONAUT_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_ENABLED","DD_INTEGRATION_MICRONAUT_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED","DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_2_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED","DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_3_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED","DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_4_ENABLED"], + "DD_TRACE_MICRONAUT_HTTP_SERVER_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_ENABLED","DD_INTEGRATION_MICRONAUT_HTTP_SERVER_NETTY_ENABLED"], + "DD_TRACE_MICRONAUT_SPAN_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_MICRONAUT_SPAN_ORIGIN_ENABLED","DD_INTEGRATION_MICRONAUT_SPAN_ORIGIN_ENABLED"], + "DD_TRACE_MMAP_ENABLED": ["DD_TRACE_INTEGRATION_MMAP_ENABLED","DD_INTEGRATION_MMAP_ENABLED"], + "DD_TRACE_MONGO_3_1_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_1_ENABLED","DD_INTEGRATION_MONGO_3_1_ENABLED"], + "DD_TRACE_MONGO_3_4_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_4_ENABLED","DD_INTEGRATION_MONGO_3_4_ENABLED"], + "DD_TRACE_MONGO_ANALYTICS_SAMPLE_RATE": ["DD_MONGO_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_MONGO_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_ENABLED","DD_INTEGRATION_MONGO_ENABLED"], + "DD_TRACE_MONGO_REACTIVESTREAMS_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED","DD_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED"], + "DD_TRACE_MULE_ANALYTICS_SAMPLE_RATE": ["DD_MULE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_MULE_ENABLED": ["DD_TRACE_INTEGRATION_MULE_ENABLED","DD_INTEGRATION_MULE_ENABLED"], + "DD_TRACE_MULE_JPMS_ENABLED": ["DD_TRACE_INTEGRATION_MULE_JPMS_ENABLED","DD_INTEGRATION_MULE_JPMS_ENABLED"], + "DD_TRACE_MULTIPART_ENABLED": ["DD_TRACE_INTEGRATION_MULTIPART_ENABLED","DD_INTEGRATION_MULTIPART_ENABLED"], + "DD_TRACE_NATIVE_IMAGE_ENABLED": ["DD_TRACE_INTEGRATION_NATIVE_IMAGE_ENABLED","DD_INTEGRATION_NATIVE_IMAGE_ENABLED"], + "DD_TRACE_NETTY_3_8_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_3_8_ENABLED","DD_INTEGRATION_NETTY_3_8_ENABLED"], + "DD_TRACE_NETTY_3_9_ANALYTICS_SAMPLE_RATE": ["DD_NETTY_3_9_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_NETTY_4_0_ANALYTICS_SAMPLE_RATE": ["DD_NETTY_4_0_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_NETTY_4_0_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_0_ENABLED","DD_INTEGRATION_NETTY_4_0_ENABLED"], + "DD_TRACE_NETTY_4_1_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_ENABLED","DD_INTEGRATION_NETTY_4_1_ENABLED"], + "DD_TRACE_NETTY_4_1_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_HTTP2_ENABLED","DD_INTEGRATION_NETTY_4_1_HTTP2_ENABLED"], + "DD_TRACE_NETTY_ANALYTICS_SAMPLE_RATE": ["DD_NETTY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_NETTY_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_CONCURRENT_ENABLED","DD_INTEGRATION_NETTY_CONCURRENT_ENABLED"], + "DD_TRACE_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_ENABLED","DD_INTEGRATION_NETTY_ENABLED"], + "DD_TRACE_NETTY_EVENT_EXECUTOR_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_EVENT_EXECUTOR_ENABLED","DD_INTEGRATION_NETTY_EVENT_EXECUTOR_ENABLED"], + "DD_TRACE_NETTY_PROMISE_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_PROMISE_ENABLED","DD_INTEGRATION_NETTY_PROMISE_ENABLED"], + "DD_TRACE_NEW_TASK_FOR_ENABLED": ["DD_TRACE_INTEGRATION_NEW_TASK_FOR_ENABLED","DD_INTEGRATION_NEW_TASK_FOR_ENABLED"], + "DD_TRACE_NING_ANALYTICS_SAMPLE_RATE": ["DD_NING_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_NING_ENABLED": ["DD_TRACE_INTEGRATION_NING_ENABLED","DD_INTEGRATION_NING_ENABLED"], + "DD_TRACE_NOT_NOT_TRACE_ENABLED": ["DD_TRACE_INTEGRATION_NOT_NOT_TRACE_ENABLED","DD_INTEGRATION_NOT_NOT_TRACE_ENABLED"], + "DD_TRACE_OGNL_ENABLED": ["DD_TRACE_INTEGRATION_OGNL_ENABLED","DD_INTEGRATION_OGNL_ENABLED"], + "DD_TRACE_OKHTTP_2_ANALYTICS_SAMPLE_RATE": ["DD_OKHTTP_2_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_OKHTTP_2_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_2_ENABLED","DD_INTEGRATION_OKHTTP_2_ENABLED"], + "DD_TRACE_OKHTTP_3_ANALYTICS_SAMPLE_RATE": ["DD_OKHTTP_3_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_OKHTTP_3_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_3_ENABLED","DD_INTEGRATION_OKHTTP_3_ENABLED"], + "DD_TRACE_OKHTTP_ANALYTICS_SAMPLE_RATE": ["DD_OKHTTP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_OKHTTP_ENABLED": ["DD_TRACE_INTEGRATION_OKHTTP_ENABLED","DD_INTEGRATION_OKHTTP_ENABLED"], + "DD_TRACE_OPENSEARCH_ANALYTICS_SAMPLE_RATE": ["DD_OPENSEARCH_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_OPENSEARCH_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_ENABLED","DD_INTEGRATION_OPENSEARCH_ENABLED"], + "DD_TRACE_OPENSEARCH_REST_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_REST_ENABLED","DD_INTEGRATION_OPENSEARCH_REST_ENABLED"], + "DD_TRACE_OPENSEARCH_TRANSPORT_ENABLED": ["DD_TRACE_INTEGRATION_OPENSEARCH_TRANSPORT_ENABLED","DD_INTEGRATION_OPENSEARCH_TRANSPORT_ENABLED"], + "DD_TRACE_OPENTELEMETRY_1_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_1_ENABLED","DD_INTEGRATION_OPENTELEMETRY_1_ENABLED"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED","DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED","DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_SAMPLE_RATE": ["DD_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_SAMPLE_RATE": ["DD_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED","DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED"], + "DD_TRACE_OPENTELEMETRY_BETA_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_BETA_ENABLED","DD_INTEGRATION_OPENTELEMETRY_BETA_ENABLED"], + "DD_TRACE_OPENTELEMETRY_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_ENABLED","DD_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_ENABLED"], + "DD_TRACE_OPENTRACING_ENABLED": ["DD_TRACE_INTEGRATION_OPENTRACING_ENABLED","DD_INTEGRATION_OPENTRACING_ENABLED"], + "DD_TRACE_OPENTRACING_GLOBALTRACER_ENABLED": ["DD_TRACE_INTEGRATION_OPENTRACING_GLOBALTRACER_ENABLED","DD_INTEGRATION_OPENTRACING_GLOBALTRACER_ENABLED"], + "DD_TRACE_ORG_JSON_ENABLED": ["DD_TRACE_INTEGRATION_ORG_JSON_ENABLED","DD_INTEGRATION_ORG_JSON_ENABLED"], + "DD_TRACE_OSGI_ENABLED": ["DD_TRACE_INTEGRATION_OSGI_ENABLED","DD_INTEGRATION_OSGI_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_ENABLED","DD_INTEGRATION_PEKKO_ACTOR_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_MAILBOX_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_MAILBOX_ENABLED","DD_INTEGRATION_PEKKO_ACTOR_MAILBOX_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_RECEIVE_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_RECEIVE_ENABLED","DD_INTEGRATION_PEKKO_ACTOR_RECEIVE_ENABLED"], + "DD_TRACE_PEKKO_ACTOR_SEND_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_ACTOR_SEND_ENABLED","DD_INTEGRATION_PEKKO_ACTOR_SEND_ENABLED"], + "DD_TRACE_PEKKO_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_CONCURRENT_ENABLED","DD_INTEGRATION_PEKKO_CONCURRENT_ENABLED"], + "DD_TRACE_PEKKO_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP2_ENABLED","DD_INTEGRATION_PEKKO_HTTP2_ENABLED"], + "DD_TRACE_PEKKO_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_PEKKO_HTTP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_PEKKO_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_PEKKO_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_PEKKO_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_CLIENT_ENABLED","DD_INTEGRATION_PEKKO_HTTP_CLIENT_ENABLED"], + "DD_TRACE_PEKKO_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_ENABLED","DD_INTEGRATION_PEKKO_HTTP_ENABLED"], + "DD_TRACE_PEKKO_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_PEKKO_HTTP_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_PEKKO_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED","DD_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED"], + "DD_TRACE_PLAY_ACTION_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ACTION_ENABLED","DD_INTEGRATION_PLAY_ACTION_ENABLED"], + "DD_TRACE_PLAY_ANALYTICS_SAMPLE_RATE": ["DD_PLAY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_PLAY_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ENABLED","DD_INTEGRATION_PLAY_ENABLED"], + "DD_TRACE_PLAY_WS_ANALYTICS_SAMPLE_RATE": ["DD_PLAY_WS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_PLAY_WS_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_WS_ENABLED","DD_INTEGRATION_PLAY_WS_ENABLED"], + "DD_TRACE_POWERMOCK_ENABLED": ["DD_TRACE_INTEGRATION_POWERMOCK_ENABLED","DD_INTEGRATION_POWERMOCK_ENABLED"], + "DD_TRACE_PROPAGATION_STYLE_B3_PADDING_ENABLED": ["DD_TRACE_INTEGRATION_PROPAGATION_STYLE_B3_PADDING_ENABLED","DD_INTEGRATION_PROPAGATION_STYLE_B3_PADDING_ENABLED"], + "DD_TRACE_PROTOBUF_ENABLED": ["DD_TRACE_INTEGRATION_PROTOBUF_ENABLED","DD_INTEGRATION_PROTOBUF_ENABLED"], + "DD_TRACE_QUARTZ_ANALYTICS_SAMPLE_RATE": ["DD_QUARTZ_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_QUARTZ_ENABLED": ["DD_TRACE_INTEGRATION_QUARTZ_ENABLED","DD_INTEGRATION_QUARTZ_ENABLED"], + "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE": ["DD_RABBITMQ_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_RABBITMQ_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_ENABLED","DD_INTEGRATION_RABBITMQ_ENABLED"], + "DD_TRACE_RABBITMQ_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED","DD_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED"], + "DD_TRACE_RABBIT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBIT_PROPAGATION_ENABLED","DD_INTEGRATION_RABBIT_PROPAGATION_ENABLED"], + "DD_TRACE_RATPACK_ANALYTICS_SAMPLE_RATE": ["DD_RATPACK_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_RATPACK_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_ENABLED","DD_INTEGRATION_RATPACK_ENABLED"], + "DD_TRACE_RATPACK_REQUEST_BODY_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED","DD_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED"], + "DD_TRACE_REACTIVE_STREAMS_1_ENABLED": ["DD_TRACE_INTEGRATION_REACTIVE_STREAMS_1_ENABLED","DD_INTEGRATION_REACTIVE_STREAMS_1_ENABLED"], + "DD_TRACE_REACTIVE_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_REACTIVE_STREAMS_ENABLED","DD_INTEGRATION_REACTIVE_STREAMS_ENABLED"], + "DD_TRACE_REACTOR_CORE_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_CORE_ENABLED","DD_INTEGRATION_REACTOR_CORE_ENABLED"], + "DD_TRACE_REACTOR_NETTY_1_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_NETTY_1_ENABLED","DD_INTEGRATION_REACTOR_NETTY_1_ENABLED"], + "DD_TRACE_REACTOR_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_REACTOR_NETTY_ENABLED","DD_INTEGRATION_REACTOR_NETTY_ENABLED"], + "DD_TRACE_REDISCALA_ANALYTICS_SAMPLE_RATE": ["DD_REDISCALA_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_REDISCALA_CONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_REDISCALA_CONNECTION_ENABLED","DD_INTEGRATION_REDISCALA_CONNECTION_ENABLED"], + "DD_TRACE_REDISCALA_ENABLED": ["DD_TRACE_INTEGRATION_REDISCALA_ENABLED","DD_INTEGRATION_REDISCALA_ENABLED"], + "DD_TRACE_REDISSON_ANALYTICS_SAMPLE_RATE": ["DD_REDISSON_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_REDISSON_ENABLED": ["DD_TRACE_INTEGRATION_REDISSON_ENABLED","DD_INTEGRATION_REDISSON_ENABLED"], + "DD_TRACE_REDIS_ANALYTICS_SAMPLE_RATE": ["DD_REDIS_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_REDIS_ENABLED": ["DD_TRACE_INTEGRATION_REDIS_ENABLED","DD_INTEGRATION_REDIS_ENABLED"], + "DD_TRACE_REJECTED_EXECUTION_HANDLER_ENABLED": ["DD_TRACE_INTEGRATION_REJECTED_EXECUTION_HANDLER_ENABLED","DD_INTEGRATION_REJECTED_EXECUTION_HANDLER_ENABLED"], + "DD_TRACE_RENAISSANCE_ENABLED": ["DD_TRACE_INTEGRATION_RENAISSANCE_ENABLED","DD_INTEGRATION_RENAISSANCE_ENABLED"], + "DD_TRACE_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_RESPONSE_ENABLED","DD_INTEGRATION_RESPONSE_ENABLED"], + "DD_TRACE_RESTEASY_ENABLED": ["DD_TRACE_INTEGRATION_RESTEASY_ENABLED","DD_INTEGRATION_RESTEASY_ENABLED"], + "DD_TRACE_RESTLET_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_RESTLET_HTTP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_RESTLET_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_RESTLET_HTTP_ENABLED","DD_INTEGRATION_RESTLET_HTTP_ENABLED"], + "DD_TRACE_RESTLET_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_RESTLET_HTTP_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_RESTLET_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_RESTLET_HTTP_SERVER_ENABLED","DD_INTEGRATION_RESTLET_HTTP_SERVER_ENABLED"], + "DD_TRACE_RMI_ANALYTICS_SAMPLE_RATE": ["DD_RMI_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_RMI_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_RMI_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED","DD_INTEGRATION_RMI_CLIENT_CONTEXT_PROPAGATOR_ENABLED"], + "DD_TRACE_RMI_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CLIENT_ENABLED","DD_INTEGRATION_RMI_CLIENT_ENABLED"], + "DD_TRACE_RMI_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_CONTEXT_PROPAGATOR_ENABLED","DD_INTEGRATION_RMI_CONTEXT_PROPAGATOR_ENABLED"], + "DD_TRACE_RMI_ENABLED": ["DD_TRACE_INTEGRATION_RMI_ENABLED","DD_INTEGRATION_RMI_ENABLED"], + "DD_TRACE_RMI_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_RMI_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED": ["DD_TRACE_INTEGRATION_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED","DD_INTEGRATION_RMI_SERVER_CONTEXT_PROPAGATOR_ENABLED"], + "DD_TRACE_RMI_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_RMI_SERVER_ENABLED","DD_INTEGRATION_RMI_SERVER_ENABLED"], + "DD_TRACE_RUNNABLE_ENABLED": ["DD_TRACE_INTEGRATION_RUNNABLE_ENABLED","DD_INTEGRATION_RUNNABLE_ENABLED"], + "DD_TRACE_RUNNABLE_FUTURE_ENABLED": ["DD_TRACE_INTEGRATION_RUNNABLE_FUTURE_ENABLED","DD_INTEGRATION_RUNNABLE_FUTURE_ENABLED"], + "DD_TRACE_RXJAVA_ENABLED": ["DD_TRACE_INTEGRATION_RXJAVA_ENABLED","DD_INTEGRATION_RXJAVA_ENABLED"], + "DD_TRACE_S3_ENABLED": ["DD_TRACE_INTEGRATION_S3_ENABLED","DD_INTEGRATION_S3_ENABLED"], + "DD_TRACE_SCALATEST_ENABLED": ["DD_TRACE_INTEGRATION_SCALATEST_ENABLED","DD_INTEGRATION_SCALATEST_ENABLED"], + "DD_TRACE_SCALA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_CONCURRENT_ENABLED","DD_INTEGRATION_SCALA_CONCURRENT_ENABLED"], + "DD_TRACE_SCALA_FUTURE_OBJECT_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_FUTURE_OBJECT_ENABLED","DD_INTEGRATION_SCALA_FUTURE_OBJECT_ENABLED"], + "DD_TRACE_SCALA_PROMISE_COMPLETE_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_PROMISE_COMPLETE_ENABLED","DD_INTEGRATION_SCALA_PROMISE_COMPLETE_ENABLED"], + "DD_TRACE_SCALA_PROMISE_COMPLETION_PRIORITY_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_PROMISE_COMPLETION_PRIORITY_ENABLED","DD_INTEGRATION_SCALA_PROMISE_COMPLETION_PRIORITY_ENABLED"], + "DD_TRACE_SCALA_PROMISE_RESOLVE_ENABLED": ["DD_TRACE_INTEGRATION_SCALA_PROMISE_RESOLVE_ENABLED","DD_INTEGRATION_SCALA_PROMISE_RESOLVE_ENABLED"], + "DD_TRACE_SELENIUM_ENABLED": ["DD_TRACE_INTEGRATION_SELENIUM_ENABLED","DD_INTEGRATION_SELENIUM_ENABLED"], + "DD_TRACE_SERVELET_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_SERVELET_RESPONSE_ENABLED","DD_INTEGRATION_SERVELET_RESPONSE_ENABLED"], + "DD_TRACE_SERVICETALK_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_SERVICETALK_CONCURRENT_ENABLED","DD_INTEGRATION_SERVICETALK_CONCURRENT_ENABLED"], + "DD_TRACE_SERVICETALK_ENABLED": ["DD_TRACE_INTEGRATION_SERVICETALK_ENABLED","DD_INTEGRATION_SERVICETALK_ENABLED"], + "DD_TRACE_SERVLET_2_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_2_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_2_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_2_ENABLED","DD_INTEGRATION_SERVLET_2_ENABLED"], + "DD_TRACE_SERVLET_3_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_3_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_3_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_3_ENABLED","DD_INTEGRATION_SERVLET_3_ENABLED"], + "DD_TRACE_SERVLET_5_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_5_ENABLED","DD_INTEGRATION_SERVLET_5_ENABLED"], + "DD_TRACE_SERVLET_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_COOKIE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_COOKIE_ENABLED","DD_INTEGRATION_SERVLET_COOKIE_ENABLED"], + "DD_TRACE_SERVLET_DISPATCHER_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_DISPATCHER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_DISPATCHER_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_DISPATCHER_ENABLED","DD_INTEGRATION_SERVLET_DISPATCHER_ENABLED"], + "DD_TRACE_SERVLET_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_ENABLED","DD_INTEGRATION_SERVLET_ENABLED"], + "DD_TRACE_SERVLET_FILTER_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_FILTER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_FILTER_ENABLED","DD_INTEGRATION_SERVLET_FILTER_ENABLED"], + "DD_TRACE_SERVLET_REQUEST_BODY_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_REQUEST_BODY_ENABLED","DD_INTEGRATION_SERVLET_REQUEST_BODY_ENABLED"], + "DD_TRACE_SERVLET_REQUEST_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_REQUEST_ENABLED","DD_INTEGRATION_SERVLET_REQUEST_ENABLED"], + "DD_TRACE_SERVLET_RESPONSE_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_RESPONSE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_RESPONSE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_RESPONSE_ENABLED","DD_INTEGRATION_SERVLET_RESPONSE_ENABLED"], + "DD_TRACE_SERVLET_SERVICE_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_SERVICE_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_SERVICE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_SERVICE_ENABLED","DD_INTEGRATION_SERVLET_SERVICE_ENABLED"], + "DD_TRACE_SERVLET_SESSION_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_SESSION_ENABLED","DD_INTEGRATION_SERVLET_SESSION_ENABLED"], + "DD_TRACE_SETUP_TEARDOWN_ENABLED": ["DD_TRACE_INTEGRATION_SETUP_TEARDOWN_ENABLED","DD_INTEGRATION_SETUP_TEARDOWN_ENABLED"], + "DD_TRACE_SFN_ENABLED": ["DD_TRACE_INTEGRATION_SFN_ENABLED","DD_INTEGRATION_SFN_ENABLED"], + "DD_TRACE_SHUTDOWN_ENABLED": ["DD_TRACE_INTEGRATION_SHUTDOWN_ENABLED","DD_INTEGRATION_SHUTDOWN_ENABLED"], + "DD_TRACE_SLICK_ENABLED": ["DD_TRACE_INTEGRATION_SLICK_ENABLED","DD_INTEGRATION_SLICK_ENABLED"], + "DD_TRACE_SNAKEYAML_ENABLED": ["DD_TRACE_INTEGRATION_SNAKEYAML_ENABLED","DD_INTEGRATION_SNAKEYAML_ENABLED"], + "DD_TRACE_SNS_ENABLED": ["DD_TRACE_INTEGRATION_SNS_ENABLED","DD_INTEGRATION_SNS_ENABLED"], + "DD_TRACE_SOCKET_ENABLED": ["DD_TRACE_INTEGRATION_SOCKET_ENABLED","DD_INTEGRATION_SOCKET_ENABLED"], + "DD_TRACE_SPARKJAVA_2_4_ENABLED": ["DD_TRACE_INTEGRATION_SPARKJAVA_2_4_ENABLED","DD_INTEGRATION_SPARKJAVA_2_4_ENABLED"], + "DD_TRACE_SPARKJAVA_ENABLED": ["DD_TRACE_INTEGRATION_SPARKJAVA_ENABLED","DD_INTEGRATION_SPARKJAVA_ENABLED"], + "DD_TRACE_SPARK_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_ENABLED","DD_INTEGRATION_SPARK_ENABLED"], + "DD_TRACE_SPARK_EXECUTOR_ANALYTICS_SAMPLE_RATE": ["DD_SPARK_EXECUTOR_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPARK_EXECUTOR_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_EXECUTOR_ENABLED","DD_INTEGRATION_SPARK_EXECUTOR_ENABLED"], + "DD_TRACE_SPARK_EXIT_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_EXIT_ENABLED","DD_INTEGRATION_SPARK_EXIT_ENABLED"], + "DD_TRACE_SPARK_OPENLINEAGE_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_OPENLINEAGE_ENABLED","DD_INTEGRATION_SPARK_OPENLINEAGE_ENABLED"], + "DD_TRACE_SPRAY_ANALYTICS_SAMPLE_RATE": ["DD_SPRAY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_ASYNC_ENABLED","DD_INTEGRATION_SPRING_ASYNC_ENABLED"], + "DD_TRACE_SPRING_BEANS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BEANS_ENABLED","DD_INTEGRATION_SPRING_BEANS_ENABLED"], + "DD_TRACE_SPRING_BOOT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_ENABLED","DD_INTEGRATION_SPRING_BOOT_ENABLED"], + "DD_TRACE_SPRING_BOOT_SPAN_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED","DD_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED"], + "DD_TRACE_SPRING_CLOUD_ZUUL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED","DD_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED"], + "DD_TRACE_SPRING_CORE_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CORE_ENABLED","DD_INTEGRATION_SPRING_CORE_ENABLED"], + "DD_TRACE_SPRING_DATA_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_DATA_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_DATA_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_DATA_ENABLED","DD_INTEGRATION_SPRING_DATA_ENABLED"], + "DD_TRACE_SPRING_JMS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_JMS_ENABLED","DD_INTEGRATION_SPRING_JMS_ENABLED"], + "DD_TRACE_SPRING_MESSAGING_4_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_4_ENABLED","DD_INTEGRATION_SPRING_MESSAGING_4_ENABLED"], + "DD_TRACE_SPRING_MESSAGING_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_MESSAGING_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_MESSAGING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_ENABLED","DD_INTEGRATION_SPRING_MESSAGING_ENABLED"], + "DD_TRACE_SPRING_PATH_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_PATH_FILTER_ENABLED","DD_INTEGRATION_SPRING_PATH_FILTER_ENABLED"], + "DD_TRACE_SPRING_RABBIT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_RABBIT_ENABLED","DD_INTEGRATION_SPRING_RABBIT_ENABLED"], + "DD_TRACE_SPRING_SCHEDULING_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_SCHEDULING_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_SCHEDULING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SCHEDULING_ENABLED","DD_INTEGRATION_SPRING_SCHEDULING_ENABLED"], + "DD_TRACE_SPRING_SECURITY_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SECURITY_ENABLED","DD_INTEGRATION_SPRING_SECURITY_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEBFLUX_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_WEBFLUX_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEBFLUX_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_WEBFLUX_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED","DD_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_ENABLED","DD_INTEGRATION_SPRING_WEBFLUX_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_FUNCTIONAL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED","DD_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED"], + "DD_TRACE_SPRING_WEB_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEB_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_WEB_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED","DD_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED"], + "DD_TRACE_SPRING_WEB_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_ENABLED","DD_INTEGRATION_SPRING_WEB_ENABLED"], + "DD_TRACE_SPRING_WS_2_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WS_2_ENABLED","DD_INTEGRATION_SPRING_WS_2_ENABLED"], + "DD_TRACE_SPRING_WS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WS_ENABLED","DD_INTEGRATION_SPRING_WS_ENABLED"], + "DD_TRACE_SPYMEMCACHED_ANALYTICS_SAMPLE_RATE": ["DD_SPYMEMCACHED_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPYMEMCACHED_ENABLED": ["DD_TRACE_INTEGRATION_SPYMEMCACHED_ENABLED","DD_INTEGRATION_SPYMEMCACHED_ENABLED"], + "DD_TRACE_SQS_ENABLED": ["DD_TRACE_INTEGRATION_SQS_ENABLED","DD_INTEGRATION_SQS_ENABLED"], + "DD_TRACE_SQS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_SQS_PROPAGATION_ENABLED","DD_INTEGRATION_SQS_PROPAGATION_ENABLED"], + "DD_TRACE_SSLSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_SSLSOCKET_ENABLED","DD_INTEGRATION_SSLSOCKET_ENABLED"], + "DD_TRACE_STATS_COMPUTATION_ENABLED": ["DD_TRACE_INTEGRATION_STATS_COMPUTATION_ENABLED","DD_INTEGRATION_STATS_COMPUTATION_ENABLED"], + "DD_TRACE_STRUCTURED_TASK_SCOPE_ENABLED": ["DD_TRACE_INTEGRATION_STRUCTURED_TASK_SCOPE_ENABLED","DD_INTEGRATION_STRUCTURED_TASK_SCOPE_ENABLED"], + "DD_TRACE_SUREFIRE_ENABLED": ["DD_TRACE_INTEGRATION_SUREFIRE_ENABLED","DD_INTEGRATION_SUREFIRE_ENABLED"], + "DD_TRACE_SYNAPSE3_ANALYTICS_SAMPLE_RATE": ["DD_SYNAPSE3_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SYNAPSE3_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_CLIENT_ENABLED","DD_INTEGRATION_SYNAPSE3_CLIENT_ENABLED"], + "DD_TRACE_SYNAPSE3_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_ENABLED","DD_INTEGRATION_SYNAPSE3_ENABLED"], + "DD_TRACE_SYNAPSE3_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_SYNAPSE3_SERVER_ENABLED","DD_INTEGRATION_SYNAPSE3_SERVER_ENABLED"], + "DD_TRACE_TASK_RUNNER_ENABLED": ["DD_TRACE_INTEGRATION_TASK_RUNNER_ENABLED","DD_INTEGRATION_TASK_RUNNER_ENABLED"], + "DD_TRACE_TASK_UNWRAPPING_ENABLED": ["DD_TRACE_INTEGRATION_TASK_UNWRAPPING_ENABLED","DD_INTEGRATION_TASK_UNWRAPPING_ENABLED"], + "DD_TRACE_TESTNG_6_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_6_ENABLED","DD_INTEGRATION_TESTNG_6_ENABLED"], + "DD_TRACE_TESTNG_7_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_7_ENABLED","DD_INTEGRATION_TESTNG_7_ENABLED"], + "DD_TRACE_TESTNG_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_ENABLED","DD_INTEGRATION_TESTNG_ENABLED"], + "DD_TRACE_TESTNG_ITR_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_ITR_ENABLED","DD_INTEGRATION_TESTNG_ITR_ENABLED"], + "DD_TRACE_TEST_ORDER_ENABLED": ["DD_TRACE_INTEGRATION_TEST_ORDER_ENABLED","DD_INTEGRATION_TEST_ORDER_ENABLED"], + "DD_TRACE_TEST_RETRY_ENABLED": ["DD_TRACE_INTEGRATION_TEST_RETRY_ENABLED","DD_INTEGRATION_TEST_RETRY_ENABLED"], + "DD_TRACE_THROWABLES_ENABLED": ["DD_TRACE_INTEGRATION_THROWABLES_ENABLED","DD_INTEGRATION_THROWABLES_ENABLED"], + "DD_TRACE_THYMELEAF_ENABLED": ["DD_TRACE_INTEGRATION_THYMELEAF_ENABLED","DD_INTEGRATION_THYMELEAF_ENABLED"], + "DD_TRACE_TIBCO_BW_ANALYTICS_SAMPLE_RATE": ["DD_TIBCO_BW_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_TIBCO_BW_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_BW_ENABLED","DD_INTEGRATION_TIBCO_BW_ENABLED"], + "DD_TRACE_TIBCO_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_ENABLED","DD_INTEGRATION_TIBCO_ENABLED"], + "DD_TRACE_TINYLOG_ENABLED": ["DD_TRACE_INTEGRATION_TINYLOG_ENABLED","DD_INTEGRATION_TINYLOG_ENABLED"], + "DD_TRACE_TOMCAT_ANALYTICS_SAMPLE_RATE": ["DD_TOMCAT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_TOMCAT_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED","DD_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED"], + "DD_TRACE_TOMCAT_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_ENABLED","DD_INTEGRATION_TOMCAT_ENABLED"], + "DD_TRACE_TOMCAT_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED","DD_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED"], + "DD_TRACE_TRACE_ANNOTATION_ANALYTICS_SAMPLE_RATE": ["DD_TRACE_ANNOTATION_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_TRACE_ANNOTATION_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ANNOTATION_ENABLED","DD_INTEGRATION_TRACE_ANNOTATION_ENABLED"], + "DD_TRACE_TRACE_CONFIG_ANALYTICS_SAMPLE_RATE": ["DD_TRACE_CONFIG_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_TRACE_CONFIG_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_CONFIG_ENABLED","DD_INTEGRATION_TRACE_CONFIG_ENABLED"], + "DD_TRACE_TRACE_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ENABLED","DD_INTEGRATION_TRACE_ENABLED"], + "DD_TRACE_TWILIO_SDK_ANALYTICS_SAMPLE_RATE": ["DD_TWILIO_SDK_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_TWILIO_SDK_ENABLED": ["DD_TRACE_INTEGRATION_TWILIO_SDK_ENABLED","DD_INTEGRATION_TWILIO_SDK_ENABLED"], + "DD_TRACE_UNDERTOW_2_0_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_0_ENABLED","DD_INTEGRATION_UNDERTOW_2_0_ENABLED"], + "DD_TRACE_UNDERTOW_2_2_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_2_ENABLED","DD_INTEGRATION_UNDERTOW_2_2_ENABLED"], + "DD_TRACE_UNDERTOW_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_ENABLED","DD_INTEGRATION_UNDERTOW_ENABLED"], + "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_UNDERTOW_HTTP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_UNDERTOW_HTTP_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED","DD_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED"], + "DD_TRACE_URLCONNECTION_ANALYTICS_SAMPLE_RATE": ["DD_URLCONNECTION_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_URLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_URLCONNECTION_ENABLED","DD_INTEGRATION_URLCONNECTION_ENABLED"], + "DD_TRACE_VALKEY_ANALYTICS_SAMPLE_RATE": ["DD_VALKEY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_VALKEY_ENABLED": ["DD_TRACE_INTEGRATION_VALKEY_ENABLED","DD_INTEGRATION_VALKEY_ENABLED"], + "DD_TRACE_VELOCITY_ENABLED": ["DD_TRACE_INTEGRATION_VELOCITY_ENABLED","DD_INTEGRATION_VELOCITY_ENABLED"], + "DD_TRACE_VERTX_3_4_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_4_ENABLED","DD_INTEGRATION_VERTX_3_4_ENABLED"], + "DD_TRACE_VERTX_3_5_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_5_ENABLED","DD_INTEGRATION_VERTX_3_5_ENABLED"], + "DD_TRACE_VERTX_3_9_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_3_9_ENABLED","DD_INTEGRATION_VERTX_3_9_ENABLED"], + "DD_TRACE_VERTX_4_0_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_4_0_ENABLED","DD_INTEGRATION_VERTX_4_0_ENABLED"], + "DD_TRACE_VERTX_5_0_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_5_0_ENABLED","DD_INTEGRATION_VERTX_5_0_ENABLED"], + "DD_TRACE_VERTX_ANALYTICS_SAMPLE_RATE": ["DD_VERTX_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_VERTX_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_ENABLED","DD_INTEGRATION_VERTX_ENABLED"], + "DD_TRACE_VERTX_REDIS_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_VERTX_REDIS_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_VERTX_REDIS_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED","DD_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED"], + "DD_TRACE_VERTX_ROUTE_HANDLER_ANALYTICS_SAMPLE_RATE": ["DD_VERTX_ROUTE_HANDLER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_VERTX_SQL_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_VERTX_SQL_CLIENT_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_VERTX_SQL_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_SQL_CLIENT_ENABLED","DD_INTEGRATION_VERTX_SQL_CLIENT_ENABLED"], + "DD_TRACE_WALLCLOCK_ENABLED": ["DD_TRACE_INTEGRATION_WALLCLOCK_ENABLED","DD_INTEGRATION_WALLCLOCK_ENABLED"], + "DD_TRACE_WEAVER_ENABLED": ["DD_TRACE_INTEGRATION_WEAVER_ENABLED","DD_INTEGRATION_WEAVER_ENABLED"], + "DD_TRACE_WEBSOCKET_ANALYTICS_SAMPLE_RATE": ["DD_WEBSOCKET_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_WEBSOCKET_ENABLED","DD_INTEGRATION_WEBSOCKET_ENABLED"], + "DD_TRACE_WEBSPHERE_JMX_ENABLED": ["DD_TRACE_INTEGRATION_WEBSPHERE_JMX_ENABLED","DD_INTEGRATION_WEBSPHERE_JMX_ENABLED"], + "DD_TRACE_WILDFLY_ENABLED": ["DD_TRACE_INTEGRATION_WILDFLY_ENABLED","DD_INTEGRATION_WILDFLY_ENABLED"], + "DD_TRACE_ZIO_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED","DD_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED"] }, "deprecations": { } From dc5d83b41264870ef6eeb1496c974e272c75b047 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 30 Jul 2025 12:27:41 -0400 Subject: [PATCH 12/47] updating jmxfetch configs --- .../resources/supported-configurations.json | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 774a379a219..18011add640 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -816,7 +816,24 @@ "DD_TRACE_JMS_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_JMS_PROPAGATION_ENABLED": ["A"], "DD_TRACE_JMS_TIME_IN_QUEUE_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_ACTIVEMQ_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_CASSANDRA_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_CONFLUENT_PLATFORM_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_HAZELCAST_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_HIVEMQ_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_HIVE_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_HUDL_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_IGNITE_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_JBOSS_WILDFLY_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_KAFKA_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_KUBE_APISERVER_METRICS_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_PRESTO_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_SOLR_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_SONARQUBE_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_TOMCAT_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_WEBLOGIC_ENABLED": ["A"], "DD_TRACE_JMXFETCH_WEBSPHERE_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_{CHECK_NAME}_ENABLED": ["A"], "DD_TRACE_JMX_TAGS": ["A"], "DD_TRACE_JNI_ENABLED": ["A"], "DD_TRACE_JOSE_JWT_ENABLED": ["A"], From fe2eeb9186e590a78cbcd1d9bfd707b42d8851b7 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 31 Jul 2025 15:09:49 -0400 Subject: [PATCH 13/47] fixing config helper --- .../src/generator/resources/supported-configurations.json | 5 +++++ .../src/main/java/datadog/environment/ConfigHelper.java | 5 ++--- .../main/java/datadog/environment/EnvironmentVariables.java | 3 +++ gradle/jacoco.gradle | 2 +- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 18011add640..7f785638700 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -1140,6 +1140,8 @@ "DD_TRACE_SPLIT_BY_TAGS": ["A"], "DD_TRACE_SPRAY_ANALYTICS_ENABLED": ["A"], "DD_TRACE_SPRAY_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_SPRAY_HTTP_ENABLED": ["A"], + "DD_TRACE_SPRAY_HTTP_SERVER_ENABLED": ["A"], "DD_TRACE_SPRING_ASYNC_ENABLED": ["A"], "DD_TRACE_SPRING_BEANS_ENABLED": ["A"], "DD_TRACE_SPRING_BOOT_ENABLED": ["A"], @@ -1639,6 +1641,7 @@ "DD_TRACE_PEKKO_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_ENABLED","DD_INTEGRATION_PEKKO_HTTP_ENABLED"], "DD_TRACE_PEKKO_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_PEKKO_HTTP_SERVER_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_PEKKO_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED","DD_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED"], + "DD_TRACE_PEKKO_SCHEDULER_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_SCHEDULER_ENABLED","DD_INTEGRATION_PEKKO_SCHEDULER_ENABLED"], "DD_TRACE_PLAY_ACTION_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ACTION_ENABLED","DD_INTEGRATION_PLAY_ACTION_ENABLED"], "DD_TRACE_PLAY_ANALYTICS_SAMPLE_RATE": ["DD_PLAY_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_PLAY_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ENABLED","DD_INTEGRATION_PLAY_ENABLED"], @@ -1733,6 +1736,8 @@ "DD_TRACE_SPARK_EXIT_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_EXIT_ENABLED","DD_INTEGRATION_SPARK_EXIT_ENABLED"], "DD_TRACE_SPARK_OPENLINEAGE_ENABLED": ["DD_TRACE_INTEGRATION_SPARK_OPENLINEAGE_ENABLED","DD_INTEGRATION_SPARK_OPENLINEAGE_ENABLED"], "DD_TRACE_SPRAY_ANALYTICS_SAMPLE_RATE": ["DD_SPRAY_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRAY_HTTP_ENABLED": ["DD_TRACE_INTEGRATION_SPRAY_HTTP_ENABLED","DD_INTEGRATION_SPRAY_HTTP_ENABLED"], + "DD_TRACE_SPRAY_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_SPRAY_HTTP_SERVER_ENABLED","DD_INTEGRATION_SPRAY_HTTP_SERVER_ENABLED"], "DD_TRACE_SPRING_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_ASYNC_ENABLED","DD_INTEGRATION_SPRING_ASYNC_ENABLED"], "DD_TRACE_SPRING_BEANS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BEANS_ENABLED","DD_INTEGRATION_SPRING_BEANS_ENABLED"], "DD_TRACE_SPRING_BOOT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_ENABLED","DD_INTEGRATION_SPRING_BOOT_ENABLED"], diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index 33120cb4213..243363ae5f6 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -57,9 +57,8 @@ public static Map getEnvironmentVariables() { } public static String getEnvironmentVariable(String name) { - if ((name.startsWith("DD_") - || name.startsWith("OTEL_") - || GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(name)) + if ((name.startsWith("DD_") || name.startsWith("OTEL_")) + && !GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(name) && !GeneratedSupportedConfigurations.SUPPORTED.contains(name) && configInversionStrict) { System.err.println( diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index b99900e0d85..071ebc52824 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -1,5 +1,7 @@ package datadog.environment; +import de.thetaphi.forbiddenapis.SuppressForbidden; +import javax.annotation.Nonnull; import javax.annotation.Nullable; /** @@ -31,6 +33,7 @@ private EnvironmentVariables() {} * @return The environment variable value, {@code defaultValue} if missing, can't be retrieved or * the environment variable name is {@code null}. */ + @SuppressForbidden public static String getOrDefault(String name, String defaultValue) { if (name == null) { return defaultValue; diff --git a/gradle/jacoco.gradle b/gradle/jacoco.gradle index b2c3d53ab4b..03d1c1f83d5 100644 --- a/gradle/jacoco.gradle +++ b/gradle/jacoco.gradle @@ -37,7 +37,7 @@ if (!project.ext.hasProperty('excludedClassesBranchCoverage')) { } if (!project.ext.hasProperty('excludedClassesInstructionCoverage')) { - project.ext.excludedClassesInstructionCoverage = [] + project.ext.excludedClassesInstructionCoverage = ["datadog.environment.GeneratedSupportedConfigurations"] // Generated static file } // defaults can be overridden per project: From 229c38d53ec7e6f864770dc52e460624d22d4497 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Fri, 1 Aug 2025 17:54:41 -0400 Subject: [PATCH 14/47] adding unit tests for ConfigHelper --- .../resources/supported-configurations.json | 12 ++ .../datadog/environment/ConfigHelper.java | 39 ++-- .../SupportedConfigurationSource.java | 32 +++ .../datadog/environment/ConfigHelperTest.java | 204 ++++++++++++++++++ .../ParseSupportedConfigurationsTest.java | 18 -- .../TestSupportedConfigurationSource.java | 44 ++++ gradle/jacoco.gradle | 4 +- 7 files changed, 322 insertions(+), 31 deletions(-) create mode 100644 components/environment/src/main/java/datadog/environment/SupportedConfigurationSource.java create mode 100644 components/environment/src/test/java/datadog/environment/ConfigHelperTest.java delete mode 100644 components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java create mode 100644 components/environment/src/test/java/datadog/environment/TestSupportedConfigurationSource.java diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 7f785638700..eb1eb0ccde8 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -649,6 +649,12 @@ "DD_TRACE_GOOGLE_PUBSUB_LEGACY_TRACING_ENABLED": ["A"], "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["A"], "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["A"], + "DD_TRACE_GRADLE_ENABLED": ["A"], + "DD_TRACE_GRADLE_BUILD_LISTENER_ENABLED": ["A"], + "DD_TRACE_GRADLE_BUILD_SCOPE_SERVICES_ENABLED": ["A"], + "DD_TRACE_GRADLE_DAEMON_LOGGING_ENABLED": ["A"], + "DD_TRACE_GRADLE_DAEMON_JVM_OPTIONS_ENABLED": ["A"], + "DD_TRACE_GRADLE_PLUGIN_INJECTOR_ENABLED": ["A"], "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_ENABLED": ["A"], "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE": ["A"], "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["A"], @@ -1423,6 +1429,12 @@ "DD_TRACE_GOOGLE_PUBSUB_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_ENABLED"], "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED"], "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED"], + "DD_TRACE_GRADLE_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_ENABLED","DD_INTEGRATION_GRADLE_ENABLED"], + "DD_TRACE_GRADLE_BUILD_LISTENER_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_BUILD_LISTENER_ENABLED","DD_INTEGRATION_GRADLE_BUILD_LISTENER_ENABLED"], + "DD_TRACE_GRADLE_BUILD_SCOPE_SERVICES_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_BUILD_SCOPE_SERVICES_ENABLED","DD_INTEGRATION_GRADLE_BUILD_SCOPE_SERVICES_ENABLED"], + "DD_TRACE_GRADLE_DAEMON_LOGGING_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_DAEMON_LOGGING_ENABLED","DD_INTEGRATION_GRADLE_DAEMON_LOGGING_ENABLED"], + "DD_TRACE_GRADLE_DAEMON_JVM_OPTIONS_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_DAEMON_JVM_OPTIONS_ENABLED","DD_INTEGRATION_GRADLE_DAEMON_JVM_OPTIONS_ENABLED"], + "DD_TRACE_GRADLE_PLUGIN_INJECTOR_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_PLUGIN_INJECTOR_ENABLED","DD_INTEGRATION_GRADLE_PLUGIN_INJECTOR_ENABLED"], "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE": ["DD_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["DD_TRACE_INTEGRATION_GRAPHQL_JAVA_ENABLED","DD_INTEGRATION_GRAPHQL_JAVA_ENABLED"], "DD_TRACE_GRIZZLY_ANALYTICS_SAMPLE_RATE": ["DD_GRIZZLY_ANALYTICS_SAMPLE_RATE"], diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index 243363ae5f6..b85c543f1ab 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -9,6 +9,9 @@ public class ConfigHelper { private static boolean configInversionStrict; + // Default to production source + private static SupportedConfigurationSource configSource = new SupportedConfigurationSource(); + public static void setConfigInversionStrict(boolean configInversionStrict) { ConfigHelper.configInversionStrict = configInversionStrict; } @@ -17,6 +20,17 @@ public static boolean isConfigInversionStrict() { return configInversionStrict; } + // Used only for testing purposes + static void setConfigurationSource(SupportedConfigurationSource testSource) { + configSource = testSource; + } + + /** Reset all configuration data to the generated defaults. Useful for cleaning up after tests. */ + static void resetToDefaults() { + configSource = new SupportedConfigurationSource(); + configInversionStrict = false; + } + public static Map getEnvironmentVariables() { Map env = System.getenv(); Map configs = new LinkedHashMap<>(); @@ -25,19 +39,18 @@ public static Map getEnvironmentVariables() { String value = entry.getValue(); if (key.startsWith("DD_") || key.startsWith("OTEL_") - || GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(key)) { - if (GeneratedSupportedConfigurations.SUPPORTED.contains(key)) { + || configSource.getAliasMapping().containsKey(key)) { + if (configSource.getSupportedConfigurations().contains(key)) { configs.put(key, value); // If this environment variable is the alias of another, and we haven't processed the // original environment variable yet, handle it here. - } else if (GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(key) - && !configs.containsKey(GeneratedSupportedConfigurations.ALIAS_MAPPING.get(key))) { + } else if (configSource.getAliasMapping().containsKey(key) + && !configs.containsKey(configSource.getAliasMapping().get(key))) { List aliasList = - GeneratedSupportedConfigurations.ALIASES.get( - GeneratedSupportedConfigurations.ALIAS_MAPPING.get(key)); + configSource.getAliases().get(configSource.getAliasMapping().get(key)); for (String alias : aliasList) { if (env.containsKey(alias)) { - configs.put(GeneratedSupportedConfigurations.ALIAS_MAPPING.get(key), env.get(alias)); + configs.put(configSource.getAliasMapping().get(key), env.get(alias)); break; } } @@ -58,16 +71,18 @@ public static Map getEnvironmentVariables() { public static String getEnvironmentVariable(String name) { if ((name.startsWith("DD_") || name.startsWith("OTEL_")) - && !GeneratedSupportedConfigurations.ALIAS_MAPPING.containsKey(name) - && !GeneratedSupportedConfigurations.SUPPORTED.contains(name) - && configInversionStrict) { + && !configSource.getAliasMapping().containsKey(name) + && !configSource.getSupportedConfigurations().contains(name)) { System.err.println( "Warning: Missing environment variable " + name + " from supported-configurations.json."); + if (configInversionStrict) { + return null; // If strict mode is enabled, return null for unsupported configs + } } String config = EnvironmentVariables.get(name); - if (config == null && GeneratedSupportedConfigurations.ALIASES.containsKey(name)) { - for (String alias : GeneratedSupportedConfigurations.ALIASES.get(name)) { + if (config == null && configSource.getAliases().containsKey(name)) { + for (String alias : configSource.getAliases().get(name)) { String aliasValue = EnvironmentVariables.get(alias); if (aliasValue != null) { return aliasValue; diff --git a/components/environment/src/main/java/datadog/environment/SupportedConfigurationSource.java b/components/environment/src/main/java/datadog/environment/SupportedConfigurationSource.java new file mode 100644 index 00000000000..17b4f0e3ec8 --- /dev/null +++ b/components/environment/src/main/java/datadog/environment/SupportedConfigurationSource.java @@ -0,0 +1,32 @@ +package datadog.environment; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * This class uses {@link #GeneratedSupportedConfigurations} for handling supported configurations + * for Config Inversion Can be extended for testing with custom configuration data. + */ +class SupportedConfigurationSource { + + /** @return Set of supported configuration keys */ + public Set getSupportedConfigurations() { + return GeneratedSupportedConfigurations.SUPPORTED; + } + + /** @return Map of configuration keys to their aliases */ + public Map> getAliases() { + return GeneratedSupportedConfigurations.ALIASES; + } + + /** @return Map of alias keys to their primary configuration keys */ + public Map getAliasMapping() { + return GeneratedSupportedConfigurations.ALIAS_MAPPING; + } + + /** @return Map of deprecated configurations */ + public Map getDeprecatedConfigurations() { + return GeneratedSupportedConfigurations.DEPRECATED; + } +} diff --git a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java new file mode 100644 index 00000000000..9e41b46e3f1 --- /dev/null +++ b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java @@ -0,0 +1,204 @@ +package datadog.environment; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNull; + +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + +public class ConfigHelperTest { + // Test environment variables + private static final String TEST_DD_VAR = "DD_TEST_CONFIG"; + private static final String TEST_DD_VAR_VAL = "test_dd_var"; + private static final String TEST_OTEL_VAR = "OTEL_TEST_CONFIG"; + private static final String TEST_OTEL_VAR_VAL = "test_otel_var"; + private static final String TEST_REGULAR_VAR = "REGULAR_TEST_CONFIG"; + private static final String TEST_REGULAR_VAR_VAL = "test_regular_var"; + private static final String UNSUPPORTED_DD_VAR = "DD_UNSUPPORTED_CONFIG"; + + private static final String ALIAS_DD_VAR = "DD_TEST_CONFIG_ALIAS"; + private static final String ALIAS_DD_VAL = "test_alias_val"; + private static final String NON_DD_ALIAS_VAR = "TEST_CONFIG_ALIAS"; + private static final String NON_DD_ALIAS_VAL = "test_alias_val_non_dd"; + + private static boolean strictness; + private static TestSupportedConfigurationSource testSource; + + @BeforeAll + static void setUp() { + // Set up test configurations using SupportedConfigurationSource + Set testSupported = + new HashSet<>(Arrays.asList(TEST_DD_VAR, TEST_OTEL_VAR, TEST_REGULAR_VAR)); + + Map> testAliases = new HashMap<>(); + testAliases.put(TEST_DD_VAR, Arrays.asList(ALIAS_DD_VAR, NON_DD_ALIAS_VAR)); + + Map testAliasMapping = new HashMap<>(); + testAliasMapping.put(ALIAS_DD_VAR, TEST_DD_VAR); + testAliasMapping.put(NON_DD_ALIAS_VAR, TEST_DD_VAR); + + // Create and set test configuration source + testSource = + new TestSupportedConfigurationSource( + testSupported, testAliases, testAliasMapping, new HashMap<>()); + ConfigHelper.setConfigurationSource(testSource); + strictness = ConfigHelper.isConfigInversionStrict(); + ConfigHelper.setConfigInversionStrict(true); + } + + @AfterAll + static void tearDown() { + ConfigHelper.resetToDefaults(); + ConfigHelper.setConfigInversionStrict(strictness); + } + + @Test + void testBasicConfigHelper() { + setEnvVar(TEST_DD_VAR, TEST_DD_VAR_VAL); + setEnvVar(TEST_OTEL_VAR, TEST_OTEL_VAR_VAL); + setEnvVar(TEST_REGULAR_VAR, TEST_REGULAR_VAR_VAL); + + assertEquals(TEST_DD_VAR_VAL, ConfigHelper.getEnvironmentVariable(TEST_DD_VAR)); + assertEquals(TEST_OTEL_VAR_VAL, ConfigHelper.getEnvironmentVariable(TEST_OTEL_VAR)); + assertEquals(TEST_REGULAR_VAR_VAL, ConfigHelper.getEnvironmentVariable(TEST_REGULAR_VAR)); + + Map result = ConfigHelper.getEnvironmentVariables(); + assertEquals(TEST_DD_VAR_VAL, result.get(TEST_DD_VAR)); + assertEquals(TEST_OTEL_VAR_VAL, result.get(TEST_OTEL_VAR)); + assertEquals(TEST_REGULAR_VAR_VAL, result.get(TEST_REGULAR_VAR)); + + // Cleanup + setEnvVar(TEST_DD_VAR, null); + setEnvVar(TEST_OTEL_VAR, null); + setEnvVar(TEST_REGULAR_VAR, null); + } + + @Test + void testAliasSupport() { + setEnvVar(ALIAS_DD_VAR, ALIAS_DD_VAL); + + assertEquals(ALIAS_DD_VAL, ConfigHelper.getEnvironmentVariable(TEST_DD_VAR)); + Map result = ConfigHelper.getEnvironmentVariables(); + assertEquals(ALIAS_DD_VAL, result.get(TEST_DD_VAR)); + assertFalse(result.containsKey(ALIAS_DD_VAR)); + + // Cleanup + setEnvVar(ALIAS_DD_VAR, null); + } + + @Test + void testMainConfigPrecedence() { + // When both main variable and alias are set, main should take precedence + setEnvVar(TEST_DD_VAR, TEST_DD_VAR_VAL); + setEnvVar(ALIAS_DD_VAR, ALIAS_DD_VAL); + + assertEquals(TEST_DD_VAR_VAL, ConfigHelper.getEnvironmentVariable(TEST_DD_VAR)); + Map result = ConfigHelper.getEnvironmentVariables(); + assertEquals(TEST_DD_VAR_VAL, result.get(TEST_DD_VAR)); + assertFalse(result.containsKey(ALIAS_DD_VAR)); + + // Cleanup + setEnvVar(TEST_DD_VAR, null); + setEnvVar(ALIAS_DD_VAR, null); + } + + @Test + void testUnsupportedDDEnvironmentVariable() { + setEnvVar(UNSUPPORTED_DD_VAR, ""); + + assertNull(ConfigHelper.getEnvironmentVariable(UNSUPPORTED_DD_VAR)); + Map result = ConfigHelper.getEnvironmentVariables(); + assertFalse(result.containsKey(UNSUPPORTED_DD_VAR)); + + // Cleanup + setEnvVar(UNSUPPORTED_DD_VAR, null); + } + + @Test + void testNonDDAliases() { + setEnvVar(NON_DD_ALIAS_VAR, NON_DD_ALIAS_VAL); + + assertEquals(NON_DD_ALIAS_VAL, ConfigHelper.getEnvironmentVariable(TEST_DD_VAR)); + Map result = ConfigHelper.getEnvironmentVariables(); + assertEquals(NON_DD_ALIAS_VAL, result.get(TEST_DD_VAR)); + assertFalse(result.containsKey(NON_DD_ALIAS_VAR)); + + // Cleanup + setEnvVar(NON_DD_ALIAS_VAR, null); + } + + @Test + void testAliasesWithoutPresentAliases() { + Map result = ConfigHelper.getEnvironmentVariables(); + assertFalse(result.containsKey(ALIAS_DD_VAR)); + } + + @Test + void testUnsupportedButNotStrict() { + ConfigHelper.setConfigInversionStrict(false); + setEnvVar(UNSUPPORTED_DD_VAR, "loose"); + + // Should fall through and return the env var even though it's unsupported + assertEquals("loose", ConfigHelper.getEnvironmentVariable(UNSUPPORTED_DD_VAR)); + + // Cleanup + ConfigHelper.setConfigInversionStrict(true); + setEnvVar(UNSUPPORTED_DD_VAR, null); + } + + @Test + void testAliasWithEmptyList() { + Map> aliasMap = new HashMap<>(); + aliasMap.put("EMPTY_ALIAS_CONFIG", new ArrayList<>()); + + ConfigHelper.setConfigurationSource( + new TestSupportedConfigurationSource( + new HashSet<>(), aliasMap, new HashMap<>(), new HashMap<>())); + + assertNull(ConfigHelper.getEnvironmentVariable("EMPTY_ALIAS_CONFIG")); + + // Cleanup + ConfigHelper.setConfigurationSource(testSource); + } + + @Test + void testAliasSkippedWhenBaseAlreadyPresent() { + setEnvVar(TEST_DD_VAR, TEST_DD_VAR_VAL); + setEnvVar(NON_DD_ALIAS_VAR, NON_DD_ALIAS_VAL); + + Map result = ConfigHelper.getEnvironmentVariables(); + assertEquals(TEST_DD_VAR_VAL, result.get(TEST_DD_VAR)); + assertFalse(result.containsKey(NON_DD_ALIAS_VAR)); + + // Cleanup + setEnvVar(TEST_DD_VAR, null); + setEnvVar(NON_DD_ALIAS_VAR, null); + } + + // Copied from utils.TestHelper + @SuppressWarnings("unchecked") + private static void setEnvVar(String envName, String envValue) { + try { + Class classOfMap = System.getenv().getClass(); + Field field = classOfMap.getDeclaredField("m"); + field.setAccessible(true); + if (envValue == null) { + ((Map) field.get(System.getenv())).remove(envName); + } else { + ((Map) field.get(System.getenv())).put(envName, envValue); + } + } catch (Exception ex) { + ex.printStackTrace(); + } + } +} diff --git a/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java b/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java deleted file mode 100644 index 334de702a3d..00000000000 --- a/components/environment/src/test/java/datadog/environment/ParseSupportedConfigurationsTest.java +++ /dev/null @@ -1,18 +0,0 @@ -// import static org.junit.jupiter.api.Assertions.assertEquals; -// import static org.junit.jupiter.api.Assertions.assertTrue; -// -// import org.junit.jupiter.api.Test; -// -// class ParseSupportedConfigurationsTest { -// @Test -// void testParsingRealJsonFile() { -// -// ParseSupportedConfigurations.loadSupportedConfigurations("test-supported-configurations.json"); -// -// assertTrue(ParseSupportedConfigurations.supportedConfigurations.contains("DD_AGENT_HOST")); -// assertEquals( -// "DD_AGENT_HOST", -// ParseSupportedConfigurations.aliasMapping.get("DD_TRACE_AGENT_HOSTNAME")); -// assertEquals("NEW_KEY", ParseSupportedConfigurations.deprecatedConfigurations.get("OLD_KEY")); -// } -// } diff --git a/components/environment/src/test/java/datadog/environment/TestSupportedConfigurationSource.java b/components/environment/src/test/java/datadog/environment/TestSupportedConfigurationSource.java new file mode 100644 index 00000000000..31e11ce020a --- /dev/null +++ b/components/environment/src/test/java/datadog/environment/TestSupportedConfigurationSource.java @@ -0,0 +1,44 @@ +package datadog.environment; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** Test implementation of SupportedConfigurationSource that uses custom configuration data */ +class TestSupportedConfigurationSource extends SupportedConfigurationSource { + private final Set supported; + private final Map> aliases; + private final Map aliasMapping; + private final Map deprecated; + + public TestSupportedConfigurationSource( + Set supported, + Map> aliases, + Map aliasMapping, + Map deprecated) { + this.supported = supported; + this.aliases = aliases; + this.aliasMapping = aliasMapping; + this.deprecated = deprecated; + } + + @Override + public Set getSupportedConfigurations() { + return supported; + } + + @Override + public Map> getAliases() { + return aliases; + } + + @Override + public Map getAliasMapping() { + return aliasMapping; + } + + @Override + public Map getDeprecatedConfigurations() { + return deprecated; + } +} diff --git a/gradle/jacoco.gradle b/gradle/jacoco.gradle index 03d1c1f83d5..fcc2abec27b 100644 --- a/gradle/jacoco.gradle +++ b/gradle/jacoco.gradle @@ -37,7 +37,9 @@ if (!project.ext.hasProperty('excludedClassesBranchCoverage')) { } if (!project.ext.hasProperty('excludedClassesInstructionCoverage')) { - project.ext.excludedClassesInstructionCoverage = ["datadog.environment.GeneratedSupportedConfigurations"] // Generated static file + project.ext.excludedClassesInstructionCoverage = [ + "datadog.environment.GeneratedSupportedConfigurations", + "datadog.environment.SupportedConfigurationSource"] // Generated static file } // defaults can be overridden per project: From 77ddecd52f77ff0fa8452ddb1eacb9da784ad74d Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 5 Aug 2025 09:48:07 -0400 Subject: [PATCH 15/47] fixing tests pt 1 --- components/environment/build.gradle.kts | 1 + .../resources/supported-configurations.json | 1 + .../datadog/environment/ConfigHelper.java | 20 ++++++---- .../datadog/environment/ConfigHelperTest.java | 11 +++--- .../trace/api/ConfigInversionStrictStyle.java | 24 ++++++++++++ .../main/java/datadog/trace/api/Config.java | 6 +-- .../config/provider/ConfigProvider.java | 16 ++++++-- .../datadog/trace/api/ConfigTest.groovy | 37 +++++++++++++++++++ .../trace/api/InstrumenterConfigTest.groovy | 12 ++++++ .../OtelEnvMetricCollectorTest.groovy | 11 ++++++ 10 files changed, 121 insertions(+), 18 deletions(-) create mode 100644 dd-trace-api/src/main/java/datadog/trace/api/ConfigInversionStrictStyle.java diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index 80199d18672..82cb40f8cea 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -17,6 +17,7 @@ sourceSets { dependencies { "generatorImplementation"("com.fasterxml.jackson.core:jackson-databind:2.15.2") "generatorImplementation"("org.slf4j:slf4j-api:1.7.36") + implementation(project(":dd-trace-api")) } apply(from = "$rootDir/gradle/java.gradle") diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index eb1eb0ccde8..b7037dc03e2 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -105,6 +105,7 @@ "DD_CIVISIBILITY_TRACE_SANITATION_ENABLED": ["A"], "DD_CODE_ORIGIN_FOR_SPANS_ENABLED": ["A"], "DD_CODE_ORIGIN_MAX_USER_FRAMES": ["A"], + "DD_CONFIG_INVERSION_STRICT": ["A"], "DD_CRASHTRACKING_AGENTLESS": ["A"], "DD_CRASHTRACKING_PROXY_HOST": ["A"], "DD_CRASHTRACKING_PROXY_PASSWORD": ["A"], diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index b85c543f1ab..2d49910c516 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -1,5 +1,6 @@ package datadog.environment; +import datadog.trace.api.ConfigInversionStrictStyle; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.util.LinkedHashMap; import java.util.List; @@ -7,16 +8,16 @@ @SuppressForbidden public class ConfigHelper { - private static boolean configInversionStrict; + private static ConfigInversionStrictStyle configInversionStrict; // Default to production source private static SupportedConfigurationSource configSource = new SupportedConfigurationSource(); - public static void setConfigInversionStrict(boolean configInversionStrict) { + public static void setConfigInversionStrict(ConfigInversionStrictStyle configInversionStrict) { ConfigHelper.configInversionStrict = configInversionStrict; } - public static boolean isConfigInversionStrict() { + public static ConfigInversionStrictStyle configInversionStrictFlag() { return configInversionStrict; } @@ -28,7 +29,7 @@ static void setConfigurationSource(SupportedConfigurationSource testSource) { /** Reset all configuration data to the generated defaults. Useful for cleaning up after tests. */ static void resetToDefaults() { configSource = new SupportedConfigurationSource(); - configInversionStrict = false; + configInversionStrict = ConfigInversionStrictStyle.WARNING; } public static Map getEnvironmentVariables() { @@ -73,9 +74,14 @@ public static String getEnvironmentVariable(String name) { if ((name.startsWith("DD_") || name.startsWith("OTEL_")) && !configSource.getAliasMapping().containsKey(name) && !configSource.getSupportedConfigurations().contains(name)) { - System.err.println( - "Warning: Missing environment variable " + name + " from supported-configurations.json."); - if (configInversionStrict) { + if (configInversionStrict != ConfigInversionStrictStyle.TEST) { + System.err.println( + "Warning: Missing environment variable " + + name + + " from supported-configurations.json."); + } + + if (configInversionStrict == ConfigInversionStrictStyle.STRICT) { return null; // If strict mode is enabled, return null for unsupported configs } } diff --git a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java index 9e41b46e3f1..e9b634c551a 100644 --- a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java +++ b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java @@ -4,6 +4,7 @@ import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNull; +import datadog.trace.api.ConfigInversionStrictStyle; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Arrays; @@ -31,7 +32,7 @@ public class ConfigHelperTest { private static final String NON_DD_ALIAS_VAR = "TEST_CONFIG_ALIAS"; private static final String NON_DD_ALIAS_VAL = "test_alias_val_non_dd"; - private static boolean strictness; + private static ConfigInversionStrictStyle strictness; private static TestSupportedConfigurationSource testSource; @BeforeAll @@ -52,8 +53,8 @@ static void setUp() { new TestSupportedConfigurationSource( testSupported, testAliases, testAliasMapping, new HashMap<>()); ConfigHelper.setConfigurationSource(testSource); - strictness = ConfigHelper.isConfigInversionStrict(); - ConfigHelper.setConfigInversionStrict(true); + strictness = ConfigHelper.configInversionStrictFlag(); + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.STRICT); } @AfterAll @@ -145,14 +146,14 @@ void testAliasesWithoutPresentAliases() { @Test void testUnsupportedButNotStrict() { - ConfigHelper.setConfigInversionStrict(false); + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.WARNING); setEnvVar(UNSUPPORTED_DD_VAR, "loose"); // Should fall through and return the env var even though it's unsupported assertEquals("loose", ConfigHelper.getEnvironmentVariable(UNSUPPORTED_DD_VAR)); // Cleanup - ConfigHelper.setConfigInversionStrict(true); + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.STRICT); setEnvVar(UNSUPPORTED_DD_VAR, null); } diff --git a/dd-trace-api/src/main/java/datadog/trace/api/ConfigInversionStrictStyle.java b/dd-trace-api/src/main/java/datadog/trace/api/ConfigInversionStrictStyle.java new file mode 100644 index 00000000000..243f5fbbbdf --- /dev/null +++ b/dd-trace-api/src/main/java/datadog/trace/api/ConfigInversionStrictStyle.java @@ -0,0 +1,24 @@ +package datadog.trace.api; + +import java.util.Locale; + +/** Trace propagation styles for injecting and extracting trace propagation headers. */ +public enum ConfigInversionStrictStyle { + STRICT, + WARNING, + TEST; + + private String displayName; + + ConfigInversionStrictStyle() { + this.displayName = name().toLowerCase(Locale.ROOT); + } + + @Override + public String toString() { + if (displayName == null) { + displayName = name().toLowerCase(Locale.ROOT); + } + return displayName; + } +} diff --git a/internal-api/src/main/java/datadog/trace/api/Config.java b/internal-api/src/main/java/datadog/trace/api/Config.java index adec06a6a47..eaf975a8c29 100644 --- a/internal-api/src/main/java/datadog/trace/api/Config.java +++ b/internal-api/src/main/java/datadog/trace/api/Config.java @@ -1204,7 +1204,7 @@ public static String getHostName() { private final boolean telemetryDebugRequestsEnabled; - private final boolean configInversionStrict; + private final ConfigInversionStrictStyle configInversionStrict; private final boolean agentlessLogSubmissionEnabled; private final int agentlessLogSubmissionQueueSize; @@ -2011,7 +2011,7 @@ PROFILING_DATADOG_PROFILER_ENABLED, isDatadogProfilerSafeInCurrentEnvironment()) DEFAULT_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE); clientIpEnabled = configProvider.getBoolean(CLIENT_IP_ENABLED, DEFAULT_CLIENT_IP_ENABLED); - configInversionStrict = ConfigHelper.isConfigInversionStrict(); + configInversionStrict = ConfigHelper.configInversionStrictFlag(); appSecReportingInband = configProvider.getBoolean(APPSEC_REPORTING_INBAND, DEFAULT_APPSEC_REPORTING_INBAND); @@ -3488,7 +3488,7 @@ public boolean isClientIpEnabled() { return clientIpEnabled; } - public boolean isConfigInversionStrict() { + public ConfigInversionStrictStyle isConfigInversionStrict() { return configInversionStrict; } diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java index cef067f32ce..1b38a41d48e 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java @@ -6,6 +6,7 @@ import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; import datadog.trace.api.ConfigCollector; +import datadog.trace.api.ConfigInversionStrictStyle; import datadog.trace.api.ConfigOrigin; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.File; @@ -381,7 +382,10 @@ public static ConfigProvider createDefault() { // TODO: Set default value to false before merging ConfigHelper.setConfigInversionStrict( - minimalProvider.getBoolean(CONFIG_INVERSION_STRICT, true)); + minimalProvider.getEnum( + CONFIG_INVERSION_STRICT, + ConfigInversionStrictStyle.class, + ConfigInversionStrictStyle.STRICT)); Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { @@ -410,7 +414,10 @@ public static ConfigProvider withoutCollector() { false, new SystemPropertiesConfigSource(), new EnvironmentConfigSource()); // TODO: Set default value to false before merging ConfigHelper.setConfigInversionStrict( - minimalProvider.getBoolean(CONFIG_INVERSION_STRICT, true)); + minimalProvider.getEnum( + CONFIG_INVERSION_STRICT, + ConfigInversionStrictStyle.class, + ConfigInversionStrictStyle.STRICT)); Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { @@ -445,7 +452,10 @@ public static ConfigProvider withPropertiesOverride(Properties properties) { // TODO: Set default value to false before merging ConfigHelper.setConfigInversionStrict( - minimalProvider.getBoolean(CONFIG_INVERSION_STRICT, true)); + minimalProvider.getEnum( + CONFIG_INVERSION_STRICT, + ConfigInversionStrictStyle.class, + ConfigInversionStrictStyle.STRICT)); Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { diff --git a/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy index 0149e2e636e..8ee88a7de3f 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy @@ -1,5 +1,6 @@ package datadog.trace.api +import datadog.environment.ConfigHelper import datadog.trace.api.env.FixedCapturedEnvironment import datadog.trace.bootstrap.config.provider.AgentArgsInjector import datadog.trace.bootstrap.config.provider.ConfigConverter @@ -896,9 +897,15 @@ class ConfigTest extends DDSpecification { System.setProperty("dd.trace.test-prop.enabled", "true") System.setProperty("dd.trace.disabled-prop.enabled", "false") + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + expect: Config.get().isRuleEnabled(name) == enabled + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: // spotless:off name | enabled @@ -927,9 +934,15 @@ class ConfigTest extends DDSpecification { System.setProperty("dd.jmxfetch.test-prop.enabled", "true") System.setProperty("dd.jmxfetch.disabled-prop.enabled", "false") + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + expect: Config.get().isJmxFetchIntegrationEnabled(integrationNames, defaultEnabled) == expected + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: // spotless:off names | defaultEnabled | expected @@ -969,9 +982,15 @@ class ConfigTest extends DDSpecification { System.setProperty("dd.alias-prop.analytics.enabled", "false") System.setProperty("dd.trace.alias-prop.analytics.enabled", "true") + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + expect: Config.get().isTraceAnalyticsIntegrationEnabled(integrationNames, defaultEnabled) == expected + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: // spotless:off names | defaultEnabled | expected @@ -1011,9 +1030,15 @@ class ConfigTest extends DDSpecification { System.setProperty("dd.garbage.test", "garbage") System.setProperty("dd.negative.test", "-1") + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + expect: Config.get().configProvider.getFloat(name, defaultValue) == (float) expected + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: name | expected // spotless:off @@ -1042,9 +1067,15 @@ class ConfigTest extends DDSpecification { System.setProperty("dd.garbage.test", "garbage") System.setProperty("dd.negative.test", "-1") + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + expect: Config.get().configProvider.getDouble(name, defaultValue) == (double) expected + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: // spotless:off name | expected @@ -1383,6 +1414,9 @@ class ConfigTest extends DDSpecification { System.setProperty("dd.alias-prop.analytics.sample-rate", "0.1") System.setProperty("dd.trace.alias-prop.analytics.sample-rate", "0.2") + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + when: String[] array = services.toArray(new String[0]) def value = Config.get().getInstrumentationAnalyticsSampleRate(array) @@ -1390,6 +1424,9 @@ class ConfigTest extends DDSpecification { then: value == expected + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: // spotless:off services | expected diff --git a/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy index b7f429e2509..439c36ca9c4 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy @@ -1,9 +1,21 @@ package datadog.trace.api +import datadog.environment.ConfigHelper import datadog.trace.test.util.DDSpecification class InstrumenterConfigTest extends DDSpecification { + def strictness + + def setup() { + strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + } + + def cleanup() { + ConfigHelper.setConfigInversionStrict(strictness) + } + def "verify integration config"() { setup: environmentVariables.set("DD_INTEGRATION_ORDER_ENABLED", "false") diff --git a/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy index c5970aeb012..80dbebd298b 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy @@ -1,6 +1,8 @@ package datadog.trace.api.telemetry import datadog.trace.test.util.DDSpecification +import datadog.environment.ConfigHelper +import datadog.trace.api.ConfigInversionStrictStyle // PLEASE READ // When a metric is generated, it's duplicated in these tests. We call twice setupOteEnvironment() because of the separation of the configuration done in the rebuild function of DDSpecification between datadog/trace/api/InstrumenterConfig.java and internal-api/src/main/java/datadog/trace/api/Config.java. @@ -10,6 +12,15 @@ import datadog.trace.test.util.DDSpecification class OtelEnvMetricCollectorTest extends DDSpecification { + // def strictness + // def setup() { + // strictness = ConfigHelper.configInversionStrictFlag() + // ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) + // } + // + // def cleanup(){ + // ConfigHelper.setConfigInversionStrict(strictness) + // } def "otel disabled - no metric"() { setup: From eb6908a540f91dddc823c6b8fb61b4ac2e898a93 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 5 Aug 2025 14:55:36 -0400 Subject: [PATCH 16/47] adding configs and updating specific tests to TEST strictness --- .../resources/supported-configurations.json | 20 ++++++++++++++++++- .../trace/api/config/TracerConfig.java | 2 +- .../OtelEnvMetricCollectorTest.groovy | 13 ------------ .../config/provider/ConfigProviderTest.groovy | 7 +++++++ .../provider/StableConfigParserTest.groovy | 8 ++++++++ 5 files changed, 35 insertions(+), 15 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index b7037dc03e2..3dafe28adc7 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -277,10 +277,15 @@ "DD_PROFILING_ASYNC_CPU_INTERVAL_MS": ["A"], "DD_PROFILING_ASYNC_CSTACK": ["A"], "DD_PROFILING_ASYNC_DEBUG_LIB": ["A"], + "DD_PROFILING_EXPERIMENTAL_ASYNC_WALL_JVMTI": ["A"], + "DD_PROFILING_ASYNC_LINENUMBERS": ["A"], "DD_PROFILING_ASYNC_LIVEHEAP_CAPACITY": ["A"], "DD_PROFILING_ASYNC_LIVEHEAP_INTERVAL": ["A"], "DD_PROFILING_ASYNC_LIVEHEAP_SAMPLE_PERCENT": ["A"], + "DD_PROFILING_ASYNC_LOGLEVEL": ["A"], "DD_PROFILING_ASYNC_SAFEMODE": ["A"], + "DD_PROFILING_ASYNC_WALL_COLLAPSING": ["A"], + "DD_PROFILING_ASYNC_WALL_CONTEXT_FILTER": ["A"], "DD_PROFILING_ASYNC_WALL_INTERVAL_MS": ["A"], "DD_PROFILING_AUXILIARY": ["A"], "DD_PROFILING_BACKPRESSURE_SAMPLE_LIMIT": ["A"], @@ -515,7 +520,7 @@ "DD_TRACE_ARMERIA_JETTY_ENABLED": ["A"], "DD_TRACE_AUTH0_JWT_ENABLED": ["A"], "DD_TRACE_AVRO_ENABLED": ["A"], - "DD_TRACE_AWS_ADD_SPAN_POINTERS": ["A"], + "DD_TRACE_AWSADD_SPAN_POINTERS": ["A"], "DD_TRACE_AWS_DYNAMODB_ENABLED": ["A"], "DD_TRACE_AWS_LAMBDA_ENABLED": ["A"], "DD_TRACE_AWS_PROPAGATION_ENABLED": ["A"], @@ -1304,11 +1309,14 @@ "OTEL_INSTRUMENTATION_HTTP_SERVER_CAPTURE_RESPONSE_HEADERS": ["A"], "OTEL_JAVAAGENT_CONFIGURATION_FILE": ["A"], "OTEL_JAVAAGENT_EXTENSIONS": ["A"], + "OTEL_LOGS_EXPORTER": ["A"], "OTEL_LOG_LEVEL": ["A"], + "OTEL_METRICS_EXPORTER": ["A"], "OTEL_PROPAGATORS": ["A"], "OTEL_RESOURCE_ATTRIBUTES": ["A"], "OTEL_SDK_DISABLED": ["A"], "OTEL_SERVICE_NAME": ["A"], + "OTEL_TRACES_EXPORTER": ["A"], "OTEL_TRACES_SAMPLER": ["A"] }, "aliases": { @@ -1360,6 +1368,7 @@ "DD_TRACE_ARMERIA_JETTY_ENABLED": ["DD_TRACE_INTEGRATION_ARMERIA_JETTY_ENABLED","DD_INTEGRATION_ARMERIA_JETTY_ENABLED"], "DD_TRACE_AUTH0_JWT_ENABLED": ["DD_TRACE_INTEGRATION_AUTH0_JWT_ENABLED","DD_INTEGRATION_AUTH0_JWT_ENABLED"], "DD_TRACE_AVRO_ENABLED": ["DD_TRACE_INTEGRATION_AVRO_ENABLED","DD_INTEGRATION_AVRO_ENABLED"], + "DD_TRACE_AWSADD_SPAN_POINTERS": ["DD_AWSADD_SPAN_POINTERS"], "DD_TRACE_AWS_DYNAMODB_ENABLED": ["DD_TRACE_INTEGRATION_AWS_DYNAMODB_ENABLED","DD_INTEGRATION_AWS_DYNAMODB_ENABLED"], "DD_TRACE_AWS_LAMBDA_ENABLED": ["DD_TRACE_INTEGRATION_AWS_LAMBDA_ENABLED","DD_INTEGRATION_AWS_LAMBDA_ENABLED"], "DD_TRACE_AWS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_PROPAGATION_ENABLED","DD_INTEGRATION_AWS_PROPAGATION_ENABLED"], @@ -1569,6 +1578,7 @@ "DD_TRACE_KAFKA_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_STREAMS_ENABLED","DD_INTEGRATION_KAFKA_STREAMS_ENABLED"], "DD_TRACE_KARATE_ENABLED": ["DD_TRACE_INTEGRATION_KARATE_ENABLED","DD_INTEGRATION_KARATE_ENABLED"], "DD_TRACE_KOTLIN_COROUTINE_ENABLED": ["DD_TRACE_INTEGRATION_KOTLIN_COROUTINE_ENABLED","DD_INTEGRATION_KOTLIN_COROUTINE_ENABLED"], + "DD_TRACE_LEGACY_E2E_DURATION_ENABLED": ["DD_LEGACY_E2E_DURATION_ENABLED"], "DD_TRACE_LETTUCE_4_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ASYNC_ENABLED","DD_INTEGRATION_LETTUCE_4_ASYNC_ENABLED"], "DD_TRACE_LETTUCE_4_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_4_ENABLED","DD_INTEGRATION_LETTUCE_4_ENABLED"], "DD_TRACE_LETTUCE_5_ASYNC_ENABLED": ["DD_TRACE_INTEGRATION_LETTUCE_5_ASYNC_ENABLED","DD_INTEGRATION_LETTUCE_5_ASYNC_ENABLED"], @@ -1717,9 +1727,11 @@ "DD_TRACE_SERVICETALK_ENABLED": ["DD_TRACE_INTEGRATION_SERVICETALK_ENABLED","DD_INTEGRATION_SERVICETALK_ENABLED"], "DD_TRACE_SERVLET_2_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_2_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SERVLET_2_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_2_ENABLED","DD_INTEGRATION_SERVLET_2_ENABLED"], + "DD_TRACE_SERVLET_3_ANALYTICS_ENABLED": ["DD_SERVLET_3_ANALYTICS_ENABLED"], "DD_TRACE_SERVLET_3_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_3_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SERVLET_3_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_3_ENABLED","DD_INTEGRATION_SERVLET_3_ENABLED"], "DD_TRACE_SERVLET_5_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_5_ENABLED","DD_INTEGRATION_SERVLET_5_ENABLED"], + "DD_TRACE_SERVLET_ANALYTICS_ENABLED": ["DD_SERVLET_ANALYTICS_ENABLED"], "DD_TRACE_SERVLET_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SERVLET_COOKIE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_COOKIE_ENABLED","DD_INTEGRATION_SERVLET_COOKIE_ENABLED"], "DD_TRACE_SERVLET_DISPATCHER_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_DISPATCHER_ANALYTICS_SAMPLE_RATE"], @@ -1773,6 +1785,7 @@ "DD_TRACE_SPRING_WEBFLUX_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED","DD_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED"], "DD_TRACE_SPRING_WEBFLUX_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_ENABLED","DD_INTEGRATION_SPRING_WEBFLUX_ENABLED"], "DD_TRACE_SPRING_WEBFLUX_FUNCTIONAL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED","DD_INTEGRATION_SPRING_WEBFLUX_FUNCTIONAL_ENABLED"], + "DD_TRACE_SPRING_WEB_ANALYTICS_ENABLED": ["DD_SPRING_WEB_ANALYTICS_ENABLED"], "DD_TRACE_SPRING_WEB_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEB_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPRING_WEB_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED","DD_INTEGRATION_SPRING_WEB_CODE_ORIGIN_ENABLED"], "DD_TRACE_SPRING_WEB_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEB_ENABLED","DD_INTEGRATION_SPRING_WEB_ENABLED"], @@ -1808,8 +1821,10 @@ "DD_TRACE_TOMCAT_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED","DD_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED"], "DD_TRACE_TOMCAT_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_ENABLED","DD_INTEGRATION_TOMCAT_ENABLED"], "DD_TRACE_TOMCAT_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED","DD_INTEGRATION_TOMCAT_WEBSOCKET_ENABLED"], + "DD_TRACE_TRACE_ANNOTATION_ANALYTICS_ENABLED": ["DD_TRACE_ANNOTATION_ANALYTICS_ENABLED"], "DD_TRACE_TRACE_ANNOTATION_ANALYTICS_SAMPLE_RATE": ["DD_TRACE_ANNOTATION_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_TRACE_ANNOTATION_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ANNOTATION_ENABLED","DD_INTEGRATION_TRACE_ANNOTATION_ENABLED"], + "DD_TRACE_TRACE_CONFIG_ANALYTICS_ENABLED": ["DD_TRACE_CONFIG_ANALYTICS_ENABLED"], "DD_TRACE_TRACE_CONFIG_ANALYTICS_SAMPLE_RATE": ["DD_TRACE_CONFIG_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_TRACE_CONFIG_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_CONFIG_ENABLED","DD_INTEGRATION_TRACE_CONFIG_ENABLED"], "DD_TRACE_TRACE_ENABLED": ["DD_TRACE_INTEGRATION_TRACE_ENABLED","DD_INTEGRATION_TRACE_ENABLED"], @@ -1818,8 +1833,11 @@ "DD_TRACE_UNDERTOW_2_0_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_0_ENABLED","DD_INTEGRATION_UNDERTOW_2_0_ENABLED"], "DD_TRACE_UNDERTOW_2_2_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_2_ENABLED","DD_INTEGRATION_UNDERTOW_2_2_ENABLED"], "DD_TRACE_UNDERTOW_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_ENABLED","DD_INTEGRATION_UNDERTOW_ENABLED"], + "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_ENABLED": ["DD_UNDERTOW_HTTP_ANALYTICS_ENABLED"], "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_UNDERTOW_HTTP_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_ENABLED": ["DD_UNDERTOW_HTTP_SERVER_ANALYTICS_ENABLED"], "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_UNDERTOW_HTTP_SERVER_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_UNDERTOW_LEGACY_TRACING_ENABLED": ["DD_UNDERTOW_LEGACY_TRACING_ENABLED"], "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED","DD_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED"], "DD_TRACE_URLCONNECTION_ANALYTICS_SAMPLE_RATE": ["DD_URLCONNECTION_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_URLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_URLCONNECTION_ENABLED","DD_INTEGRATION_URLCONNECTION_ENABLED"], diff --git a/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java b/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java index 0300cef2070..6bcc809369a 100644 --- a/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java +++ b/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java @@ -38,7 +38,7 @@ public final class TracerConfig { "trace.experimental.features.enabled"; public static final String SPAN_TAGS = "trace.span.tags"; - public static final String TRACE_ANALYTICS_ENABLED = "trace.analytics.enabled"; + public static final String TRACE_ANALYTICS_ENABLED = "trace.1analytics.enabled"; @Deprecated public static final String TRACE_SAMPLING_SERVICE_RULES = "trace.sampling.service.rules"; diff --git a/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy index 80dbebd298b..ede1f5e2db9 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy @@ -1,8 +1,6 @@ package datadog.trace.api.telemetry import datadog.trace.test.util.DDSpecification -import datadog.environment.ConfigHelper -import datadog.trace.api.ConfigInversionStrictStyle // PLEASE READ // When a metric is generated, it's duplicated in these tests. We call twice setupOteEnvironment() because of the separation of the configuration done in the rebuild function of DDSpecification between datadog/trace/api/InstrumenterConfig.java and internal-api/src/main/java/datadog/trace/api/Config.java. @@ -12,16 +10,6 @@ import datadog.trace.api.ConfigInversionStrictStyle class OtelEnvMetricCollectorTest extends DDSpecification { - // def strictness - // def setup() { - // strictness = ConfigHelper.configInversionStrictFlag() - // ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) - // } - // - // def cleanup(){ - // ConfigHelper.setConfigInversionStrict(strictness) - // } - def "otel disabled - no metric"() { setup: injectEnvConfig('DD_SERVICE_NAME', 'DD_TEST_SERVICE', false) @@ -213,5 +201,4 @@ class OtelEnvMetricCollectorTest extends DDSpecification { 'OTEL_TRACES_EXPORTER' | 'otlp' || 'count' | 1 | 'tracers' | 'otel.env.unsupported' | 'config_opentelemetry:otel_traces_exporter' 'OTEL_LOGS_EXPORTER' | 'otlp' || 'count' | 1 | 'tracers' | 'otel.env.unsupported' | 'config_opentelemetry:otel_logs_exporter' } - } diff --git a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy index b9783ec59c1..3209caa7edd 100644 --- a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy @@ -2,6 +2,8 @@ package datadog.trace.bootstrap.config.provider import datadog.trace.test.util.DDSpecification import spock.lang.Shared +import datadog.trace.api.ConfigInversionStrictStyle +import datadog.environment.ConfigHelper import static datadog.trace.api.config.TracerConfig.TRACE_HTTP_SERVER_PATH_RESOURCE_NAME_MAPPING @@ -29,6 +31,8 @@ class ConfigProviderTest extends DDSpecification { injectEnvConfig("CONFIG_NAME", configNameValue) injectEnvConfig("CONFIG_ALIAS1", configAlias1Value) injectEnvConfig("CONFIG_ALIAS2", configAlias2Value) + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) when: def config = configProvider.getString("CONFIG_NAME", null, "CONFIG_ALIAS1", "CONFIG_ALIAS2") @@ -36,6 +40,9 @@ class ConfigProviderTest extends DDSpecification { then: config == expected + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: configNameValue | configAlias1Value | configAlias2Value | expected "default" | null | null | "default" diff --git a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy index cd36709ef7d..3d9b52fecd1 100644 --- a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy @@ -1,4 +1,7 @@ package datadog.trace.bootstrap.config.provider + +import datadog.environment.ConfigHelper +import datadog.trace.api.ConfigInversionStrictStyle import datadog.trace.test.util.DDSpecification import java.nio.file.Files import java.nio.file.Path @@ -269,10 +272,15 @@ apm_configuration_rules: if (envKey != null) { injectEnvConfig(envKey, envVal) } + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST) then: StableConfigParser.processTemplate(templateVar) == expect + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: templateVar | envKey | envVal | expect "{{environment_variables['DD_KEY']}}" | "DD_KEY" | "value" | "value" From 972eef42dcf56d1b551c83383d20266e23827de0 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 5 Aug 2025 15:30:42 -0400 Subject: [PATCH 17/47] cleanup and removing system.getenv call --- .../resources/test-supported-configurations.json | 11 ----------- .../aws/v1/lambda/LambdaHandlerInstrumentation.java | 4 +++- .../java/datadog/trace/api/config/TracerConfig.java | 2 +- 3 files changed, 4 insertions(+), 13 deletions(-) delete mode 100644 components/environment/src/generator/resources/test-supported-configurations.json diff --git a/components/environment/src/generator/resources/test-supported-configurations.json b/components/environment/src/generator/resources/test-supported-configurations.json deleted file mode 100644 index b57ee00fa9f..00000000000 --- a/components/environment/src/generator/resources/test-supported-configurations.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "supportedConfigurations": { - "DD_AGENT_HOST": ["A"] - }, - "aliases": { - "DD_AGENT_HOST": ["DD_TRACE_AGENT_HOSTNAME"] - }, - "deprecated": { - "OLD_KEY": "NEW_KEY" - } -} diff --git a/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java b/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java index c8f8fd851ed..783896a89a7 100644 --- a/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java +++ b/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java @@ -16,6 +16,7 @@ import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.RequestHandler; import com.google.auto.service.AutoService; +import datadog.environment.ConfigHelper; import datadog.environment.EnvironmentVariables; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; @@ -61,7 +62,8 @@ public String[] helperClassNames() { @Override protected boolean defaultEnabled() { - return EnvironmentVariables.get(HANDLER_ENV_NAME) != null; + final String handler = ConfigHelper.getEnvironmentVariable(HANDLER_ENV_NAME); + return null != handler; } @Override diff --git a/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java b/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java index 6bcc809369a..0300cef2070 100644 --- a/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java +++ b/dd-trace-api/src/main/java/datadog/trace/api/config/TracerConfig.java @@ -38,7 +38,7 @@ public final class TracerConfig { "trace.experimental.features.enabled"; public static final String SPAN_TAGS = "trace.span.tags"; - public static final String TRACE_ANALYTICS_ENABLED = "trace.1analytics.enabled"; + public static final String TRACE_ANALYTICS_ENABLED = "trace.analytics.enabled"; @Deprecated public static final String TRACE_SAMPLING_SERVICE_RULES = "trace.sampling.service.rules"; From 81c12f4a79e1962d66d2d8200e1c4c78bcc5513e Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 5 Aug 2025 15:47:15 -0400 Subject: [PATCH 18/47] adding more supported-configurations --- .../resources/supported-configurations.json | 32 +++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 3dafe28adc7..46a860fd5e9 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -743,7 +743,7 @@ "DD_TRACE_INTEGRATION_HTTPCLIENT_MATCHING_SHORTCUT_ENABLED": ["A"], "DD_TRACE_INTEGRATION_JAVA_CONCURRENT_MATCHING_SHORTCUT_ENABLED": ["A"], "DD_TRACE_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_MATCHING_SHORTCUT_ENABLED": ["A"], - "DD_TRACE_INTEGRATION_TRACE_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED": ["A"], + "DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED": ["A"], "DD_TRACE_INTERNAL_EXIT_ON_FAILURE": ["A"], "DD_TRACE_JACKSON_1_ENABLED": ["A"], "DD_TRACE_JACKSON_2_12_ENABLED": ["A"], @@ -834,7 +834,7 @@ "DD_TRACE_JMXFETCH_HAZELCAST_ENABLED": ["A"], "DD_TRACE_JMXFETCH_HIVEMQ_ENABLED": ["A"], "DD_TRACE_JMXFETCH_HIVE_ENABLED": ["A"], - "DD_TRACE_JMXFETCH_HUDL_ENABLED": ["A"], + "DD_TRACE_JMXFETCH_HUDI_ENABLED": ["A"], "DD_TRACE_JMXFETCH_IGNITE_ENABLED": ["A"], "DD_TRACE_JMXFETCH_JBOSS_WILDFLY_ENABLED": ["A"], "DD_TRACE_JMXFETCH_KAFKA_ENABLED": ["A"], @@ -1488,6 +1488,16 @@ "DD_TRACE_IGNITE_ANALYTICS_SAMPLE_RATE": ["DD_IGNITE_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_IGNITE_ENABLED": ["DD_TRACE_INTEGRATION_IGNITE_ENABLED","DD_INTEGRATION_IGNITE_ENABLED"], "DD_TRACE_INPUTSTREAM_ENABLED": ["DD_TRACE_INTEGRATION_INPUTSTREAM_ENABLED","DD_INTEGRATION_INPUTSTREAM_ENABLED"], + "DD_TRACE_INTEGRATION_DATANUCLEUS_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_DATANUCLEUS_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_DROPWIZARD_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_DROPWIZARD_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_GRPC_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_GRPC_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_HIBERNATE_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HIBERNATE_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_HTTPASYNCCLIENT5_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPASYNCCLIENT5_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_HTTPCLIENT5_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPCLIENT5_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_HTTPCLIENT_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPCLIENT_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_JAVA_CONCURRENT_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_JAVA_CONCURRENT_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_JACKSON_1_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_1_ENABLED","DD_INTEGRATION_JACKSON_1_ENABLED"], "DD_TRACE_JACKSON_2_12_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_12_ENABLED","DD_INTEGRATION_JACKSON_2_12_ENABLED"], "DD_TRACE_JACKSON_2_16_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_16_ENABLED","DD_INTEGRATION_JACKSON_2_16_ENABLED"], @@ -1552,6 +1562,24 @@ "DD_TRACE_JMS_ANALYTICS_SAMPLE_RATE": ["DD_JMS_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JMS_ENABLED","DD_INTEGRATION_JMS_ENABLED"], "DD_TRACE_JMS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_JMS_PROPAGATION_ENABLED","DD_INTEGRATION_JMS_PROPAGATION_ENABLED"], + "DD_TRACE_JMXFETCH_ACTIVEMQ_ENABLED": ["DD_JMXFETCH_ACTIVEMQ_ENABLED"], + "DD_TRACE_JMXFETCH_CASSANDRA_ENABLED": ["DD_JMXFETCH_CASSANDRA_ENABLED"], + "DD_TRACE_JMXFETCH_CONFLUENT_PLATFORM_ENABLED": ["DD_JMXFETCH_CONFLUENT_PLATFORM_ENABLED"], + "DD_TRACE_JMXFETCH_HAZELCAST_ENABLED": ["DD_HAZELCAST_ENABLED"], + "DD_TRACE_JMXFETCH_HIVEMQ_ENABLED": ["DD_JMXFETCH_HIVEMQ_ENABLED"], + "DD_TRACE_JMXFETCH_HIVE_ENABLED": ["DD_JMXFETCH_HIVE_ENABLED"], + "DD_TRACE_JMXFETCH_HUDI_ENABLED": ["DD_JMXFETCH_HUDI_ENABLED"], + "DD_TRACE_JMXFETCH_IGNITE_ENABLED": ["DD_TRACE_JMXFETCH_IGNITE_ENABLED"], + "DD_TRACE_JMXFETCH_JBOSS_WILDFLY_ENABLED": ["DD_JMXFETCH_JBOSS_WILDFLY_ENABLED"], + "DD_TRACE_JMXFETCH_KAFKA_ENABLED": ["DD_JMXFETCH_KAFKA_ENABLED"], + "DD_TRACE_JMXFETCH_KUBE_APISERVER_METRICS_ENABLED": ["DD_JMXFETCH_KUBE_APISERVER_METRICS_ENABLED"], + "DD_TRACE_JMXFETCH_PRESTO_ENABLED": ["DD_JMXFETCH_PRESTO_ENABLED"], + "DD_TRACE_JMXFETCH_SOLR_ENABLED": ["DD_JMXFETCH_SOLR_ENABLED"], + "DD_TRACE_JMXFETCH_SONARQUBE_ENABLED": ["DD_JMXFETCH_SONARQUBE_ENABLED"], + "DD_TRACE_JMXFETCH_TOMCAT_ENABLED": ["DD_JMXFETCH_TOMCAT_ENABLED"], + "DD_TRACE_JMXFETCH_WEBLOGIC_ENABLED": ["DD_JMXFETCH_WEBLOGIC_ENABLED"], + "DD_TRACE_JMXFETCH_WEBSPHERE_ENABLED": ["DD_JMXFETCH_WEBSPHERE_ENABLED"], + "DD_TRACE_JMXFETCH_{CHECK_NAME}_ENABLED": ["DD_JMXFETCH_{CHECK_NAME}_ENABLED"], "DD_TRACE_JNI_ENABLED": ["DD_TRACE_INTEGRATION_JNI_ENABLED","DD_INTEGRATION_JNI_ENABLED"], "DD_TRACE_JOSE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JOSE_JWT_ENABLED","DD_INTEGRATION_JOSE_JWT_ENABLED"], "DD_TRACE_JSP_ANALYTICS_SAMPLE_RATE": ["DD_JSP_ANALYTICS_SAMPLE_RATE"], From 98c57b5cf8684942cc0b41862cd0bb161231ec3f Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 5 Aug 2025 16:36:58 -0400 Subject: [PATCH 19/47] adding more configs --- .../resources/supported-configurations.json | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index 46a860fd5e9..e43f2f967ca 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -18,6 +18,8 @@ "DD_APM_TRACING_ENABLED": ["A"], "DD_APPLICATION_KEY": ["A"], "DD_APPLICATION_KEY_FILE": ["A"], + "DD_APP_CUSTOMLOGMANAGER": ["A"], + "DD_APP_CUSTOMJMXBUILDER": ["A"], "DD_APPSEC_AUTOMATED_USER_EVENTS_TRACKING": ["A"], "DD_APPSEC_AUTO_USER_INSTRUMENTATION_MODE": ["A"], "DD_APPSEC_COLLECT_ALL_HEADERS": ["A"], @@ -228,7 +230,9 @@ "DD_INSTRUMENTATION_SOURCE": ["A"], "DD_INSTRUMENTATION_TELEMETRY_ENABLED": ["A"], "DD_INTEGRATIONS_ENABLED": ["A"], + "DD_INTEGRATION_JUNIT_ENABLED": ["A"], "DD_INTEGRATION_SYNAPSE_LEGACY_OPERATION_NAME": ["A"], + "DD_INTEGRATION_TESTNG_ENABLED": ["A"], "DD_INTERNAL_EXCEPTION_REPLAY_ONLY_LOCAL_ROOT": ["A"], "DD_INTERNAL_FORCE_SYMBOL_DATABASE_UPLOAD": ["A"], "DD_JDK_SOCKET_ENABLED": ["A"], @@ -1340,6 +1344,7 @@ "DD_TRACE_ALLOCATEDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_ALLOCATEDIRECT_ENABLED","DD_INTEGRATION_ALLOCATEDIRECT_ENABLED"], "DD_TRACE_AMQP_ANALYTICS_SAMPLE_RATE": ["DD_AMQP_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_AMQP_ENABLED": ["DD_TRACE_INTEGRATION_AMQP_ENABLED","DD_INTEGRATION_AMQP_ENABLED"], + "DD_TRACE_ANNOTATIONS_LEGACY_TRACING_ENABLED":["DD_ANNOTATIONS_LEGACY_TRACING_ENABLED"], "DD_TRACE_APACHE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED","DD_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED"], "DD_TRACE_APACHE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE": ["DD_APACHE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED","DD_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED"], @@ -1375,6 +1380,7 @@ "DD_TRACE_AWS_S3_ENABLED": ["DD_TRACE_INTEGRATION_AWS_S3_ENABLED","DD_INTEGRATION_AWS_S3_ENABLED"], "DD_TRACE_AWS_SDK_ANALYTICS_SAMPLE_RATE": ["DD_AWS_SDK_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_AWS_SDK_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_ENABLED","DD_INTEGRATION_AWS_SDK_ENABLED"], + "DD_TRACE_AWS_SDK_LEGACY_TRACING_ENABLED": ["DD_AWS_SDK_LEGACY_TRACING_ENABLED"], "DD_TRACE_AWS_SDK_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED","DD_INTEGRATION_AWS_SDK_PROPAGATION_ENABLED"], "DD_TRACE_AXIS2_ANALYTICS_SAMPLE_RATE": ["DD_AXIS2_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_AXIS2_ENABLED": ["DD_TRACE_INTEGRATION_AXIS2_ENABLED","DD_INTEGRATION_AXIS2_ENABLED"], @@ -1437,6 +1443,7 @@ "DD_TRACE_GOOGLE_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED","DD_INTEGRATION_GOOGLE_HTTP_CLIENT_ENABLED"], "DD_TRACE_GOOGLE_PUBSUB_ANALYTICS_SAMPLE_RATE": ["DD_GOOGLE_PUBSUB_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_GOOGLE_PUBSUB_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_LEGACY_TRACING_ENABLED": ["DD_GOOGLE_PUBSUB_LEGACY_TRACING_ENABLED"], "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED"], "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED"], "DD_TRACE_GRADLE_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_ENABLED","DD_INTEGRATION_GRADLE_ENABLED"], @@ -1470,6 +1477,7 @@ "DD_TRACE_HIBERNATE_CORE_ANALYTICS_SAMPLE_RATE": ["DD_HIBERNATE_CORE_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_HIBERNATE_CORE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_CORE_ENABLED","DD_INTEGRATION_HIBERNATE_CORE_ENABLED"], "DD_TRACE_HIBERNATE_ENABLED": ["DD_TRACE_INTEGRATION_HIBERNATE_ENABLED","DD_INTEGRATION_HIBERNATE_ENABLED"], + "DD_TRACE_HTTPASYNCCLIENT4_LEGACY_TRACING_ENABLED": ["DD_HTTPASYNCCLIENT4_LEGACY_TRACING_ENABLED"], "DD_TRACE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT5_ENABLED","DD_INTEGRATION_HTTPASYNCCLIENT5_ENABLED"], "DD_TRACE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE": ["DD_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_ENABLED","DD_INTEGRATION_HTTPASYNCCLIENT_ENABLED"], @@ -1561,15 +1569,16 @@ "DD_TRACE_JMS_2_ENABLED": ["DD_TRACE_INTEGRATION_JMS_2_ENABLED","DD_INTEGRATION_JMS_2_ENABLED"], "DD_TRACE_JMS_ANALYTICS_SAMPLE_RATE": ["DD_JMS_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_JMS_ENABLED": ["DD_TRACE_INTEGRATION_JMS_ENABLED","DD_INTEGRATION_JMS_ENABLED"], + "DD_TRACE_JMS_LEGACY_TRACING_ENABLED": ["DD_JMS_LEGACY_TRACING_ENABLED"], "DD_TRACE_JMS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_JMS_PROPAGATION_ENABLED","DD_INTEGRATION_JMS_PROPAGATION_ENABLED"], "DD_TRACE_JMXFETCH_ACTIVEMQ_ENABLED": ["DD_JMXFETCH_ACTIVEMQ_ENABLED"], "DD_TRACE_JMXFETCH_CASSANDRA_ENABLED": ["DD_JMXFETCH_CASSANDRA_ENABLED"], "DD_TRACE_JMXFETCH_CONFLUENT_PLATFORM_ENABLED": ["DD_JMXFETCH_CONFLUENT_PLATFORM_ENABLED"], - "DD_TRACE_JMXFETCH_HAZELCAST_ENABLED": ["DD_HAZELCAST_ENABLED"], + "DD_TRACE_JMXFETCH_HAZELCAST_ENABLED": ["DD_JMXFETCH_HAZELCAST_ENABLED"], "DD_TRACE_JMXFETCH_HIVEMQ_ENABLED": ["DD_JMXFETCH_HIVEMQ_ENABLED"], "DD_TRACE_JMXFETCH_HIVE_ENABLED": ["DD_JMXFETCH_HIVE_ENABLED"], "DD_TRACE_JMXFETCH_HUDI_ENABLED": ["DD_JMXFETCH_HUDI_ENABLED"], - "DD_TRACE_JMXFETCH_IGNITE_ENABLED": ["DD_TRACE_JMXFETCH_IGNITE_ENABLED"], + "DD_TRACE_JMXFETCH_IGNITE_ENABLED": ["DD_JMXFETCH_IGNITE_ENABLED"], "DD_TRACE_JMXFETCH_JBOSS_WILDFLY_ENABLED": ["DD_JMXFETCH_JBOSS_WILDFLY_ENABLED"], "DD_TRACE_JMXFETCH_KAFKA_ENABLED": ["DD_JMXFETCH_KAFKA_ENABLED"], "DD_TRACE_JMXFETCH_KUBE_APISERVER_METRICS_ENABLED": ["DD_JMXFETCH_KUBE_APISERVER_METRICS_ENABLED"], @@ -1601,6 +1610,7 @@ "DD_TRACE_KAFKA_CLIENT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED","DD_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED"], "DD_TRACE_KAFKA_CONNECT_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CONNECT_ENABLED","DD_INTEGRATION_KAFKA_CONNECT_ENABLED"], "DD_TRACE_KAFKA_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_ENABLED","DD_INTEGRATION_KAFKA_ENABLED"], + "DD_TRACE_KAFKA_LEGACY_TRACING_ENABLED": ["DD_KAFKA_LEGACY_TRACING_ENABLED"], "DD_TRACE_KAFKA_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_PROPAGATION_ENABLED","DD_INTEGRATION_KAFKA_PROPAGATION_ENABLED"], "DD_TRACE_KAFKA_STREAMS_ANALYTICS_SAMPLE_RATE": ["DD_KAFKA_STREAMS_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_KAFKA_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_STREAMS_ENABLED","DD_INTEGRATION_KAFKA_STREAMS_ENABLED"], @@ -1705,7 +1715,9 @@ "DD_TRACE_QUARTZ_ENABLED": ["DD_TRACE_INTEGRATION_QUARTZ_ENABLED","DD_INTEGRATION_QUARTZ_ENABLED"], "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE": ["DD_RABBITMQ_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_RABBITMQ_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_ENABLED","DD_INTEGRATION_RABBITMQ_ENABLED"], + "DD_TRACE_RABBITMQ_LEGACY_TRACING_ENABLED": ["DD_RABBITMQ_LEGACY_TRACING_ENABLED"], "DD_TRACE_RABBITMQ_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED","DD_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED"], + "DD_TRACE_RABBIT_LEGACY_TRACING_ENABLED": ["DD_RABBIT_LEGACY_TRACING_ENABLED"], "DD_TRACE_RABBIT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBIT_PROPAGATION_ENABLED","DD_INTEGRATION_RABBIT_PROPAGATION_ENABLED"], "DD_TRACE_RATPACK_ANALYTICS_SAMPLE_RATE": ["DD_RATPACK_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_RATPACK_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_ENABLED","DD_INTEGRATION_RATPACK_ENABLED"], @@ -1807,6 +1819,7 @@ "DD_TRACE_SPRING_RABBIT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_RABBIT_ENABLED","DD_INTEGRATION_SPRING_RABBIT_ENABLED"], "DD_TRACE_SPRING_SCHEDULING_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_SCHEDULING_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPRING_SCHEDULING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SCHEDULING_ENABLED","DD_INTEGRATION_SPRING_SCHEDULING_ENABLED"], + "DD_TRACE_SPRING_SCHEDULING_LEGACY_TRACING_ENABLED": ["DD_SPRING_SCHEDULING_LEGACY_TRACING_ENABLED"], "DD_TRACE_SPRING_SECURITY_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SECURITY_ENABLED","DD_INTEGRATION_SPRING_SECURITY_ENABLED"], "DD_TRACE_SPRING_WEBFLUX_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEBFLUX_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPRING_WEBFLUX_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEBFLUX_CLIENT_ANALYTICS_SAMPLE_RATE"], @@ -1822,6 +1835,7 @@ "DD_TRACE_SPYMEMCACHED_ANALYTICS_SAMPLE_RATE": ["DD_SPYMEMCACHED_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPYMEMCACHED_ENABLED": ["DD_TRACE_INTEGRATION_SPYMEMCACHED_ENABLED","DD_INTEGRATION_SPYMEMCACHED_ENABLED"], "DD_TRACE_SQS_ENABLED": ["DD_TRACE_INTEGRATION_SQS_ENABLED","DD_INTEGRATION_SQS_ENABLED"], + "DD_TRACE_SQS_LEGACY_TRACING_ENABLED": ["DD_SQS_LEGACY_TRACING_ENABLED"], "DD_TRACE_SQS_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_SQS_PROPAGATION_ENABLED","DD_INTEGRATION_SQS_PROPAGATION_ENABLED"], "DD_TRACE_SSLSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_SSLSOCKET_ENABLED","DD_INTEGRATION_SSLSOCKET_ENABLED"], "DD_TRACE_STATS_COMPUTATION_ENABLED": ["DD_TRACE_INTEGRATION_STATS_COMPUTATION_ENABLED","DD_INTEGRATION_STATS_COMPUTATION_ENABLED"], @@ -1839,6 +1853,7 @@ "DD_TRACE_TESTNG_ITR_ENABLED": ["DD_TRACE_INTEGRATION_TESTNG_ITR_ENABLED","DD_INTEGRATION_TESTNG_ITR_ENABLED"], "DD_TRACE_TEST_ORDER_ENABLED": ["DD_TRACE_INTEGRATION_TEST_ORDER_ENABLED","DD_INTEGRATION_TEST_ORDER_ENABLED"], "DD_TRACE_TEST_RETRY_ENABLED": ["DD_TRACE_INTEGRATION_TEST_RETRY_ENABLED","DD_INTEGRATION_TEST_RETRY_ENABLED"], + "DD_TRACE_THREAD_POOL_EXECUTORS_LEGACY_TRACING_ENABLED": ["DD_THREAD_POOL_EXECUTORS_LEGACY_TRACING_ENABLED"], "DD_TRACE_THROWABLES_ENABLED": ["DD_TRACE_INTEGRATION_THROWABLES_ENABLED","DD_INTEGRATION_THROWABLES_ENABLED"], "DD_TRACE_THYMELEAF_ENABLED": ["DD_TRACE_INTEGRATION_THYMELEAF_ENABLED","DD_INTEGRATION_THYMELEAF_ENABLED"], "DD_TRACE_TIBCO_BW_ANALYTICS_SAMPLE_RATE": ["DD_TIBCO_BW_ANALYTICS_SAMPLE_RATE"], From 990c0ce6cbdc7fd0eff9b45fda3b4abf67d85270 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 6 Aug 2025 11:04:04 -0400 Subject: [PATCH 20/47] adding configs and updating tests --- .../src/generator/resources/supported-configurations.json | 4 ++++ .../trace/agent/test/DefaultInstrumenterForkedTest.groovy | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index e43f2f967ca..a0e92f72a73 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -109,6 +109,9 @@ "DD_CODE_ORIGIN_MAX_USER_FRAMES": ["A"], "DD_CONFIG_INVERSION_STRICT": ["A"], "DD_CRASHTRACKING_AGENTLESS": ["A"], + "DD_CRASHTRACKING_DEBUG_AUTOCONFIG_ENABLE": ["A"], + "DD_CRASHTRACKING_DEBUG_START_FORCE_FIRST": ["A"], + "DD_CRASHTRACKING_ENABLED": ["A"], "DD_CRASHTRACKING_PROXY_HOST": ["A"], "DD_CRASHTRACKING_PROXY_PASSWORD": ["A"], "DD_CRASHTRACKING_PROXY_PORT": ["A"], @@ -1321,6 +1324,7 @@ "OTEL_SDK_DISABLED": ["A"], "OTEL_SERVICE_NAME": ["A"], "OTEL_TRACES_EXPORTER": ["A"], + "OTEL_TRACES_SAMPLER_ARG": ["A"], "OTEL_TRACES_SAMPLER": ["A"] }, "aliases": { diff --git a/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy b/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy index eb448819bd2..85c7b781442 100644 --- a/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy +++ b/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy @@ -1,9 +1,10 @@ package datadog.trace.agent.test - +import datadog.environment.ConfigHelper import datadog.trace.agent.tooling.InstrumenterModule import datadog.trace.agent.tooling.bytebuddy.matcher.DDElementMatchers import datadog.trace.agent.tooling.bytebuddy.outline.TypePoolFacade +import static datadog.trace.api.ConfigInversionStrictStyle.TEST import datadog.trace.test.util.DDSpecification class DefaultInstrumenterForkedTest extends DDSpecification { @@ -113,6 +114,8 @@ class DefaultInstrumenterForkedTest extends DDSpecification { setup: injectEnvConfig("DD_INTEGRATIONS_ENABLED", "false") injectEnvConfig("DD_INTEGRATION_${value}_ENABLED", "true") + def strictness = ConfigHelper.configInversionStrictFlag() + ConfigHelper.setConfigInversionStrict(TEST) when: def target = new TestDefaultInstrumenter(name, altName) @@ -121,6 +124,9 @@ class DefaultInstrumenterForkedTest extends DDSpecification { System.getenv("DD_INTEGRATION_${value}_ENABLED") == "true" target.enabled == enabled + cleanup: + ConfigHelper.setConfigInversionStrict(strictness) + where: value | enabled | name | altName "TEST" | true | "test" | "asdf" From 5bdd8cf7620825065a06a564004e64b2725d1a08 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 6 Aug 2025 14:08:17 -0400 Subject: [PATCH 21/47] adding branch coverage --- components/environment/build.gradle.kts | 2 ++ .../datadog/environment/ConfigHelper.java | 12 +++++++----- .../datadog/environment/ConfigHelperTest.java | 19 +++++++++++++++++++ dd-trace-api/build.gradle.kts | 1 + gradle/jacoco.gradle | 4 +--- 5 files changed, 30 insertions(+), 8 deletions(-) diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index 82cb40f8cea..fe01ec936fb 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -58,10 +58,12 @@ tasks.shadowJar { extra.set("minimumInstructionCoverage", 0.7) val excludedClassesCoverage by extra { listOf( + "datadog.environment.GeneratedSupportedConfigurations", // generated static file "datadog.environment.JavaVirtualMachine", // depends on OS and JVM vendor "datadog.environment.JavaVirtualMachine.JvmOptionsHolder", // depends on OS and JVM vendor "datadog.environment.JvmOptions", // depends on OS and JVM vendor "datadog.environment.OperatingSystem", // depends on OS + "datadog.environment.SupportedConfigurationSource", // wrapper class ) } val excludedClassesBranchCoverage by extra { diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/components/environment/src/main/java/datadog/environment/ConfigHelper.java index 2d49910c516..eefddd448e0 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/components/environment/src/main/java/datadog/environment/ConfigHelper.java @@ -56,12 +56,14 @@ public static Map getEnvironmentVariables() { } } } - // if (deprecatedConfigurations.containsKey(key)) { + + // TODO: Follow-up - Add deprecation handling + // if (configSource.getDeprecatedConfigurations().containsKey(key)) { // String warning = "Environment variable " + key + " is deprecated. " + - // (aliasMapping.containsKey(key) - // ? "Please use " + aliasMapping.get(key) + " instead." - // : deprecatedConfigurations.get(key)); - // System.err.println(warning); // TODO: REPLACE with log call + // (configSource.getAliasMapping().containsKey(key) + // ? "Please use " + configSource.getAliasMapping().get(key) + " instead." + // : configSource.getDeprecatedConfigurations().get(key)); + // System.err.println(warning); // } } else { configs.put(key, value); diff --git a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java index e9b634c551a..f9fec8e61bc 100644 --- a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java +++ b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java @@ -32,6 +32,10 @@ public class ConfigHelperTest { private static final String NON_DD_ALIAS_VAR = "TEST_CONFIG_ALIAS"; private static final String NON_DD_ALIAS_VAL = "test_alias_val_non_dd"; + private static final String NEW_ALIAS_TARGET = "DD_NEW_ALIAS_TARGET"; + private static final String NEW_ALIAS_KEY_1 = "DD_NEW_ALIAS_KEY_1"; + private static final String NEW_ALIAS_KEY_2 = "DD_NEW_ALIAS_KEY_2"; + private static ConfigInversionStrictStyle strictness; private static TestSupportedConfigurationSource testSource; @@ -43,10 +47,12 @@ static void setUp() { Map> testAliases = new HashMap<>(); testAliases.put(TEST_DD_VAR, Arrays.asList(ALIAS_DD_VAR, NON_DD_ALIAS_VAR)); + testAliases.put(NEW_ALIAS_TARGET, Arrays.asList(NEW_ALIAS_KEY_1)); Map testAliasMapping = new HashMap<>(); testAliasMapping.put(ALIAS_DD_VAR, TEST_DD_VAR); testAliasMapping.put(NON_DD_ALIAS_VAR, TEST_DD_VAR); + testAliasMapping.put(NEW_ALIAS_KEY_2, NEW_ALIAS_TARGET); // Create and set test configuration source testSource = @@ -186,6 +192,19 @@ void testAliasSkippedWhenBaseAlreadyPresent() { setEnvVar(NON_DD_ALIAS_VAR, null); } + @Test + void testInconsistentAliasesAndAliasMapping() { + setEnvVar(NEW_ALIAS_KEY_2, "some_value"); + + Map result = ConfigHelper.getEnvironmentVariables(); + + assertFalse(result.containsKey(NEW_ALIAS_KEY_2)); + assertFalse(result.containsKey(NEW_ALIAS_TARGET)); + + // Cleanup + setEnvVar(NEW_ALIAS_KEY_2, null); + } + // Copied from utils.TestHelper @SuppressWarnings("unchecked") private static void setEnvVar(String envName, String envValue) { diff --git a/dd-trace-api/build.gradle.kts b/dd-trace-api/build.gradle.kts index 640267ecec6..ea9a44ce91f 100644 --- a/dd-trace-api/build.gradle.kts +++ b/dd-trace-api/build.gradle.kts @@ -11,6 +11,7 @@ val minimumBranchCoverage by extra(0.8) val excludedClassesCoverage by extra( listOf( "datadog.trace.api.ConfigDefaults", + "datadog.trace.api.ConfigInversionStrictStyle", "datadog.trace.api.CorrelationIdentifier", "datadog.trace.api.DDSpanTypes", "datadog.trace.api.DDTags", diff --git a/gradle/jacoco.gradle b/gradle/jacoco.gradle index fcc2abec27b..b2c3d53ab4b 100644 --- a/gradle/jacoco.gradle +++ b/gradle/jacoco.gradle @@ -37,9 +37,7 @@ if (!project.ext.hasProperty('excludedClassesBranchCoverage')) { } if (!project.ext.hasProperty('excludedClassesInstructionCoverage')) { - project.ext.excludedClassesInstructionCoverage = [ - "datadog.environment.GeneratedSupportedConfigurations", - "datadog.environment.SupportedConfigurationSource"] // Generated static file + project.ext.excludedClassesInstructionCoverage = [] } // defaults can be overridden per project: From 52c05b4877ddb899c4fa2086a34a89826ec3fa95 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 6 Aug 2025 16:48:46 -0400 Subject: [PATCH 22/47] updating code coverage again --- .../datadog/environment/ConfigHelperTest.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java index f9fec8e61bc..e26f759f803 100644 --- a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java +++ b/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java @@ -205,6 +205,21 @@ void testInconsistentAliasesAndAliasMapping() { setEnvVar(NEW_ALIAS_KEY_2, null); } + // TODO: Update to verify telemetry when implemented + @Test + void testUnsupportedEnvWarningNotInTestMode() { + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.TEST); + + setEnvVar("DD_FAKE_VAR", "banana"); + + // Should allow unsupported variable in TEST mode + assertEquals("banana", ConfigHelper.getEnvironmentVariable("DD_FAKE_VAR")); + + // Cleanup + setEnvVar("DD_FAKE_VAR", null); + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.STRICT); + } + // Copied from utils.TestHelper @SuppressWarnings("unchecked") private static void setEnvVar(String envName, String envValue) { From 5192a8a45604ecd6e2c7be6fbe6c55f825242f36 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 6 Aug 2025 21:50:53 -0400 Subject: [PATCH 23/47] test --- .../src/test/java/jvmbootstraptest/CustomSecurityManager.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java b/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java index 591fb6283bd..329f962d1ab 100644 --- a/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java +++ b/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java @@ -502,6 +502,9 @@ protected final boolean defaultCheckSecurityPutPermission( } final boolean checkPropertyPermission(PropertyPermission perm, Object ctx) { + if ("otel.javaagent.configuration-file".equals(perm.getName())) { + System.out.println("What?"); + } switch (perm.getActions()) { case "read": return checkPropertyReadPermission(perm, ctx, perm.getName()); From f128de86f33cb35e01446aa057d5677ac90a73eb Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 7 Aug 2025 11:24:15 -0400 Subject: [PATCH 24/47] rebasing --- build.gradle | 146 ------------------ build.gradle.kts | 1 + .../environment/EnvironmentVariables.java | 1 - .../civisibility/CiVisibilityServices.java | 3 - .../logging/ddlogger/DDLoggerFactory.java | 2 +- .../lambda/LambdaHandlerInstrumentation.java | 1 - .../BootstrapInitializationTelemetry.java | 2 +- .../config/provider/AgentArgsInjector.java | 1 - .../provider/OtelEnvironmentConfigSource.java | 1 - 9 files changed, 3 insertions(+), 155 deletions(-) delete mode 100644 build.gradle diff --git a/build.gradle b/build.gradle deleted file mode 100644 index d6b4e2d355a..00000000000 --- a/build.gradle +++ /dev/null @@ -1,146 +0,0 @@ -buildscript { - dependencies { - classpath "pl.allegro.tech.build:axion-release-plugin:1.14.4" - } - - configurations.all { - resolutionStrategy.dependencySubstitution { - substitute module("com.jcraft:jsch") using module("com.github.mwiede:jsch:0.2.17") because "jcraft is unmaintained" - substitute module("com.jcraft:jsch.agentproxy") using module("com.github.mwiede:jsch:0.2.17") because "jcraft is unmaintained" - substitute module("com.jcraft:jzlib") using module("com.github.mwiede:jsch:0.2.17") because "jcraft is unmaintained" - } - } -} - -plugins { - id 'datadog.gradle-debug' - id 'datadog.dependency-locking' - - id 'com.diffplug.spotless' version '6.13.0' - id 'com.github.spotbugs' version '5.0.14' - id 'de.thetaphi.forbiddenapis' version '3.8' - - id 'pl.allegro.tech.build.axion-release' version '1.14.4' - id 'io.github.gradle-nexus.publish-plugin' version '2.0.0' - - id 'com.gradleup.shadow' version '8.3.6' apply false - id 'me.champeau.jmh' version '0.7.0' apply false - id 'org.gradle.playframework' version '0.13' apply false - id 'info.solidsoft.pitest' version '1.9.11' apply false -} - -description = 'dd-trace-java' - -def isCI = System.getenv("CI") != null - -apply from: "$rootDir/gradle/repositories.gradle" -apply from: "$rootDir/gradle/scm.gradle" - -spotless { - // only resolve the spotless dependencies once in the build - predeclareDeps() -} - -spotlessPredeclare { - // these need to align with the types and versions in gradle/spotless.gradle - java { - removeUnusedImports() - - // This is the last Google Java Format version that supports Java 8 - googleJavaFormat('1.7') - } - groovyGradle { - greclipse() - } - groovy { - greclipse() - } - kotlinGradle { - ktlint('0.41.0') - } - kotlin { - ktlint('0.41.0') - } - scala { - scalafmt('2.7.5') - } -} -apply from: "$rootDir/gradle/spotless.gradle" -apply from: "$rootDir/gradle/configInversionLinter.gradle" - -def compileTask = tasks.register("compile") - -allprojects { - group = 'com.datadoghq' - version = scmVersion.version - - if (isCI) { - buildDir = "$rootDir/workspace/${projectDir.path.replace(rootDir.path, '')}/build/" - } - - apply from: "$rootDir/gradle/dependencies.gradle" - apply from: "$rootDir/gradle/util.gradle" - - compileTask.configure { - dependsOn tasks.withType(AbstractCompile) - } -} - -tasks.register("latestDepTest") - -nexusPublishing { - repositories { - def forceLocal = project.hasProperty('forceLocal') && forceLocal - if (forceLocal && !isCI) { - local { - // For testing, use with https://hub.docker.com/r/sonatype/nexus - // docker run --rm -d -p 8081:8081 --name nexus sonatype/nexus:oss - // ./gradlew publishToLocal - // Doesn't work for testing releases though... (due to staging) - nexusUrl = uri("http://localhost:8081/nexus/content/repositories/releases/") - snapshotRepositoryUrl = uri("http://localhost:8081/nexus/content/repositories/snapshots/") - username = "admin" - password = "admin123" - allowInsecureProtocol = true - } - } else { - // see https://github.com/gradle-nexus/publish-plugin#publishing-to-maven-central-via-sonatype-central - // For official documentation: - // staging repo publishing https://central.sonatype.org/publish/publish-portal-ossrh-staging-api/#configuration - // snapshot publishing https://central.sonatype.org/publish/publish-portal-snapshots/#publishing-via-other-methods - sonatype { - nexusUrl.set(uri("https://ossrh-staging-api.central.sonatype.com/service/local/")) - snapshotRepositoryUrl.set(uri("https://central.sonatype.com/repository/maven-snapshots/")) - username = System.getenv("MAVEN_CENTRAL_USERNAME") - password = System.getenv("MAVEN_CENTRAL_PASSWORD") - } - } - } -} - -def writeMainVersionFileTask = tasks.register('writeMainVersionFile') { - def versionFile = file("${rootProject.buildDir}/main.version") - inputs.property "version", scmVersion.version - outputs.file versionFile - - doFirst { - assert versionFile.parentFile.mkdirs() || versionFile.parentFile.directory - versionFile.text = "${inputs.properties.version}" - } -} - -allprojects { - tasks.withType(JavaForkOptions).configureEach { - maxHeapSize = System.properties["datadog.forkedMaxHeapSize"] - minHeapSize = System.properties["datadog.forkedMinHeapSize"] - jvmArgs "-XX:ErrorFile=/tmp/hs_err_pid%p.log" - jvmArgs "-XX:+HeapDumpOnOutOfMemoryError" - jvmArgs "-XX:HeapDumpPath=/tmp" - } - - tasks.withType(PublishToMavenLocal).configureEach { - it.finalizedBy(writeMainVersionFileTask) - } -} - -apply from: "$rootDir/gradle/ci_jobs.gradle" diff --git a/build.gradle.kts b/build.gradle.kts index 08f3d6ed27c..855a9670ab9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -53,6 +53,7 @@ with(extensions["spotlessPredeclare"] as SpotlessExtension) { } } apply(from = rootDir.resolve("gradle/spotless.gradle")) +apply(from = rootDir.resolve("gradle/configInversionLinter.gradle")) val compileTask = tasks.register("compile") diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index 071ebc52824..3a01cec3280 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -1,7 +1,6 @@ package datadog.environment; import de.thetaphi.forbiddenapis.SuppressForbidden; -import javax.annotation.Nonnull; import javax.annotation.Nullable; /** diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java index e85e28d8eb4..2cd94ba8799 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityServices.java @@ -1,7 +1,5 @@ package datadog.trace.civisibility; -import static datadog.environment.ConfigHelper.getEnvironmentVariables; - import com.squareup.moshi.JsonAdapter; import com.squareup.moshi.Moshi; import com.squareup.moshi.Types; @@ -36,7 +34,6 @@ import datadog.trace.civisibility.source.LinesResolver; import datadog.trace.civisibility.source.index.*; import datadog.trace.civisibility.utils.ShellCommandExecutor; -import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.File; import java.lang.reflect.Type; import java.net.InetSocketAddress; diff --git a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java index c58b8e08c79..873f73584ae 100644 --- a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java +++ b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java @@ -1,7 +1,7 @@ package datadog.trace.logging.ddlogger; -import datadog.environment.SystemProperties; import datadog.environment.ConfigHelper; +import datadog.environment.SystemProperties; import datadog.trace.api.Platform; import datadog.trace.logging.LogLevel; import datadog.trace.logging.LogLevelSwitcher; diff --git a/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java b/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java index 783896a89a7..69ad55a6dbd 100644 --- a/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java +++ b/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java @@ -17,7 +17,6 @@ import com.amazonaws.services.lambda.runtime.RequestHandler; import com.google.auto.service.AutoService; import datadog.environment.ConfigHelper; -import datadog.environment.EnvironmentVariables; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.bootstrap.CallDepthThreadLocalMap; diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java index 2241ec03610..c5a2873bd98 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java @@ -1,9 +1,9 @@ package datadog.trace.bootstrap; -import datadog.environment.ConfigHelper; import static java.util.Collections.emptyList; import static java.util.Collections.singletonList; +import datadog.environment.ConfigHelper; import datadog.json.JsonWriter; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.Closeable; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java index 58a511b295a..f21083895ee 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java @@ -1,7 +1,6 @@ package datadog.trace.bootstrap.config.provider; import datadog.environment.ConfigHelper; -import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; import datadog.trace.util.Strings; import java.util.Map; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java index 881a0d55312..6a6cd2384a5 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java @@ -17,7 +17,6 @@ import static datadog.trace.util.Strings.toEnvVar; import datadog.environment.ConfigHelper; -import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; import datadog.trace.api.ConfigOrigin; import datadog.trace.api.TracePropagationStyle; From 734f9c77b9fe060e80ecb4be447c3e3dc106496f Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 7 Aug 2025 13:36:42 -0400 Subject: [PATCH 25/47] adding more configs post-rebase --- .../src/generator/resources/supported-configurations.json | 2 ++ .../datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index a0e92f72a73..bbd4f688114 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -92,6 +92,7 @@ "DD_CIVISIBILITY_REMOTE_ENV_VARS_PROVIDER_KEY": ["A"], "DD_CIVISIBILITY_REMOTE_ENV_VARS_PROVIDER_URL": ["A"], "DD_CIVISIBILITY_REPO_INDEX_DUPLICATE_KEY_CHECK_ENABLED": ["A"], + "DD_CIVISIBILITY_REPO_INDEX_FOLLOW_SYMLINKS": ["A"], "DD_CIVISIBILITY_RESOURCE_FOLDER_NAMES": ["A"], "DD_CIVISIBILITY_RUM_FLUSH_WAIT_MILLIS": ["A"], "DD_CIVISIBILITY_SCALATEST_FORK_MONITOR_ENABLED": ["A"], @@ -552,6 +553,7 @@ "DD_TRACE_AZURE_FUNCTIONS_ENABLED": ["A"], "DD_TRACE_BAGGAGE_MAX_BYTES": ["A"], "DD_TRACE_BAGGAGE_MAX_ITEMS": ["A"], + "DD_TRACE_BAGGAGE_TAG_KEYS": ["A"], "DD_TRACE_CAFFEINE_ENABLED": ["A"], "DD_TRACE_CASSANDRA_ANALYTICS_ENABLED": ["A"], "DD_TRACE_CASSANDRA_ANALYTICS_SAMPLE_RATE": ["A"], diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java index cc26a631490..7f8d6c2612a 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java @@ -1,5 +1,6 @@ package datadog.trace.civisibility.ci.env; +import de.thetaphi.forbiddenapis.SuppressForbidden; import java.util.Collections; import java.util.Map; @@ -11,6 +12,7 @@ public CiEnvironmentImpl(Map env) { this.env = env; } + @SuppressForbidden public static CiEnvironment local() { Map env; try { From e9ce233648cedf6803eb842266692d83a9ecaa81 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 12 Aug 2025 11:16:36 -0400 Subject: [PATCH 26/47] initialize GeneratedSupportedConfiguratons at buildtime --- components/environment/build.gradle.kts | 2 -- .../nativeimage/NativeImageGeneratorRunnerInstrumentation.java | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index fe01ec936fb..34eb237555c 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -37,8 +37,6 @@ val generateSupportedConfigurations by tasks.registering(JavaExec::class) { outputFile.get().asFile.parentFile.mkdirs() } } -// Ensure Java compilation depends on the generated sources -sourceSets["main"].java.srcDir(layout.buildDirectory.dir("generated/sources/supported")) tasks.named("compileJava") { dependsOn(generateSupportedConfigurations) diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index fa3a0bc92c8..f44d1bc2ec2 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -73,6 +73,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "com.datadog.profiling.controller.TempLocationManager$SingletonHolder:run_time," + "com.datadog.profiling.ddprof.JavaProfilerLoader:run_time," + "datadog.environment.JavaVirtualMachine:rerun," + + "datadog.environment.GeneratedSupportedConfigurations:build_time," + "datadog.trace.agent.tooling.WeakMaps$Adapter:build_time," + "datadog.trace.api.Config:rerun," + "datadog.trace.api.Platform:rerun," From 90f536d8204727f7bfb2a2d33d823fec175bd12b Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 12 Aug 2025 11:26:56 -0400 Subject: [PATCH 27/47] fixing buildtests --- components/environment/build.gradle.kts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index 34eb237555c..fe01ec936fb 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -37,6 +37,8 @@ val generateSupportedConfigurations by tasks.registering(JavaExec::class) { outputFile.get().asFile.parentFile.mkdirs() } } +// Ensure Java compilation depends on the generated sources +sourceSets["main"].java.srcDir(layout.buildDirectory.dir("generated/sources/supported")) tasks.named("compileJava") { dependsOn(generateSupportedConfigurations) From 7a1517e9c16b11ab7354c5a6a282e2b11a1ab7b0 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 12 Aug 2025 11:55:58 -0400 Subject: [PATCH 28/47] adding ConfigInversionStrictStyle --- .../nativeimage/NativeImageGeneratorRunnerInstrumentation.java | 1 + 1 file changed, 1 insertion(+) diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index f44d1bc2ec2..770b7352528 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -82,6 +82,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.env.CapturedEnvironment$ProcessInfo:build_time," + "datadog.trace.api.ConfigCollector:rerun," + "datadog.trace.api.ConfigDefaults:build_time," + + "datadog.trace.api.ConfigInversionStrictStyle:build_time," + "datadog.trace.api.ConfigOrigin:build_time," + "datadog.trace.api.ConfigSetting:build_time," + "datadog.trace.api.EventTracker:build_time," From 5ca61c002f8051b5421175830eb8c08a2fc47a3b Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 13 Aug 2025 14:58:01 -0400 Subject: [PATCH 29/47] refactor ConfigHelper to datadog.trace.api --- components/environment/build.gradle.kts | 1 - .../src/main/java/datadog/trace/bootstrap/Agent.java | 2 +- .../src/main/java/datadog/trace/bootstrap/Library.java | 2 +- .../trace/agent/test/DefaultInstrumenterForkedTest.groovy | 2 +- .../java/datadog/trace/logging/ddlogger/DDLoggerFactory.java | 2 +- .../aws/v1/lambda/LambdaHandlerInstrumentation.java | 2 +- .../java/datadog/trace/instrumentation/maven3/MavenUtils.java | 2 +- gradle/configInversionLinter.gradle | 2 +- internal-api/src/main/java/datadog/trace/api/Config.java | 1 - .../src/main/java/datadog/trace/api}/ConfigHelper.java | 4 ++-- internal-api/src/main/java/datadog/trace/api/ProcessTags.java | 1 - .../java/datadog/trace/api}/SupportedConfigurationSource.java | 3 ++- .../main/java/datadog/trace/api/env/CapturedEnvironment.java | 2 +- .../trace/bootstrap/config/provider/AgentArgsInjector.java | 2 +- .../trace/bootstrap/config/provider/ConfigProvider.java | 2 +- .../bootstrap/config/provider/EnvironmentConfigSource.java | 2 +- .../config/provider/OtelEnvironmentConfigSource.java | 2 +- .../trace/bootstrap/config/provider/StableConfigParser.java | 2 +- internal-api/src/main/java/datadog/trace/util/PidHelper.java | 2 +- .../src/main/java/datadog/trace/util/TempLocationManager.java | 2 +- .../src/test/groovy/datadog/trace/api/ConfigTest.groovy | 2 +- .../groovy/datadog/trace/api/InstrumenterConfigTest.groovy | 2 +- .../trace/bootstrap/config/provider/ConfigProviderTest.groovy | 2 +- .../bootstrap/config/provider/StableConfigParserTest.groovy | 2 +- .../src/test/java/datadog/trace/api}/ConfigHelperTest.java | 3 +-- .../datadog/trace/api}/TestSupportedConfigurationSource.java | 2 +- .../src/main/java/datadog/telemetry/TelemetryRequest.java | 2 +- 27 files changed, 26 insertions(+), 29 deletions(-) rename {components/environment/src/main/java/datadog/environment => internal-api/src/main/java/datadog/trace/api}/ConfigHelper.java (97%) rename {components/environment/src/main/java/datadog/environment => internal-api/src/main/java/datadog/trace/api}/SupportedConfigurationSource.java (91%) rename {components/environment/src/test/java/datadog/environment => internal-api/src/test/java/datadog/trace/api}/ConfigHelperTest.java (99%) rename {components/environment/src/test/java/datadog/environment => internal-api/src/test/java/datadog/trace/api}/TestSupportedConfigurationSource.java (97%) diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index fe01ec936fb..2b2727863c6 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -63,7 +63,6 @@ val excludedClassesCoverage by extra { "datadog.environment.JavaVirtualMachine.JvmOptionsHolder", // depends on OS and JVM vendor "datadog.environment.JvmOptions", // depends on OS and JVM vendor "datadog.environment.OperatingSystem", // depends on OS - "datadog.environment.SupportedConfigurationSource", // wrapper class ) } val excludedClassesBranchCoverage by extra { diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java index 032e491855c..69db3cb6ed6 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java @@ -17,12 +17,12 @@ import static datadog.trace.util.Strings.propertyNameToSystemPropertyName; import static datadog.trace.util.Strings.toEnvVar; -import datadog.environment.ConfigHelper; import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import datadog.environment.SystemProperties; import datadog.trace.api.Config; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.Platform; import datadog.trace.api.StatsDClientManager; import datadog.trace.api.WithGlobalTracer; diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java index baa7c67e066..51197e83df0 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java @@ -1,6 +1,6 @@ package datadog.trace.bootstrap; -import datadog.environment.ConfigHelper; +import datadog.trace.api.ConfigHelper; import java.util.EnumSet; import org.slf4j.Logger; diff --git a/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy b/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy index 85c7b781442..32937a882c2 100644 --- a/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy +++ b/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy @@ -1,6 +1,6 @@ package datadog.trace.agent.test -import datadog.environment.ConfigHelper +import datadog.trace.api.ConfigHelper import datadog.trace.agent.tooling.InstrumenterModule import datadog.trace.agent.tooling.bytebuddy.matcher.DDElementMatchers import datadog.trace.agent.tooling.bytebuddy.outline.TypePoolFacade diff --git a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java index 873f73584ae..a1ec70f495a 100644 --- a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java +++ b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java @@ -1,7 +1,7 @@ package datadog.trace.logging.ddlogger; -import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.Platform; import datadog.trace.logging.LogLevel; import datadog.trace.logging.LogLevelSwitcher; diff --git a/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java b/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java index 69ad55a6dbd..2357d28d598 100644 --- a/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java +++ b/dd-java-agent/instrumentation/aws-lambda-handler/src/main/java/datadog/trace/instrumentation/aws/v1/lambda/LambdaHandlerInstrumentation.java @@ -16,9 +16,9 @@ import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.RequestHandler; import com.google.auto.service.AutoService; -import datadog.environment.ConfigHelper; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; +import datadog.trace.api.ConfigHelper; import datadog.trace.bootstrap.CallDepthThreadLocalMap; import datadog.trace.bootstrap.instrumentation.api.AgentScope; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; diff --git a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java index f7fe3336119..d11eee72cf3 100644 --- a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java +++ b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java @@ -1,6 +1,6 @@ package datadog.trace.instrumentation.maven3; -import datadog.environment.ConfigHelper; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.civisibility.domain.JavaAgent; import datadog.trace.util.MethodHandles; import datadog.trace.util.Strings; diff --git a/gradle/configInversionLinter.gradle b/gradle/configInversionLinter.gradle index c7fa14ba680..fcf057c7f2f 100644 --- a/gradle/configInversionLinter.gradle +++ b/gradle/configInversionLinter.gradle @@ -80,7 +80,7 @@ tasks.register('checkEnvironmentVariablesUsage') { // Exclude specific files (relative to projectDir) exclude '**/build/**' - exclude 'components/environment/src/main/java/datadog/environment/ConfigHelper.java' + exclude 'internal-api/src/main/java/datadog/trace/api/ConfigHelper.java' } def matches = [] diff --git a/internal-api/src/main/java/datadog/trace/api/Config.java b/internal-api/src/main/java/datadog/trace/api/Config.java index eaf975a8c29..5d1a13c39ed 100644 --- a/internal-api/src/main/java/datadog/trace/api/Config.java +++ b/internal-api/src/main/java/datadog/trace/api/Config.java @@ -633,7 +633,6 @@ import static datadog.trace.util.CollectionUtils.tryMakeImmutableSet; import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; -import datadog.environment.ConfigHelper; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import datadog.environment.SystemProperties; diff --git a/components/environment/src/main/java/datadog/environment/ConfigHelper.java b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java similarity index 97% rename from components/environment/src/main/java/datadog/environment/ConfigHelper.java rename to internal-api/src/main/java/datadog/trace/api/ConfigHelper.java index eefddd448e0..028247a773e 100644 --- a/components/environment/src/main/java/datadog/environment/ConfigHelper.java +++ b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java @@ -1,6 +1,6 @@ -package datadog.environment; +package datadog.trace.api; -import datadog.trace.api.ConfigInversionStrictStyle; +import datadog.environment.EnvironmentVariables; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.util.LinkedHashMap; import java.util.List; diff --git a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java index eb5dacd16ef..4ea4784160e 100644 --- a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java +++ b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java @@ -1,6 +1,5 @@ package datadog.trace.api; -import datadog.environment.ConfigHelper; import datadog.trace.api.env.CapturedEnvironment; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; import datadog.trace.util.TraceUtils; diff --git a/components/environment/src/main/java/datadog/environment/SupportedConfigurationSource.java b/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java similarity index 91% rename from components/environment/src/main/java/datadog/environment/SupportedConfigurationSource.java rename to internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java index 17b4f0e3ec8..d13d9ffed9f 100644 --- a/components/environment/src/main/java/datadog/environment/SupportedConfigurationSource.java +++ b/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java @@ -1,5 +1,6 @@ -package datadog.environment; +package datadog.trace.api; +import datadog.environment.GeneratedSupportedConfigurations; import java.util.List; import java.util.Map; import java.util.Set; diff --git a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java b/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java index 200d1037eb2..d6edf8ae21c 100644 --- a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java +++ b/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java @@ -1,7 +1,7 @@ package datadog.trace.api.env; -import datadog.environment.ConfigHelper; import datadog.environment.JavaVirtualMachine; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.config.GeneralConfig; import java.io.File; import java.util.HashMap; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java index f21083895ee..eea7fac901a 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java @@ -1,7 +1,7 @@ package datadog.trace.bootstrap.config.provider; -import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; +import datadog.trace.api.ConfigHelper; import datadog.trace.util.Strings; import java.util.Map; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java index 1b38a41d48e..d6281b391f3 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java @@ -3,9 +3,9 @@ import static datadog.trace.api.config.GeneralConfig.CONFIGURATION_FILE; import static datadog.trace.api.config.GeneralConfig.CONFIG_INVERSION_STRICT; -import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; import datadog.trace.api.ConfigCollector; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.ConfigInversionStrictStyle; import datadog.trace.api.ConfigOrigin; import de.thetaphi.forbiddenapis.SuppressForbidden; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java index e8864cad060..f6bfae363a4 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java @@ -3,7 +3,7 @@ import static datadog.trace.api.ConfigOrigin.ENV; import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; -import datadog.environment.ConfigHelper; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.ConfigOrigin; final class EnvironmentConfigSource extends ConfigProvider.Source { diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java index 6a6cd2384a5..ad74d12db22 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java @@ -16,8 +16,8 @@ import static datadog.trace.api.config.TracerConfig.TRACE_SAMPLE_RATE; import static datadog.trace.util.Strings.toEnvVar; -import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.ConfigOrigin; import datadog.trace.api.TracePropagationStyle; import datadog.trace.api.telemetry.OtelEnvMetricCollector; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java index a07a9d3e3d4..d129c1c665e 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java @@ -1,7 +1,7 @@ package datadog.trace.bootstrap.config.provider; -import datadog.environment.ConfigHelper; import datadog.environment.SystemProperties; +import datadog.trace.api.ConfigHelper; import datadog.trace.bootstrap.config.provider.stableconfig.Rule; import datadog.trace.bootstrap.config.provider.stableconfig.Selector; import datadog.trace.bootstrap.config.provider.stableconfig.StableConfig; diff --git a/internal-api/src/main/java/datadog/trace/util/PidHelper.java b/internal-api/src/main/java/datadog/trace/util/PidHelper.java index aaf07f4b9fc..55bd2d512ee 100644 --- a/internal-api/src/main/java/datadog/trace/util/PidHelper.java +++ b/internal-api/src/main/java/datadog/trace/util/PidHelper.java @@ -1,8 +1,8 @@ package datadog.trace.util; -import datadog.environment.ConfigHelper; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; +import datadog.trace.api.ConfigHelper; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.IOException; import java.lang.management.ManagementFactory; diff --git a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java index 009a1448aa3..d086c7c2399 100644 --- a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java +++ b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java @@ -2,7 +2,7 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; -import datadog.environment.ConfigHelper; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; diff --git a/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy index 8ee88a7de3f..c354c798bb5 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy @@ -1,6 +1,6 @@ package datadog.trace.api -import datadog.environment.ConfigHelper + import datadog.trace.api.env.FixedCapturedEnvironment import datadog.trace.bootstrap.config.provider.AgentArgsInjector import datadog.trace.bootstrap.config.provider.ConfigConverter diff --git a/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy index 439c36ca9c4..0a4bef828b7 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/InstrumenterConfigTest.groovy @@ -1,6 +1,6 @@ package datadog.trace.api -import datadog.environment.ConfigHelper + import datadog.trace.test.util.DDSpecification class InstrumenterConfigTest extends DDSpecification { diff --git a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy index 3209caa7edd..c8330b1c3bc 100644 --- a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/ConfigProviderTest.groovy @@ -3,7 +3,7 @@ package datadog.trace.bootstrap.config.provider import datadog.trace.test.util.DDSpecification import spock.lang.Shared import datadog.trace.api.ConfigInversionStrictStyle -import datadog.environment.ConfigHelper +import datadog.trace.api.ConfigHelper import static datadog.trace.api.config.TracerConfig.TRACE_HTTP_SERVER_PATH_RESOURCE_NAME_MAPPING diff --git a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy index 3d9b52fecd1..28b405e1bd5 100644 --- a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy @@ -1,6 +1,6 @@ package datadog.trace.bootstrap.config.provider -import datadog.environment.ConfigHelper +import datadog.trace.api.ConfigHelper import datadog.trace.api.ConfigInversionStrictStyle import datadog.trace.test.util.DDSpecification import java.nio.file.Files diff --git a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java b/internal-api/src/test/java/datadog/trace/api/ConfigHelperTest.java similarity index 99% rename from components/environment/src/test/java/datadog/environment/ConfigHelperTest.java rename to internal-api/src/test/java/datadog/trace/api/ConfigHelperTest.java index e26f759f803..04afcaf02b3 100644 --- a/components/environment/src/test/java/datadog/environment/ConfigHelperTest.java +++ b/internal-api/src/test/java/datadog/trace/api/ConfigHelperTest.java @@ -1,10 +1,9 @@ -package datadog.environment; +package datadog.trace.api; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNull; -import datadog.trace.api.ConfigInversionStrictStyle; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Arrays; diff --git a/components/environment/src/test/java/datadog/environment/TestSupportedConfigurationSource.java b/internal-api/src/test/java/datadog/trace/api/TestSupportedConfigurationSource.java similarity index 97% rename from components/environment/src/test/java/datadog/environment/TestSupportedConfigurationSource.java rename to internal-api/src/test/java/datadog/trace/api/TestSupportedConfigurationSource.java index 31e11ce020a..8fd4f8f33d5 100644 --- a/components/environment/src/test/java/datadog/environment/TestSupportedConfigurationSource.java +++ b/internal-api/src/test/java/datadog/trace/api/TestSupportedConfigurationSource.java @@ -1,4 +1,4 @@ -package datadog.environment; +package datadog.trace.api; import java.util.List; import java.util.Map; diff --git a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java index dddc2950458..02879d5d5f7 100644 --- a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java +++ b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java @@ -2,7 +2,6 @@ import datadog.common.container.ContainerInfo; import datadog.communication.ddagent.TracerVersion; -import datadog.environment.ConfigHelper; import datadog.telemetry.api.DistributionSeries; import datadog.telemetry.api.Integration; import datadog.telemetry.api.LogMessage; @@ -10,6 +9,7 @@ import datadog.telemetry.api.RequestType; import datadog.telemetry.dependency.Dependency; import datadog.trace.api.Config; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.ConfigSetting; import datadog.trace.api.DDTags; import datadog.trace.api.InstrumenterConfig; From abc0b64767a6013d3aa757f361724a1b048499cc Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 13 Aug 2025 15:10:55 -0400 Subject: [PATCH 30/47] adding configs and updating gradle files to reflect ConfigHelper refactor --- .../resources/supported-configurations.json | 148 +++++++++++++++++- dd-java-agent/build.gradle | 2 +- .../BootstrapInitializationTelemetry.java | 2 +- utils/container-utils/build.gradle.kts | 3 +- .../common/container/ServerlessInfo.java | 2 +- 5 files changed, 144 insertions(+), 13 deletions(-) diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/environment/src/generator/resources/supported-configurations.json index bbd4f688114..725fef3703e 100644 --- a/components/environment/src/generator/resources/supported-configurations.json +++ b/components/environment/src/generator/resources/supported-configurations.json @@ -282,18 +282,20 @@ "DD_PROFILING_API_KEY": ["A"], "DD_PROFILING_API_KEY_FILE": ["A"], "DD_PROFILING_ASYNC_ALLOC_INTERVAL": ["A"], + "DD_PROFILING_ASYNC_CPU_ENABLED": ["A"], "DD_PROFILING_ASYNC_CPU_INTERVAL_MS": ["A"], "DD_PROFILING_ASYNC_CSTACK": ["A"], "DD_PROFILING_ASYNC_DEBUG_LIB": ["A"], - "DD_PROFILING_EXPERIMENTAL_ASYNC_WALL_JVMTI": ["A"], "DD_PROFILING_ASYNC_LINENUMBERS": ["A"], "DD_PROFILING_ASYNC_LIVEHEAP_CAPACITY": ["A"], + "DD_PROFILING_ASYNC_LIVEHEAP_ENABLED": ["A"], "DD_PROFILING_ASYNC_LIVEHEAP_INTERVAL": ["A"], "DD_PROFILING_ASYNC_LIVEHEAP_SAMPLE_PERCENT": ["A"], "DD_PROFILING_ASYNC_LOGLEVEL": ["A"], "DD_PROFILING_ASYNC_SAFEMODE": ["A"], "DD_PROFILING_ASYNC_WALL_COLLAPSING": ["A"], "DD_PROFILING_ASYNC_WALL_CONTEXT_FILTER": ["A"], + "DD_PROFILING_ASYNC_WALL_ENABLED": ["A"], "DD_PROFILING_ASYNC_WALL_INTERVAL_MS": ["A"], "DD_PROFILING_AUXILIARY": ["A"], "DD_PROFILING_BACKPRESSURE_SAMPLE_LIMIT": ["A"], @@ -342,6 +344,7 @@ "DD_PROFILING_EXCLUDE_AGENT_THREADS": ["A"], "DD_PROFILING_EXPERIMENTAL_ASYNC_SCHEDULING_EVENT": ["A"], "DD_PROFILING_EXPERIMENTAL_ASYNC_SCHEDULING_EVENT_INTERVAL": ["A"], + "DD_PROFILING_EXPERIMENTAL_ASYNC_WALL_JVMTI": ["A"], "DD_PROFILING_EXPERIMENTAL_DDPROF_SCHEDULING_EVENT": ["A"], "DD_PROFILING_EXPERIMENTAL_DDPROF_SCHEDULING_EVENT_INTERVAL": ["A"], "DD_PROFILING_EXPERIMENTAL_DDPROF_WALL_JVMTI": ["A"], @@ -1117,7 +1120,9 @@ "DD_TRACE_SERVLET_2_ENABLED": ["A"], "DD_TRACE_SERVLET_3_ANALYTICS_ENABLED": ["A"], "DD_TRACE_SERVLET_3_ANALYTICS_SAMPLE_RATE": ["A"], + "DD_TRACE_SERVLET_3_ASYNC_CONTEXT_ENABLED": ["A"], "DD_TRACE_SERVLET_3_ENABLED": ["A"], + "DD_TRACE_SERVLET_5_ASYNC_CONTEXT_ENABLED": ["A"], "DD_TRACE_SERVLET_5_ENABLED": ["A"], "DD_TRACE_SERVLET_ANALYTICS_ENABLED": ["A"], "DD_TRACE_SERVLET_ANALYTICS_SAMPLE_RATE": ["A"], @@ -1341,6 +1346,7 @@ "DD_TRACE_AKKA_ACTOR_SEND_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_ACTOR_SEND_ENABLED","DD_INTEGRATION_AKKA_ACTOR_SEND_ENABLED"], "DD_TRACE_AKKA_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_CONCURRENT_ENABLED","DD_INTEGRATION_AKKA_CONCURRENT_ENABLED"], "DD_TRACE_AKKA_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP2_ENABLED","DD_INTEGRATION_AKKA_HTTP2_ENABLED"], + "DD_TRACE_AKKA_HTTP_ANALYTICS_ENABLED": ["DD_AKKA_HTTP_ANALYTICS_ENABLED"], "DD_TRACE_AKKA_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_AKKA_HTTP_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_AKKA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_AKKA_HTTP_CLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_AKKA_HTTP_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED","DD_INTEGRATION_AKKA_HTTP_CLIENT_ENABLED"], @@ -1350,7 +1356,7 @@ "DD_TRACE_ALLOCATEDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_ALLOCATEDIRECT_ENABLED","DD_INTEGRATION_ALLOCATEDIRECT_ENABLED"], "DD_TRACE_AMQP_ANALYTICS_SAMPLE_RATE": ["DD_AMQP_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_AMQP_ENABLED": ["DD_TRACE_INTEGRATION_AMQP_ENABLED","DD_INTEGRATION_AMQP_ENABLED"], - "DD_TRACE_ANNOTATIONS_LEGACY_TRACING_ENABLED":["DD_ANNOTATIONS_LEGACY_TRACING_ENABLED"], + "DD_TRACE_ANNOTATIONS_LEGACY_TRACING_ENABLED": ["DD_ANNOTATIONS_LEGACY_TRACING_ENABLED"], "DD_TRACE_APACHE_HTTPASYNCCLIENT5_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED","DD_INTEGRATION_APACHE_HTTPASYNCCLIENT5_ENABLED"], "DD_TRACE_APACHE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE": ["DD_APACHE_HTTPASYNCCLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_APACHE_HTTPASYNCCLIENT_ENABLED": ["DD_TRACE_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED","DD_INTEGRATION_APACHE_HTTPASYNCCLIENT_ENABLED"], @@ -1452,25 +1458,29 @@ "DD_TRACE_GOOGLE_PUBSUB_LEGACY_TRACING_ENABLED": ["DD_GOOGLE_PUBSUB_LEGACY_TRACING_ENABLED"], "DD_TRACE_GOOGLE_PUBSUB_PUBLISHER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_PUBLISHER_ENABLED"], "DD_TRACE_GOOGLE_PUBSUB_RECEIVER_ENABLED": ["DD_TRACE_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED","DD_INTEGRATION_GOOGLE_PUBSUB_RECEIVER_ENABLED"], - "DD_TRACE_GRADLE_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_ENABLED","DD_INTEGRATION_GRADLE_ENABLED"], "DD_TRACE_GRADLE_BUILD_LISTENER_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_BUILD_LISTENER_ENABLED","DD_INTEGRATION_GRADLE_BUILD_LISTENER_ENABLED"], "DD_TRACE_GRADLE_BUILD_SCOPE_SERVICES_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_BUILD_SCOPE_SERVICES_ENABLED","DD_INTEGRATION_GRADLE_BUILD_SCOPE_SERVICES_ENABLED"], - "DD_TRACE_GRADLE_DAEMON_LOGGING_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_DAEMON_LOGGING_ENABLED","DD_INTEGRATION_GRADLE_DAEMON_LOGGING_ENABLED"], "DD_TRACE_GRADLE_DAEMON_JVM_OPTIONS_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_DAEMON_JVM_OPTIONS_ENABLED","DD_INTEGRATION_GRADLE_DAEMON_JVM_OPTIONS_ENABLED"], + "DD_TRACE_GRADLE_DAEMON_LOGGING_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_DAEMON_LOGGING_ENABLED","DD_INTEGRATION_GRADLE_DAEMON_LOGGING_ENABLED"], + "DD_TRACE_GRADLE_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_ENABLED","DD_INTEGRATION_GRADLE_ENABLED"], "DD_TRACE_GRADLE_PLUGIN_INJECTOR_ENABLED": ["DD_TRACE_INTEGRATION_GRADLE_PLUGIN_INJECTOR_ENABLED","DD_INTEGRATION_GRADLE_PLUGIN_INJECTOR_ENABLED"], "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE": ["DD_GRAPHQL_JAVA_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_GRAPHQL_JAVA_ENABLED": ["DD_TRACE_INTEGRATION_GRAPHQL_JAVA_ENABLED","DD_INTEGRATION_GRAPHQL_JAVA_ENABLED"], + "DD_TRACE_GRIZZLY_ANALYTICS_ENABLED": ["DD_GRIZZLY_ANALYTICS_ENABLED"], "DD_TRACE_GRIZZLY_ANALYTICS_SAMPLE_RATE": ["DD_GRIZZLY_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_GRIZZLY_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_GRIZZLY_CLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_GRIZZLY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_CLIENT_ENABLED","DD_INTEGRATION_GRIZZLY_CLIENT_ENABLED"], "DD_TRACE_GRIZZLY_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_ENABLED","DD_INTEGRATION_GRIZZLY_ENABLED"], "DD_TRACE_GRIZZLY_FILTERCHAIN_ENABLED": ["DD_TRACE_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED","DD_INTEGRATION_GRIZZLY_FILTERCHAIN_ENABLED"], + "DD_TRACE_GRPC_ANALYTICS_ENABLED": ["DD_GRPC_ANALYTICS_ENABLED"], "DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE": ["DD_GRPC_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_GRPC_CLIENT_ANALYTICS_ENABLED": ["DD_GRPC_CLIENT_ANALYTICS_ENABLED"], "DD_TRACE_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_GRPC_CLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_GRPC_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_CLIENT_ENABLED","DD_INTEGRATION_GRPC_CLIENT_ENABLED"], "DD_TRACE_GRPC_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_ENABLED","DD_INTEGRATION_GRPC_ENABLED"], "DD_TRACE_GRPC_MESSAGE_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_MESSAGE_ENABLED","DD_INTEGRATION_GRPC_MESSAGE_ENABLED"], "DD_TRACE_GRPC_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_NETTY_ENABLED","DD_INTEGRATION_GRPC_NETTY_ENABLED"], + "DD_TRACE_GRPC_SERVER_ANALYTICS_ENABLED": ["DD_GRPC_SERVER_ANALYTICS_ENABLED"], "DD_TRACE_GRPC_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_GRPC_SERVER_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_GRPC_SERVER_CODE_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED","DD_INTEGRATION_GRPC_SERVER_CODE_ORIGIN_ENABLED"], "DD_TRACE_GRPC_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_GRPC_SERVER_ENABLED","DD_INTEGRATION_GRPC_SERVER_ENABLED"], @@ -1494,6 +1504,7 @@ "DD_TRACE_HTTPCLIENT_REDIRECT_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED","DD_INTEGRATION_HTTPCLIENT_REDIRECT_ENABLED"], "DD_TRACE_HTTPCORE_5_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_5_ENABLED","DD_INTEGRATION_HTTPCORE_5_ENABLED"], "DD_TRACE_HTTPCORE_ENABLED": ["DD_TRACE_INTEGRATION_HTTPCORE_ENABLED","DD_INTEGRATION_HTTPCORE_ENABLED"], + "DD_TRACE_HTTPURLCONNECTION_ANALYTICS_ENABLED": ["DD_HTTPURLCONNECTION_ANALYTICS_ENABLED"], "DD_TRACE_HTTPURLCONNECTION_ANALYTICS_SAMPLE_RATE": ["DD_HTTPURLCONNECTION_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_HTTPURLCONNECTION_ENABLED": ["DD_TRACE_INTEGRATION_HTTPURLCONNECTION_ENABLED","DD_INTEGRATION_HTTPURLCONNECTION_ENABLED"], "DD_TRACE_HYSTRIX_ENABLED": ["DD_TRACE_INTEGRATION_HYSTRIX_ENABLED","DD_INTEGRATION_HYSTRIX_ENABLED"], @@ -1507,11 +1518,11 @@ "DD_TRACE_INTEGRATION_GRPC_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_GRPC_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_INTEGRATION_HIBERNATE_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HIBERNATE_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_INTEGRATION_HTTPASYNCCLIENT5_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPASYNCCLIENT5_MATCHING_SHORTCUT_ENABLED"], + "DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_INTEGRATION_HTTPCLIENT5_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPCLIENT5_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_INTEGRATION_HTTPCLIENT_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPCLIENT_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_INTEGRATION_JAVA_CONCURRENT_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_JAVA_CONCURRENT_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_OPENTELEMETRY_EXPERIMENTAL_MATCHING_SHORTCUT_ENABLED"], - "DD_TRACE_INTEGRATION_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED": ["DD_INTEGRATION_HTTPASYNCCLIENT_MATCHING_SHORTCUT_ENABLED"], "DD_TRACE_JACKSON_1_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_1_ENABLED","DD_INTEGRATION_JACKSON_1_ENABLED"], "DD_TRACE_JACKSON_2_12_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_12_ENABLED","DD_INTEGRATION_JACKSON_2_12_ENABLED"], "DD_TRACE_JACKSON_2_16_ENABLED": ["DD_TRACE_INTEGRATION_JACKSON_2_16_ENABLED","DD_INTEGRATION_JACKSON_2_16_ENABLED"], @@ -1556,6 +1567,7 @@ "DD_TRACE_JAX_WS_ENABLED": ["DD_TRACE_INTEGRATION_JAX_WS_ENABLED","DD_INTEGRATION_JAX_WS_ENABLED"], "DD_TRACE_JBOSS_LOGMANAGER_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_LOGMANAGER_ENABLED","DD_INTEGRATION_JBOSS_LOGMANAGER_ENABLED"], "DD_TRACE_JBOSS_MODULES_ENABLED": ["DD_TRACE_INTEGRATION_JBOSS_MODULES_ENABLED","DD_INTEGRATION_JBOSS_MODULES_ENABLED"], + "DD_TRACE_JDBC_ANALYTICS_ENABLED": ["DD_JDBC_ANALYTICS_ENABLED"], "DD_TRACE_JDBC_ANALYTICS_SAMPLE_RATE": ["DD_JDBC_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_JDBC_DATASOURCE_ANALYTICS_SAMPLE_RATE": ["DD_JDBC_DATASOURCE_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_JDBC_DATASOURCE_ENABLED": ["DD_TRACE_INTEGRATION_JDBC_DATASOURCE_ENABLED","DD_INTEGRATION_JDBC_DATASOURCE_ENABLED"], @@ -1565,6 +1577,7 @@ "DD_TRACE_JEDIS_ENABLED": ["DD_TRACE_INTEGRATION_JEDIS_ENABLED","DD_INTEGRATION_JEDIS_ENABLED"], "DD_TRACE_JEE_ENV_ENTRY_ENABLED": ["DD_TRACE_INTEGRATION_JEE_ENV_ENTRY_ENABLED","DD_INTEGRATION_JEE_ENV_ENTRY_ENABLED"], "DD_TRACE_JERSEY_ENABLED": ["DD_TRACE_INTEGRATION_JERSEY_ENABLED","DD_INTEGRATION_JERSEY_ENABLED"], + "DD_TRACE_JETTY_ANALYTICS_ENABLED": ["DD_JETTY_ANALYTICS_ENABLED"], "DD_TRACE_JETTY_ANALYTICS_SAMPLE_RATE": ["DD_JETTY_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_JETTY_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_JETTY_CLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_JETTY_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_JETTY_CLIENT_ENABLED","DD_INTEGRATION_JETTY_CLIENT_ENABLED"], @@ -1597,6 +1610,7 @@ "DD_TRACE_JMXFETCH_{CHECK_NAME}_ENABLED": ["DD_JMXFETCH_{CHECK_NAME}_ENABLED"], "DD_TRACE_JNI_ENABLED": ["DD_TRACE_INTEGRATION_JNI_ENABLED","DD_INTEGRATION_JNI_ENABLED"], "DD_TRACE_JOSE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JOSE_JWT_ENABLED","DD_INTEGRATION_JOSE_JWT_ENABLED"], + "DD_TRACE_JSP_ANALYTICS_ENABLED": ["DD_JSP_ANALYTICS_ENABLED"], "DD_TRACE_JSP_ANALYTICS_SAMPLE_RATE": ["DD_JSP_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_JSP_COMPILE_ENABLED": ["DD_TRACE_INTEGRATION_JSP_COMPILE_ENABLED","DD_INTEGRATION_JSP_COMPILE_ENABLED"], "DD_TRACE_JSP_ENABLED": ["DD_TRACE_INTEGRATION_JSP_ENABLED","DD_INTEGRATION_JSP_ENABLED"], @@ -1612,14 +1626,17 @@ "DD_TRACE_JWT_ENABLED": ["DD_TRACE_INTEGRATION_JWT_ENABLED","DD_INTEGRATION_JWT_ENABLED"], "DD_TRACE_KAFKA_0_11_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_0_11_ENABLED","DD_INTEGRATION_KAFKA_0_11_ENABLED"], "DD_TRACE_KAFKA_3_8_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_3_8_ENABLED","DD_INTEGRATION_KAFKA_3_8_ENABLED"], + "DD_TRACE_KAFKA_ANALYTICS_ENABLED": ["DD_KAFKA_ANALYTICS_ENABLED"], "DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE": ["DD_KAFKA_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_KAFKA_CLIENT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED","DD_INTEGRATION_KAFKA_CLIENT_PROPAGATION_ENABLED"], "DD_TRACE_KAFKA_CONNECT_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_CONNECT_ENABLED","DD_INTEGRATION_KAFKA_CONNECT_ENABLED"], + "DD_TRACE_KAFKA_E2E_DURATION_ENABLED": ["DD_KAFKA_E2E_DURATION_ENABLED"], "DD_TRACE_KAFKA_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_ENABLED","DD_INTEGRATION_KAFKA_ENABLED"], "DD_TRACE_KAFKA_LEGACY_TRACING_ENABLED": ["DD_KAFKA_LEGACY_TRACING_ENABLED"], "DD_TRACE_KAFKA_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_PROPAGATION_ENABLED","DD_INTEGRATION_KAFKA_PROPAGATION_ENABLED"], "DD_TRACE_KAFKA_STREAMS_ANALYTICS_SAMPLE_RATE": ["DD_KAFKA_STREAMS_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_KAFKA_STREAMS_ENABLED": ["DD_TRACE_INTEGRATION_KAFKA_STREAMS_ENABLED","DD_INTEGRATION_KAFKA_STREAMS_ENABLED"], + "DD_TRACE_KAFKA_TIME_IN_QUEUE_ENABLED": ["DD_KAFKA_TIME_IN_QUEUE_ENABLED"], "DD_TRACE_KARATE_ENABLED": ["DD_TRACE_INTEGRATION_KARATE_ENABLED","DD_INTEGRATION_KARATE_ENABLED"], "DD_TRACE_KOTLIN_COROUTINE_ENABLED": ["DD_TRACE_INTEGRATION_KOTLIN_COROUTINE_ENABLED","DD_INTEGRATION_KOTLIN_COROUTINE_ENABLED"], "DD_TRACE_LEGACY_E2E_DURATION_ENABLED": ["DD_LEGACY_E2E_DURATION_ENABLED"], @@ -1650,6 +1667,7 @@ "DD_TRACE_MMAP_ENABLED": ["DD_TRACE_INTEGRATION_MMAP_ENABLED","DD_INTEGRATION_MMAP_ENABLED"], "DD_TRACE_MONGO_3_1_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_1_ENABLED","DD_INTEGRATION_MONGO_3_1_ENABLED"], "DD_TRACE_MONGO_3_4_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_3_4_ENABLED","DD_INTEGRATION_MONGO_3_4_ENABLED"], + "DD_TRACE_MONGO_ANALYTICS_ENABLED": ["DD_MONGO_ANALYTICS_ENABLED"], "DD_TRACE_MONGO_ANALYTICS_SAMPLE_RATE": ["DD_MONGO_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_MONGO_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_ENABLED","DD_INTEGRATION_MONGO_ENABLED"], "DD_TRACE_MONGO_REACTIVESTREAMS_ENABLED": ["DD_TRACE_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED","DD_INTEGRATION_MONGO_REACTIVESTREAMS_ENABLED"], @@ -1659,11 +1677,14 @@ "DD_TRACE_MULTIPART_ENABLED": ["DD_TRACE_INTEGRATION_MULTIPART_ENABLED","DD_INTEGRATION_MULTIPART_ENABLED"], "DD_TRACE_NATIVE_IMAGE_ENABLED": ["DD_TRACE_INTEGRATION_NATIVE_IMAGE_ENABLED","DD_INTEGRATION_NATIVE_IMAGE_ENABLED"], "DD_TRACE_NETTY_3_8_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_3_8_ENABLED","DD_INTEGRATION_NETTY_3_8_ENABLED"], + "DD_TRACE_NETTY_3_9_ANALYTICS_ENABLED": ["DD_NETTY_3_9_ANALYTICS_ENABLED"], "DD_TRACE_NETTY_3_9_ANALYTICS_SAMPLE_RATE": ["DD_NETTY_3_9_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_NETTY_4_0_ANALYTICS_ENABLED": ["DD_NETTY_4_0_ANALYTICS_ENABLED"], "DD_TRACE_NETTY_4_0_ANALYTICS_SAMPLE_RATE": ["DD_NETTY_4_0_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_NETTY_4_0_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_0_ENABLED","DD_INTEGRATION_NETTY_4_0_ENABLED"], "DD_TRACE_NETTY_4_1_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_ENABLED","DD_INTEGRATION_NETTY_4_1_ENABLED"], "DD_TRACE_NETTY_4_1_HTTP2_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_4_1_HTTP2_ENABLED","DD_INTEGRATION_NETTY_4_1_HTTP2_ENABLED"], + "DD_TRACE_NETTY_ANALYTICS_ENABLED": ["DD_NETTY_ANALYTICS_ENABLED"], "DD_TRACE_NETTY_ANALYTICS_SAMPLE_RATE": ["DD_NETTY_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_NETTY_CONCURRENT_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_CONCURRENT_ENABLED","DD_INTEGRATION_NETTY_CONCURRENT_ENABLED"], "DD_TRACE_NETTY_ENABLED": ["DD_TRACE_INTEGRATION_NETTY_ENABLED","DD_INTEGRATION_NETTY_ENABLED"], @@ -1687,7 +1708,9 @@ "DD_TRACE_OPENTELEMETRY_1_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_1_ENABLED","DD_INTEGRATION_OPENTELEMETRY_1_ENABLED"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED","DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_20_ENABLED"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED","DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_1_26_ENABLED"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_ENABLED": ["DD_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_ENABLED"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_SAMPLE_RATE": ["DD_OPENTELEMETRY_ANNOTATIONS_1_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_ENABLED": ["DD_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_ENABLED"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_SAMPLE_RATE": ["DD_OPENTELEMETRY_ANNOTATIONS_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_OPENTELEMETRY_ANNOTATIONS_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED","DD_INTEGRATION_OPENTELEMETRY_ANNOTATIONS_ENABLED"], "DD_TRACE_OPENTELEMETRY_BETA_ENABLED": ["DD_TRACE_INTEGRATION_OPENTELEMETRY_BETA_ENABLED","DD_INTEGRATION_OPENTELEMETRY_BETA_ENABLED"], @@ -1710,8 +1733,10 @@ "DD_TRACE_PEKKO_HTTP_SERVER_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED","DD_INTEGRATION_PEKKO_HTTP_SERVER_ENABLED"], "DD_TRACE_PEKKO_SCHEDULER_ENABLED": ["DD_TRACE_INTEGRATION_PEKKO_SCHEDULER_ENABLED","DD_INTEGRATION_PEKKO_SCHEDULER_ENABLED"], "DD_TRACE_PLAY_ACTION_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ACTION_ENABLED","DD_INTEGRATION_PLAY_ACTION_ENABLED"], + "DD_TRACE_PLAY_ANALYTICS_ENABLED": ["DD_PLAY_ANALYTICS_ENABLED"], "DD_TRACE_PLAY_ANALYTICS_SAMPLE_RATE": ["DD_PLAY_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_PLAY_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_ENABLED","DD_INTEGRATION_PLAY_ENABLED"], + "DD_TRACE_PLAY_WS_ANALYTICS_ENABLED": ["DD_PLAY_WS_ANALYTICS_ENABLED"], "DD_TRACE_PLAY_WS_ANALYTICS_SAMPLE_RATE": ["DD_PLAY_WS_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_PLAY_WS_ENABLED": ["DD_TRACE_INTEGRATION_PLAY_WS_ENABLED","DD_INTEGRATION_PLAY_WS_ENABLED"], "DD_TRACE_POWERMOCK_ENABLED": ["DD_TRACE_INTEGRATION_POWERMOCK_ENABLED","DD_INTEGRATION_POWERMOCK_ENABLED"], @@ -1725,6 +1750,7 @@ "DD_TRACE_RABBITMQ_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED","DD_INTEGRATION_RABBITMQ_PROPAGATION_ENABLED"], "DD_TRACE_RABBIT_LEGACY_TRACING_ENABLED": ["DD_RABBIT_LEGACY_TRACING_ENABLED"], "DD_TRACE_RABBIT_PROPAGATION_ENABLED": ["DD_TRACE_INTEGRATION_RABBIT_PROPAGATION_ENABLED","DD_INTEGRATION_RABBIT_PROPAGATION_ENABLED"], + "DD_TRACE_RATPACK_ANALYTICS_ENABLED": ["DD_RATPACK_ANALYTICS_ENABLED"], "DD_TRACE_RATPACK_ANALYTICS_SAMPLE_RATE": ["DD_RATPACK_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_RATPACK_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_ENABLED","DD_INTEGRATION_RATPACK_ENABLED"], "DD_TRACE_RATPACK_REQUEST_BODY_ENABLED": ["DD_TRACE_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED","DD_INTEGRATION_RATPACK_REQUEST_BODY_ENABLED"], @@ -1775,11 +1801,14 @@ "DD_TRACE_SERVLET_2_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_2_ENABLED","DD_INTEGRATION_SERVLET_2_ENABLED"], "DD_TRACE_SERVLET_3_ANALYTICS_ENABLED": ["DD_SERVLET_3_ANALYTICS_ENABLED"], "DD_TRACE_SERVLET_3_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_3_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SERVLET_3_ASYNC_CONTEXT_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_3_ASYNC_CONTEXT_ENABLED", "DD_INTEGRATION_SERVLET_3_ASYNC_CONTEXT_ENABLED"], "DD_TRACE_SERVLET_3_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_3_ENABLED","DD_INTEGRATION_SERVLET_3_ENABLED"], + "DD_TRACE_SERVLET_5_ASYNC_CONTEXT_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_5_ASYNC_CONTEXT_ENABLED", "DD_INTEGRATION_SERVLET_5_ASYNC_CONTEXT_ENABLED"], "DD_TRACE_SERVLET_5_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_5_ENABLED","DD_INTEGRATION_SERVLET_5_ENABLED"], "DD_TRACE_SERVLET_ANALYTICS_ENABLED": ["DD_SERVLET_ANALYTICS_ENABLED"], "DD_TRACE_SERVLET_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SERVLET_COOKIE_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_COOKIE_ENABLED","DD_INTEGRATION_SERVLET_COOKIE_ENABLED"], + "DD_TRACE_SERVLET_DISPATCHER_ANALYTICS_ENABLED": ["DD_SERVLET_DISPATCHER_ANALYTICS_ENABLED"], "DD_TRACE_SERVLET_DISPATCHER_ANALYTICS_SAMPLE_RATE": ["DD_SERVLET_DISPATCHER_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SERVLET_DISPATCHER_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_DISPATCHER_ENABLED","DD_INTEGRATION_SERVLET_DISPATCHER_ENABLED"], "DD_TRACE_SERVLET_ENABLED": ["DD_TRACE_INTEGRATION_SERVLET_ENABLED","DD_INTEGRATION_SERVLET_ENABLED"], @@ -1815,18 +1844,23 @@ "DD_TRACE_SPRING_BOOT_SPAN_ORIGIN_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED","DD_INTEGRATION_SPRING_BOOT_SPAN_ORIGIN_ENABLED"], "DD_TRACE_SPRING_CLOUD_ZUUL_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED","DD_INTEGRATION_SPRING_CLOUD_ZUUL_ENABLED"], "DD_TRACE_SPRING_CORE_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_CORE_ENABLED","DD_INTEGRATION_SPRING_CORE_ENABLED"], + "DD_TRACE_SPRING_DATA_ANALYTICS_ENABLED": ["DD_SPRING_DATA_ANALYTICS_ENABLED"], "DD_TRACE_SPRING_DATA_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_DATA_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPRING_DATA_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_DATA_ENABLED","DD_INTEGRATION_SPRING_DATA_ENABLED"], "DD_TRACE_SPRING_JMS_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_JMS_ENABLED","DD_INTEGRATION_SPRING_JMS_ENABLED"], "DD_TRACE_SPRING_MESSAGING_4_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_4_ENABLED","DD_INTEGRATION_SPRING_MESSAGING_4_ENABLED"], + "DD_TRACE_SPRING_MESSAGING_ANALYTICS_ENABLED": ["DD_SPRING_MESSAGING_ANALYTICS_ENABLED"], "DD_TRACE_SPRING_MESSAGING_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_MESSAGING_ANALYTICS_SAMPLE_RATE"], + "DD_TRACE_SPRING_MESSAGING_E2E_DURATION_ENABLED": ["DD_SPRING_MESSAGING_E2E_DURATION_ENABLED"], "DD_TRACE_SPRING_MESSAGING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_MESSAGING_ENABLED","DD_INTEGRATION_SPRING_MESSAGING_ENABLED"], "DD_TRACE_SPRING_PATH_FILTER_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_PATH_FILTER_ENABLED","DD_INTEGRATION_SPRING_PATH_FILTER_ENABLED"], "DD_TRACE_SPRING_RABBIT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_RABBIT_ENABLED","DD_INTEGRATION_SPRING_RABBIT_ENABLED"], + "DD_TRACE_SPRING_SCHEDULING_ANALYTICS_ENABLED": ["DD_SPRING_SCHEDULING_ANALYTICS_ENABLED"], "DD_TRACE_SPRING_SCHEDULING_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_SCHEDULING_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPRING_SCHEDULING_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SCHEDULING_ENABLED","DD_INTEGRATION_SPRING_SCHEDULING_ENABLED"], "DD_TRACE_SPRING_SCHEDULING_LEGACY_TRACING_ENABLED": ["DD_SPRING_SCHEDULING_LEGACY_TRACING_ENABLED"], "DD_TRACE_SPRING_SECURITY_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_SECURITY_ENABLED","DD_INTEGRATION_SPRING_SECURITY_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_ANALYTICS_ENABLED": ["DD_SPRING_WEBFLUX_ANALYTICS_ENABLED"], "DD_TRACE_SPRING_WEBFLUX_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEBFLUX_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPRING_WEBFLUX_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_SPRING_WEBFLUX_CLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_SPRING_WEBFLUX_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED","DD_INTEGRATION_SPRING_WEBFLUX_CLIENT_ENABLED"], @@ -1866,6 +1900,7 @@ "DD_TRACE_TIBCO_BW_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_BW_ENABLED","DD_INTEGRATION_TIBCO_BW_ENABLED"], "DD_TRACE_TIBCO_ENABLED": ["DD_TRACE_INTEGRATION_TIBCO_ENABLED","DD_INTEGRATION_TIBCO_ENABLED"], "DD_TRACE_TINYLOG_ENABLED": ["DD_TRACE_INTEGRATION_TINYLOG_ENABLED","DD_INTEGRATION_TINYLOG_ENABLED"], + "DD_TRACE_TOMCAT_ANALYTICS_ENABLED": ["DD_TOMCAT_ANALYTICS_ENABLED"], "DD_TRACE_TOMCAT_ANALYTICS_SAMPLE_RATE": ["DD_TOMCAT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_TOMCAT_CLASSLOADING_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED","DD_INTEGRATION_TOMCAT_CLASSLOADING_ENABLED"], "DD_TRACE_TOMCAT_ENABLED": ["DD_TRACE_INTEGRATION_TOMCAT_ENABLED","DD_INTEGRATION_TOMCAT_ENABLED"], @@ -1882,9 +1917,7 @@ "DD_TRACE_UNDERTOW_2_0_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_0_ENABLED","DD_INTEGRATION_UNDERTOW_2_0_ENABLED"], "DD_TRACE_UNDERTOW_2_2_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_2_2_ENABLED","DD_INTEGRATION_UNDERTOW_2_2_ENABLED"], "DD_TRACE_UNDERTOW_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_ENABLED","DD_INTEGRATION_UNDERTOW_ENABLED"], - "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_ENABLED": ["DD_UNDERTOW_HTTP_ANALYTICS_ENABLED"], "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_SAMPLE_RATE": ["DD_UNDERTOW_HTTP_ANALYTICS_SAMPLE_RATE"], - "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_ENABLED": ["DD_UNDERTOW_HTTP_SERVER_ANALYTICS_ENABLED"], "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_SAMPLE_RATE": ["DD_UNDERTOW_HTTP_SERVER_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_UNDERTOW_LEGACY_TRACING_ENABLED": ["DD_UNDERTOW_LEGACY_TRACING_ENABLED"], "DD_TRACE_UNDERTOW_REQUEST_PARSE_ENABLED": ["DD_TRACE_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED","DD_INTEGRATION_UNDERTOW_REQUEST_PARSE_ENABLED"], @@ -1902,6 +1935,7 @@ "DD_TRACE_VERTX_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_ENABLED","DD_INTEGRATION_VERTX_ENABLED"], "DD_TRACE_VERTX_REDIS_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_VERTX_REDIS_CLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_VERTX_REDIS_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED","DD_INTEGRATION_VERTX_REDIS_CLIENT_ENABLED"], + "DD_TRACE_VERTX_ROUTE_HANDLER_ANALYTICS_ENABLED": ["DD_VERTX_ROUTE_HANDLER_ANALYTICS_ENABLED"], "DD_TRACE_VERTX_ROUTE_HANDLER_ANALYTICS_SAMPLE_RATE": ["DD_VERTX_ROUTE_HANDLER_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_VERTX_SQL_CLIENT_ANALYTICS_SAMPLE_RATE": ["DD_VERTX_SQL_CLIENT_ANALYTICS_SAMPLE_RATE"], "DD_TRACE_VERTX_SQL_CLIENT_ENABLED": ["DD_TRACE_INTEGRATION_VERTX_SQL_CLIENT_ENABLED","DD_INTEGRATION_VERTX_SQL_CLIENT_ENABLED"], @@ -1911,7 +1945,105 @@ "DD_TRACE_WEBSOCKET_ENABLED": ["DD_TRACE_INTEGRATION_WEBSOCKET_ENABLED","DD_INTEGRATION_WEBSOCKET_ENABLED"], "DD_TRACE_WEBSPHERE_JMX_ENABLED": ["DD_TRACE_INTEGRATION_WEBSPHERE_JMX_ENABLED","DD_INTEGRATION_WEBSPHERE_JMX_ENABLED"], "DD_TRACE_WILDFLY_ENABLED": ["DD_TRACE_INTEGRATION_WILDFLY_ENABLED","DD_INTEGRATION_WILDFLY_ENABLED"], - "DD_TRACE_ZIO_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED","DD_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED"] + "DD_TRACE_ZIO_EXPERIMENTAL_ENABLED": ["DD_TRACE_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED","DD_INTEGRATION_ZIO_EXPERIMENTAL_ENABLED"], + "DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED": ["DD_AEROSPIKE_ANALYTICS_ENABLED"], + "DD_TRACE_AKKA_HTTP_CLIENT_ANALYTICS_ENABLED": ["DD_AKKA_HTTP_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_AKKA_HTTP_SERVER_ANALYTICS_ENABLED": ["DD_AKKA_HTTP_SERVER_ANALYTICS_ENABLED"], + "DD_TRACE_AMQP_ANALYTICS_ENABLED": ["DD_AMQP_ANALYTICS_ENABLED"], + "DD_TRACE_AMQP_E2E_DURATION_ENABLED": ["DD_AMQP_E2E_DURATION_ENABLED"], + "DD_TRACE_ANALYTICS_ENABLED": ["DD_ANALYTICS_ENABLED"], + "DD_TRACE_APACHE_HTTPASYNCCLIENT_ANALYTICS_ENABLED": ["DD_APACHE_HTTPASYNCCLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_APACHE_HTTPCLIENT5_ANALYTICS_ENABLED": ["DD_APACHE_HTTPCLIENT5_ANALYTICS_ENABLED"], + "DD_TRACE_APACHE_HTTPCLIENT_ANALYTICS_ENABLED": ["DD_APACHE_HTTPCLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_APACHE_HTTP_CLIENT5_ANALYTICS_ENABLED": ["DD_APACHE_HTTP_CLIENT5_ANALYTICS_ENABLED"], + "DD_TRACE_APACHE_HTTP_CLIENT_ANALYTICS_ENABLED": ["DD_APACHE_HTTP_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_ARMERIA_ANALYTICS_ENABLED": ["DD_ARMERIA_ANALYTICS_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_ANALYTICS_ENABLED": ["DD_ARMERIA_GRPC_ANALYTICS_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_CLIENT_ANALYTICS_ENABLED": ["DD_ARMERIA_GRPC_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_ARMERIA_GRPC_SERVER_ANALYTICS_ENABLED": ["DD_ARMERIA_GRPC_SERVER_ANALYTICS_ENABLED"], + "DD_TRACE_AWS_SDK_ANALYTICS_ENABLED": ["DD_AWS_SDK_ANALYTICS_ENABLED"], + "DD_TRACE_AWS_SDK_E2E_DURATION_ENABLED": ["DD_AWS_SDK_E2E_DURATION_ENABLED"], + "DD_TRACE_AXIS2_ANALYTICS_ENABLED": ["DD_AXIS2_ANALYTICS_ENABLED"], + "DD_TRACE_AXWAY_HTTP_ANALYTICS_ENABLED": ["DD_AXWAY_HTTP_ANALYTICS_ENABLED"], + "DD_TRACE_AZURE_FUNCTIONS_ANALYTICS_ENABLED": ["DD_AZURE_FUNCTIONS_ANALYTICS_ENABLED"], + "DD_TRACE_CASSANDRA_ANALYTICS_ENABLED": ["DD_CASSANDRA_ANALYTICS_ENABLED"], + "DD_TRACE_COMMONS_HTTP_CLIENT_ANALYTICS_ENABLED": ["DD_COMMONS_HTTP_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_COUCHBASE_ANALYTICS_ENABLED": ["DD_COUCHBASE_ANALYTICS_ENABLED"], + "DD_TRACE_CUCUMBER_5_ANALYTICS_ENABLED": ["DD_CUCUMBER_5_ANALYTICS_ENABLED"], + "DD_TRACE_CUCUMBER_ANALYTICS_ENABLED": ["DD_CUCUMBER_ANALYTICS_ENABLED"], + "DD_TRACE_DATANUCLEUS_ANALYTICS_ENABLED": ["DD_DATANUCLEUS_ANALYTICS_ENABLED"], + "DD_TRACE_ELASTICSEARCH_ANALYTICS_ENABLED": ["DD_ELASTICSEARCH_ANALYTICS_ENABLED"], + "DD_TRACE_FINATRA_ANALYTICS_ENABLED": ["DD_FINATRA_ANALYTICS_ENABLED"], + "DD_TRACE_GOOGLE_HTTP_CLIENT_ANALYTICS_ENABLED": ["DD_GOOGLE_HTTP_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_ANALYTICS_ENABLED": ["DD_GOOGLE_PUBSUB_ANALYTICS_ENABLED"], + "DD_TRACE_GOOGLE_PUBSUB_E2E_DURATION_ENABLED": ["DD_GOOGLE_PUBSUB_E2E_DURATION_ENABLED"], + "DD_TRACE_GRAPHQL_JAVA_ANALYTICS_ENABLED": ["DD_GRAPHQL_JAVA_ANALYTICS_ENABLED"], + "DD_TRACE_GRIZZLY_CLIENT_ANALYTICS_ENABLED": ["DD_GRIZZLY_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_HAZELCAST_SDK_ANALYTICS_ENABLED": ["DD_HAZELCAST_SDK_ANALYTICS_ENABLED"], + "DD_TRACE_HIBERNATE_CORE_ANALYTICS_ENABLED": ["DD_HIBERNATE_CORE_ANALYTICS_ENABLED"], + "DD_TRACE_HTTPASYNCCLIENT_ANALYTICS_ENABLED": ["DD_HTTPASYNCCLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_HTTPCLIENT5_ANALYTICS_ENABLED": ["DD_HTTPCLIENT5_ANALYTICS_ENABLED"], + "DD_TRACE_HTTPCLIENT_ANALYTICS_ENABLED": ["DD_HTTPCLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_IGNITE_ANALYTICS_ENABLED": ["DD_IGNITE_ANALYTICS_ENABLED"], + "DD_TRACE_JAKARTA_WS_ANALYTICS_ENABLED": ["DD_JAKARTA_WS_ANALYTICS_ENABLED"], + "DD_TRACE_JAVA_HTTP_CLIENT_ANALYTICS_ENABLED": ["DD_JAVA_HTTP_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_JAXRS_ANALYTICS_ENABLED": ["DD_JAXRS_ANALYTICS_ENABLED"], + "DD_TRACE_JAX_RS_ANALYTICS_ENABLED": ["DD_JAX_RS_ANALYTICS_ENABLED"], + "DD_TRACE_JAX_RS_CLIENT_ANALYTICS_ENABLED": ["DD_JAX_RS_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_JAX_WS_ANALYTICS_ENABLED": ["DD_JAX_WS_ANALYTICS_ENABLED"], + "DD_TRACE_JDBC_DATASOURCE_ANALYTICS_ENABLED": ["DD_JDBC_DATASOURCE_ANALYTICS_ENABLED"], + "DD_TRACE_JEDIS_ANALYTICS_ENABLED": ["DD_JEDIS_ANALYTICS_ENABLED"], + "DD_TRACE_JETTY_CLIENT_ANALYTICS_ENABLED": ["DD_JETTY_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_JMS_ANALYTICS_ENABLED": ["DD_JMS_ANALYTICS_ENABLED"], + "DD_TRACE_JMS_E2E_DURATION_ENABLED": ["DD_JMS_E2E_DURATION_ENABLED"], + "DD_TRACE_JMS_TIME_IN_QUEUE_ENABLED": ["DD_JMS_TIME_IN_QUEUE_ENABLED"], + "DD_TRACE_KAFKA_STREAMS_ANALYTICS_ENABLED": ["DD_KAFKA_STREAMS_ANALYTICS_ENABLED"], + "DD_TRACE_KAFKA_STREAMS_E2E_DURATION_ENABLED": ["DD_KAFKA_STREAMS_E2E_DURATION_ENABLED"], + "DD_TRACE_LETTUCE_ANALYTICS_ENABLED": ["DD_LETTUCE_ANALYTICS_ENABLED"], + "DD_TRACE_LIBERTY_ANALYTICS_ENABLED": ["DD_LIBERTY_ANALYTICS_ENABLED"], + "DD_TRACE_MICRONAUT_ANALYTICS_ENABLED": ["DD_MICRONAUT_ANALYTICS_ENABLED"], + "DD_TRACE_MULE_ANALYTICS_ENABLED": ["DD_MULE_ANALYTICS_ENABLED"], + "DD_TRACE_NING_ANALYTICS_ENABLED": ["DD_NING_ANALYTICS_ENABLED"], + "DD_TRACE_OKHTTP_2_ANALYTICS_ENABLED": ["DD_OKHTTP_2_ANALYTICS_ENABLED"], + "DD_TRACE_OKHTTP_3_ANALYTICS_ENABLED": ["DD_OKHTTP_3_ANALYTICS_ENABLED"], + "DD_TRACE_OKHTTP_ANALYTICS_ENABLED": ["DD_OKHTTP_ANALYTICS_ENABLED"], + "DD_TRACE_OPENSEARCH_ANALYTICS_ENABLED": ["DD_OPENSEARCH_ANALYTICS_ENABLED"], + "DD_TRACE_PEKKO_HTTP_ANALYTICS_ENABLED": ["DD_PEKKO_HTTP_ANALYTICS_ENABLED"], + "DD_TRACE_PEKKO_HTTP_CLIENT_ANALYTICS_ENABLED": ["DD_PEKKO_HTTP_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_PEKKO_HTTP_SERVER_ANALYTICS_ENABLED": ["DD_PEKKO_HTTP_SERVER_ANALYTICS_ENABLED"], + "DD_TRACE_QUARTZ_ANALYTICS_ENABLED": ["DD_QUARTZ_ANALYTICS_ENABLED"], + "DD_TRACE_RABBITMQ_ANALYTICS_ENABLED": ["DD_RABBITMQ_ANALYTICS_ENABLED"], + "DD_TRACE_RABBITMQ_E2E_DURATION_ENABLED": ["DD_RABBITMQ_E2E_DURATION_ENABLED"], + "DD_TRACE_RABBITMQ_TIME_IN_QUEUE_ENABLED": ["DD_RABBITMQ_TIME_IN_QUEUE_ENABLED"], + "DD_TRACE_RABBIT_TIME_IN_QUEUE_ENABLED": ["DD_RABBIT_TIME_IN_QUEUE_ENABLED"], + "DD_TRACE_REDISSCALA_ANALYTICS_ENABLED": ["DD_REDISSCALA_ANALYTICS_ENABLED"], + "DD_TRACE_REDISSON_ANALYTICS_ENABLED": ["DD_REDISSON_ANALYTICS_ENABLED"], + "DD_TRACE_REDIS_ANALYTICS_ENABLED": ["DD_REDIS_ANALYTICS_ENABLED"], + "DD_TRACE_RESTLET_HTTP_ANALYTICS_ENABLED": ["DD_RESTLET_HTTP_ANALYTICS_ENABLED"], + "DD_TRACE_RESTLET_HTTP_SERVER_ANALYTICS_ENABLED": ["DD_RESTLET_HTTP_SERVER_ANALYTICS_ENABLED"], + "DD_TRACE_RMI_ANALYTICS_ENABLED": ["DD_RMI_ANALYTICS_ENABLED"], + "DD_TRACE_RMI_CLIENT_ANALYTICS_ENABLED": ["DD_RMI_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_RMI_SERVER_ANALYTICS_ENABLED": ["DD_RMI_SERVER_ANALYTICS_ENABLED"], + "DD_TRACE_SERVLET_2_ANALYTICS_ENABLED": ["DD_SERVLET_2_ANALYTICS_ENABLED"], + "DD_TRACE_SERVLET_FILTER_ANALYTICS_ENABLED": ["DD_SERVLET_FILTER_ANALYTICS_ENABLED"], + "DD_TRACE_SERVLET_RESPONSE_ANALYTICS_ENABLED": ["DD_SERVLET_RESPONSE_ANALYTICS_ENABLED"], + "DD_TRACE_SERVLET_SERVICE_ANALYTICS_ENABLED": ["DD_SERVLET_SERVICE_ANALYTICS_ENABLED"], + "DD_TRACE_SPARK_EXECUTOR_ANALYTICS_ENABLED": ["DD_SPARK_EXECUTOR_ANALYTICS_ENABLED"], + "DD_TRACE_SPRAY_ANALYTICS_ENABLED": ["DD_SPRAY_ANALYTICS_ENABLED"], + "DD_TRACE_SPRING_WEBFLUX_CLIENT_ANALYTICS_ENABLED": ["DD_SPRING_WEBFLUX_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_SPYMEMCACHED_ANALYTICS_ENABLED": ["DD_SPYMEMCACHED_ANALYTICS_ENABLED"], + "DD_TRACE_SQS_TIME_IN_QUEUE_ENABLED": ["DD_SQS_TIME_IN_QUEUE_ENABLED"], + "DD_TRACE_SYNAPSE3_ANALYTICS_ENABLED": ["DD_SYNAPSE3_ANALYTICS_ENABLED"], + "DD_TRACE_TIBCO_BW_ANALYTICS_ENABLED": ["DD_TIBCO_BW_ANALYTICS_ENABLED"], + "DD_TRACE_TWILIO_SDK_ANALYTICS_ENABLED": ["DD_TWILIO_SDK_ANALYTICS_ENABLED"], + "DD_TRACE_UNDERTOW_HTTP_ANALYTICS_ENABLED": ["DD_UNDERTOW_HTTP_ANALYTICS_ENABLED"], + "DD_TRACE_UNDERTOW_HTTP_SERVER_ANALYTICS_ENABLED": ["DD_UNDERTOW_HTTP_SERVER_ANALYTICS_ENABLED"], + "DD_TRACE_URLCONNECTION_ANALYTICS_ENABLED": ["DD_URLCONNECTION_ANALYTICS_ENABLED"], + "DD_TRACE_VALKEY_ANALYTICS_ENABLED": ["DD_VALKEY_ANALYTICS_ENABLED"], + "DD_TRACE_VERTX_ANALYTICS_ENABLED": ["DD_VERTX_ANALYTICS_ENABLED"], + "DD_TRACE_VERTX_REDIS_CLIENT_ANALYTICS_ENABLED": ["DD_VERTX_REDIS_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_VERTX_SQL_CLIENT_ANALYTICS_ENABLED": ["DD_VERTX_SQL_CLIENT_ANALYTICS_ENABLED"], + "DD_TRACE_WEBSOCKET_ANALYTICS_ENABLED": ["DD_WEBSOCKET_ANALYTICS_ENABLED"] }, "deprecations": { } diff --git a/dd-java-agent/build.gradle b/dd-java-agent/build.gradle index ef089765b8e..283f24aeae2 100644 --- a/dd-java-agent/build.gradle +++ b/dd-java-agent/build.gradle @@ -35,7 +35,7 @@ tasks.compileJava.dependsOn compileMain_java6Java dependencies { main_java6CompileOnly 'de.thetaphi:forbiddenapis:3.8' - implementation project(':components:environment') + implementation(project(":internal-api")) testImplementation sourceSets.main_java6.output } diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java index c5a2873bd98..309b7daf68e 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java @@ -3,8 +3,8 @@ import static java.util.Collections.emptyList; import static java.util.Collections.singletonList; -import datadog.environment.ConfigHelper; import datadog.json.JsonWriter; +import datadog.trace.api.ConfigHelper; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.Closeable; import java.io.OutputStream; diff --git a/utils/container-utils/build.gradle.kts b/utils/container-utils/build.gradle.kts index 9f78ea435e7..017c3863b3c 100644 --- a/utils/container-utils/build.gradle.kts +++ b/utils/container-utils/build.gradle.kts @@ -6,7 +6,6 @@ apply(from = "$rootDir/gradle/java.gradle") dependencies { implementation(libs.slf4j) - implementation(project(":components:environment")) - + implementation(project(":internal-api")) testImplementation(project(":utils:test-utils")) } diff --git a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java index 1f88d39b0a7..5a8a85fb89d 100644 --- a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java +++ b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java @@ -1,6 +1,6 @@ package datadog.common.container; -import datadog.environment.ConfigHelper; +import datadog.trace.api.ConfigHelper; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.File; From 97db41fd5f6e664233fdb8c3214e855ebc988dc2 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 13 Aug 2025 15:16:57 -0400 Subject: [PATCH 31/47] adding telemetry --- .../src/main/java/datadog/trace/api/ConfigHelper.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java index 028247a773e..c63a9054b0d 100644 --- a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java +++ b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java @@ -1,6 +1,7 @@ package datadog.trace.api; import datadog.environment.EnvironmentVariables; +import datadog.trace.api.telemetry.ConfigInversionMetricCollector; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.util.LinkedHashMap; import java.util.List; @@ -10,6 +11,8 @@ public class ConfigHelper { private static ConfigInversionStrictStyle configInversionStrict; + private static final ConfigInversionMetricCollector configInversionMetricCollector = + ConfigInversionMetricCollector.getInstance(); // Default to production source private static SupportedConfigurationSource configSource = new SupportedConfigurationSource(); @@ -77,6 +80,7 @@ public static String getEnvironmentVariable(String name) { && !configSource.getAliasMapping().containsKey(name) && !configSource.getSupportedConfigurations().contains(name)) { if (configInversionStrict != ConfigInversionStrictStyle.TEST) { + configInversionMetricCollector.setUndocumentedEnvVarMetric(name); System.err.println( "Warning: Missing environment variable " + name From 04bde01a2cbefc37f5e2705a06a331ccd029e84c Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 14 Aug 2025 11:54:30 -0400 Subject: [PATCH 32/47] reverting agent-bootstrap to directly invoke EnvironmentVariables component --- .../src/main/java/datadog/trace/bootstrap/Agent.java | 5 ++--- .../src/main/java/datadog/trace/bootstrap/Library.java | 4 ++-- gradle/configInversionLinter.gradle | 1 + 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java index 69db3cb6ed6..d8f09c75089 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java @@ -22,7 +22,6 @@ import datadog.environment.OperatingSystem; import datadog.environment.SystemProperties; import datadog.trace.api.Config; -import datadog.trace.api.ConfigHelper; import datadog.trace.api.Platform; import datadog.trace.api.StatsDClientManager; import datadog.trace.api.WithGlobalTracer; @@ -1360,7 +1359,7 @@ private static void configureLogger() { } else { logLevel = ddGetProperty("dd.log.level"); if (null == logLevel) { - logLevel = ConfigHelper.getEnvironmentVariable("OTEL_LOG_LEVEL"); + logLevel = EnvironmentVariables.get("OTEL_LOG_LEVEL"); } } @@ -1574,7 +1573,7 @@ private static String getStableConfig(StableConfigSource source, final String sy /** Looks for the "DD_" environment variable equivalent of the given "dd." system property. */ private static String ddGetEnv(final String sysProp) { - return ConfigHelper.getEnvironmentVariable(toEnvVar(sysProp)); + return EnvironmentVariables.get(toEnvVar(sysProp)); } private static boolean okHttpMayIndirectlyLoadJUL() { diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java index 51197e83df0..33d202f8b22 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Library.java @@ -1,6 +1,6 @@ package datadog.trace.bootstrap; -import datadog.trace.api.ConfigHelper; +import datadog.environment.EnvironmentVariables; import java.util.EnumSet; import org.slf4j.Logger; @@ -16,7 +16,7 @@ public enum Library { public static EnumSet detectLibraries(final Logger log) { final EnumSet libraries = EnumSet.noneOf(Library.class); - final String jbossHome = ConfigHelper.getEnvironmentVariable("JBOSS_HOME"); + final String jbossHome = EnvironmentVariables.get("JBOSS_HOME"); if (jbossHome != null) { log.debug("Env - jboss: {}", jbossHome); libraries.add(WILDFLY); diff --git a/gradle/configInversionLinter.gradle b/gradle/configInversionLinter.gradle index fcf057c7f2f..98d4a8d2a62 100644 --- a/gradle/configInversionLinter.gradle +++ b/gradle/configInversionLinter.gradle @@ -81,6 +81,7 @@ tasks.register('checkEnvironmentVariablesUsage') { // Exclude specific files (relative to projectDir) exclude '**/build/**' exclude 'internal-api/src/main/java/datadog/trace/api/ConfigHelper.java' + exclude 'dd-java-agent/agent-bootstrap/**' } def matches = [] From e10e0a945aa9ceeb98c888bc3e07e4de880f5796 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 14 Aug 2025 13:23:40 -0400 Subject: [PATCH 33/47] updating ConfigHelper to use getAll() --- .../datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java | 5 ++--- .../src/main/java/datadog/trace/api/ConfigHelper.java | 2 +- internal-api/src/main/java/datadog/trace/util/PidHelper.java | 4 +--- .../main/java/datadog/trace/util/TempLocationManager.java | 2 +- .../src/main/java/datadog/telemetry/TelemetryRequest.java | 1 - 5 files changed, 5 insertions(+), 9 deletions(-) diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java index cf7bc0f1422..473cb808a63 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java @@ -1,6 +1,6 @@ package datadog.trace.civisibility.ci.env; -import datadog.environment.EnvironmentVariables; +import datadog.trace.api.ConfigHelper; import java.util.Map; public class CiEnvironmentImpl implements CiEnvironment { @@ -11,9 +11,8 @@ public CiEnvironmentImpl(Map env) { this.env = env; } - @SuppressForbidden public static CiEnvironment local() { - return new CiEnvironmentImpl(EnvironmentVariables.getAll()); + return new CiEnvironmentImpl(ConfigHelper.getEnvironmentVariables()); } @Override diff --git a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java index c63a9054b0d..291325a1ddf 100644 --- a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java +++ b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java @@ -36,7 +36,7 @@ static void resetToDefaults() { } public static Map getEnvironmentVariables() { - Map env = System.getenv(); + Map env = EnvironmentVariables.getAll(); Map configs = new LinkedHashMap<>(); for (Map.Entry entry : env.entrySet()) { String key = entry.getKey(); diff --git a/internal-api/src/main/java/datadog/trace/util/PidHelper.java b/internal-api/src/main/java/datadog/trace/util/PidHelper.java index 9534bc62290..8e911cf065b 100644 --- a/internal-api/src/main/java/datadog/trace/util/PidHelper.java +++ b/internal-api/src/main/java/datadog/trace/util/PidHelper.java @@ -2,8 +2,8 @@ import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; -import datadog.trace.api.ConfigHelper; import datadog.environment.SystemProperties; +import datadog.trace.api.ConfigHelper; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.IOException; import java.lang.management.ManagementFactory; @@ -11,9 +11,7 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.util.Collections; -import java.util.Objects; import java.util.Set; -import java.util.function.Predicate; import java.util.function.Supplier; import java.util.stream.Collectors; import java.util.stream.Stream; diff --git a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java index 3aab53dba48..d8babb9dfd5 100644 --- a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java +++ b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java @@ -2,8 +2,8 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; -import datadog.trace.api.ConfigHelper; import datadog.environment.SystemProperties; +import datadog.trace.api.ConfigHelper; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; diff --git a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java index 8ead446e5ca..02879d5d5f7 100644 --- a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java +++ b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java @@ -2,7 +2,6 @@ import datadog.common.container.ContainerInfo; import datadog.communication.ddagent.TracerVersion; -import datadog.environment.EnvironmentVariables; import datadog.telemetry.api.DistributionSeries; import datadog.telemetry.api.Integration; import datadog.telemetry.api.LogMessage; From 340eeeff6b9cf88274028ed9b1d6132bb31c5ad5 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 14 Aug 2025 13:46:10 -0400 Subject: [PATCH 34/47] adding classes to native build time and adding suppressforbidden --- .../src/main/java/datadog/environment/EnvironmentVariables.java | 1 + .../nativeimage/NativeImageGeneratorRunnerInstrumentation.java | 2 ++ 2 files changed, 3 insertions(+) diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index ae92817a928..ab7a02213f1 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -56,6 +56,7 @@ public static String getOrDefault(String name, String defaultValue) { * @return All environment variables captured in an unmodifiable {@link Map}, or an empty {@link * Map} if they can't be retrieved. */ + @SuppressForbidden public static Map getAll() { try { return unmodifiableMap(new HashMap<>(System.getenv())); diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index b04ca287f7f..4b72ca40944 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -81,6 +81,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.env.CapturedEnvironment$ProcessInfo:build_time," + "datadog.trace.api.ConfigCollector:rerun," + "datadog.trace.api.ConfigDefaults:build_time," + + "datadog.trace.api.ConfigHelper:build_time," + "datadog.trace.api.ConfigInversionStrictStyle:build_time," + "datadog.trace.api.ConfigOrigin:build_time," + "datadog.trace.api.ConfigSetting:build_time," @@ -102,6 +103,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.ResolverCacheConfig$5:build_time," + "datadog.trace.api.TracePropagationStyle:build_time," + "datadog.trace.api.TracePropagationBehaviorExtract:build_time," + + "datadog.trace.api.telemetry.ConfigInversionMetricCollector:build_time," + "datadog.trace.api.telemetry.OtelEnvMetricCollector:build_time," + "datadog.trace.api.profiling.ProfilingEnablement:build_time," + "datadog.trace.bootstrap.config.provider.ConfigConverter:build_time," From ea83e253448e0cc68d8e8e405b91af3f417f2689 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 14 Aug 2025 16:02:50 -0400 Subject: [PATCH 35/47] Adding SupportedConfigurationsSource to buildtime --- .../nativeimage/NativeImageGeneratorRunnerInstrumentation.java | 1 + 1 file changed, 1 insertion(+) diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index 4b72ca40944..459880dd5be 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -101,6 +101,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.ResolverCacheConfig$3:build_time," + "datadog.trace.api.ResolverCacheConfig$4:build_time," + "datadog.trace.api.ResolverCacheConfig$5:build_time," + + "datadog.trace.api.SupportedConfigurationSource:build_time," + "datadog.trace.api.TracePropagationStyle:build_time," + "datadog.trace.api.TracePropagationBehaviorExtract:build_time," + "datadog.trace.api.telemetry.ConfigInversionMetricCollector:build_time," From 4b602c14c29d973a55ff1336f3faa56f7f55fcf1 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 14 Aug 2025 16:24:28 -0400 Subject: [PATCH 36/47] testing --- .../NativeImageGeneratorRunnerInstrumentation.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index 459880dd5be..12de62352f8 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -81,7 +81,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.env.CapturedEnvironment$ProcessInfo:build_time," + "datadog.trace.api.ConfigCollector:rerun," + "datadog.trace.api.ConfigDefaults:build_time," - + "datadog.trace.api.ConfigHelper:build_time," + // + "datadog.trace.api.ConfigHelper:build_time," + "datadog.trace.api.ConfigInversionStrictStyle:build_time," + "datadog.trace.api.ConfigOrigin:build_time," + "datadog.trace.api.ConfigSetting:build_time," @@ -101,10 +101,11 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.ResolverCacheConfig$3:build_time," + "datadog.trace.api.ResolverCacheConfig$4:build_time," + "datadog.trace.api.ResolverCacheConfig$5:build_time," - + "datadog.trace.api.SupportedConfigurationSource:build_time," + // + "datadog.trace.api.SupportedConfigurationSource:build_time," + "datadog.trace.api.TracePropagationStyle:build_time," + "datadog.trace.api.TracePropagationBehaviorExtract:build_time," - + "datadog.trace.api.telemetry.ConfigInversionMetricCollector:build_time," + // + + // "datadog.trace.api.telemetry.ConfigInversionMetricCollector:build_time," + "datadog.trace.api.telemetry.OtelEnvMetricCollector:build_time," + "datadog.trace.api.profiling.ProfilingEnablement:build_time," + "datadog.trace.bootstrap.config.provider.ConfigConverter:build_time," From 4bdb9607f899bc2d17dff37ba439421ce2d6910a Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Thu, 14 Aug 2025 17:13:22 -0400 Subject: [PATCH 37/47] attempt to fix native image --- .../trace/bootstrap/BootstrapInitializationTelemetry.java | 4 ++-- gradle/configInversionLinter.gradle | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java index 309b7daf68e..baad589d39b 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java @@ -3,8 +3,8 @@ import static java.util.Collections.emptyList; import static java.util.Collections.singletonList; +import datadog.environment.EnvironmentVariables; import datadog.json.JsonWriter; -import datadog.trace.api.ConfigHelper; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.Closeable; import java.io.OutputStream; @@ -147,7 +147,7 @@ public void onError(String reasonCode) { } private int maxTags() { - String maxTags = ConfigHelper.getEnvironmentVariable("DD_TELEMETRY_FORWARDER_MAX_TAGS"); + String maxTags = EnvironmentVariables.get("DD_TELEMETRY_FORWARDER_MAX_TAGS"); if (maxTags != null) { try { diff --git a/gradle/configInversionLinter.gradle b/gradle/configInversionLinter.gradle index 98d4a8d2a62..cee4fb9c957 100644 --- a/gradle/configInversionLinter.gradle +++ b/gradle/configInversionLinter.gradle @@ -82,6 +82,7 @@ tasks.register('checkEnvironmentVariablesUsage') { exclude '**/build/**' exclude 'internal-api/src/main/java/datadog/trace/api/ConfigHelper.java' exclude 'dd-java-agent/agent-bootstrap/**' + exclude 'dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java' } def matches = [] From 962490dad0f80035c66cd1797eac231621f19bc3 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Fri, 15 Aug 2025 14:59:22 -0400 Subject: [PATCH 38/47] attempt to fix native build --- .../NativeImageGeneratorRunnerInstrumentation.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index 12de62352f8..94ed7597f5d 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -81,7 +81,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.env.CapturedEnvironment$ProcessInfo:build_time," + "datadog.trace.api.ConfigCollector:rerun," + "datadog.trace.api.ConfigDefaults:build_time," - // + "datadog.trace.api.ConfigHelper:build_time," + + "datadog.trace.api.ConfigHelper:rerun," + "datadog.trace.api.ConfigInversionStrictStyle:build_time," + "datadog.trace.api.ConfigOrigin:build_time," + "datadog.trace.api.ConfigSetting:build_time," @@ -101,11 +101,10 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.ResolverCacheConfig$3:build_time," + "datadog.trace.api.ResolverCacheConfig$4:build_time," + "datadog.trace.api.ResolverCacheConfig$5:build_time," - // + "datadog.trace.api.SupportedConfigurationSource:build_time," + + "datadog.trace.api.SupportedConfigurationSource:rerun," + "datadog.trace.api.TracePropagationStyle:build_time," + "datadog.trace.api.TracePropagationBehaviorExtract:build_time," - // + - // "datadog.trace.api.telemetry.ConfigInversionMetricCollector:build_time," + + "datadog.trace.api.telemetry.ConfigInversionMetricCollector:rerun," + "datadog.trace.api.telemetry.OtelEnvMetricCollector:build_time," + "datadog.trace.api.profiling.ProfilingEnablement:build_time," + "datadog.trace.bootstrap.config.provider.ConfigConverter:build_time," From c7aa94dd09d0b0aa82b81d047d317981913c201e Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Mon, 18 Aug 2025 12:56:43 -0400 Subject: [PATCH 39/47] cleanup pt 1 --- .../src/test/java/jvmbootstraptest/CustomSecurityManager.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java b/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java index 329f962d1ab..591fb6283bd 100644 --- a/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java +++ b/dd-java-agent/src/test/java/jvmbootstraptest/CustomSecurityManager.java @@ -502,9 +502,6 @@ protected final boolean defaultCheckSecurityPutPermission( } final boolean checkPropertyPermission(PropertyPermission perm, Object ctx) { - if ("otel.javaagent.configuration-file".equals(perm.getName())) { - System.out.println("What?"); - } switch (perm.getActions()) { case "read": return checkPropertyReadPermission(perm, ctx, perm.getName()); From 806872455edfb7cbc4932c51b853b6887a3bfadc Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Mon, 18 Aug 2025 14:03:44 -0400 Subject: [PATCH 40/47] cleanup pt 2 --- .../src/main/java/datadog/trace/api/ConfigHelper.java | 4 ---- .../trace/bootstrap/config/provider/ConfigProvider.java | 9 +++------ 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java index 291325a1ddf..e52abbf813e 100644 --- a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java +++ b/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java @@ -81,10 +81,6 @@ public static String getEnvironmentVariable(String name) { && !configSource.getSupportedConfigurations().contains(name)) { if (configInversionStrict != ConfigInversionStrictStyle.TEST) { configInversionMetricCollector.setUndocumentedEnvVarMetric(name); - System.err.println( - "Warning: Missing environment variable " - + name - + " from supported-configurations.json."); } if (configInversionStrict == ConfigInversionStrictStyle.STRICT) { diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java index d6281b391f3..c2a9dc2d90a 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java @@ -380,12 +380,11 @@ public static ConfigProvider createDefault() { ConfigProvider minimalProvider = new ConfigProvider(new SystemPropertiesConfigSource(), new EnvironmentConfigSource()); - // TODO: Set default value to false before merging ConfigHelper.setConfigInversionStrict( minimalProvider.getEnum( CONFIG_INVERSION_STRICT, ConfigInversionStrictStyle.class, - ConfigInversionStrictStyle.STRICT)); + ConfigInversionStrictStyle.WARNING)); Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { @@ -412,12 +411,11 @@ public static ConfigProvider withoutCollector() { ConfigProvider minimalProvider = new ConfigProvider( false, new SystemPropertiesConfigSource(), new EnvironmentConfigSource()); - // TODO: Set default value to false before merging ConfigHelper.setConfigInversionStrict( minimalProvider.getEnum( CONFIG_INVERSION_STRICT, ConfigInversionStrictStyle.class, - ConfigInversionStrictStyle.STRICT)); + ConfigInversionStrictStyle.WARNING)); Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { @@ -450,12 +448,11 @@ public static ConfigProvider withPropertiesOverride(Properties properties) { new EnvironmentConfigSource(), providedConfigSource); - // TODO: Set default value to false before merging ConfigHelper.setConfigInversionStrict( minimalProvider.getEnum( CONFIG_INVERSION_STRICT, ConfigInversionStrictStyle.class, - ConfigInversionStrictStyle.STRICT)); + ConfigInversionStrictStyle.WARNING)); Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { From 47a8f6a57c56f8a482e2e3f86bfa3209e008838a Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 20 Aug 2025 15:13:17 -0400 Subject: [PATCH 41/47] moving buildtime parser out of environment component --- components/environment/build.gradle.kts | 39 ------------- components/generator/build.gradle.kts | 55 +++++++++++++++++++ .../ParseSupportedConfigurations.java | 4 +- .../resources/supported-configurations.json | 0 gradle/configInversionLinter.gradle | 2 +- internal-api/build.gradle.kts | 1 + .../api/SupportedConfigurationSource.java | 2 +- settings.gradle.kts | 1 + 8 files changed, 61 insertions(+), 43 deletions(-) create mode 100644 components/generator/build.gradle.kts rename components/{environment/src/generator/java/datadog/environment => generator/src/generator/java/datadog/generator}/ParseSupportedConfigurations.java (98%) rename components/{environment => generator}/src/generator/resources/supported-configurations.json (100%) diff --git a/components/environment/build.gradle.kts b/components/environment/build.gradle.kts index 2b2727863c6..c8c280e6b26 100644 --- a/components/environment/build.gradle.kts +++ b/components/environment/build.gradle.kts @@ -3,46 +3,8 @@ plugins { id("com.gradleup.shadow") } -sourceSets { - create("generator") { - java.srcDir("src/generator/java") - } - val main by getting { - java { - srcDir("build/generated/sources/supported") - } - } -} - -dependencies { - "generatorImplementation"("com.fasterxml.jackson.core:jackson-databind:2.15.2") - "generatorImplementation"("org.slf4j:slf4j-api:1.7.36") - implementation(project(":dd-trace-api")) -} - apply(from = "$rootDir/gradle/java.gradle") -val compileGeneratorJava = tasks.named("compileGeneratorJava") - -val generateSupportedConfigurations by tasks.registering(JavaExec::class) { - // We can run the generator with the main sourceSet runtimeClasspath - dependsOn(compileGeneratorJava) - mainClass.set("datadog.environment.ParseSupportedConfigurations") - classpath = sourceSets["generator"].runtimeClasspath - - val outputFile = layout.buildDirectory.file("generated/sources/supported/GeneratedSupportedConfigurations.java") - args("supported-configurations.json", outputFile.get().asFile.absolutePath) - - doFirst { - outputFile.get().asFile.parentFile.mkdirs() - } -} -// Ensure Java compilation depends on the generated sources -sourceSets["main"].java.srcDir(layout.buildDirectory.dir("generated/sources/supported")) - -tasks.named("compileJava") { - dependsOn(generateSupportedConfigurations) -} /* * Add an addition gradle configuration to be consumed by bootstrap only. * "datadog.trace." prefix is required to be excluded from Jacoco instrumentation. @@ -58,7 +20,6 @@ tasks.shadowJar { extra.set("minimumInstructionCoverage", 0.7) val excludedClassesCoverage by extra { listOf( - "datadog.environment.GeneratedSupportedConfigurations", // generated static file "datadog.environment.JavaVirtualMachine", // depends on OS and JVM vendor "datadog.environment.JavaVirtualMachine.JvmOptionsHolder", // depends on OS and JVM vendor "datadog.environment.JvmOptions", // depends on OS and JVM vendor diff --git a/components/generator/build.gradle.kts b/components/generator/build.gradle.kts new file mode 100644 index 00000000000..a0f158dcb61 --- /dev/null +++ b/components/generator/build.gradle.kts @@ -0,0 +1,55 @@ +plugins { + `java-library` + id("com.gradleup.shadow") +} + +sourceSets { + create("generator") { + java.srcDir("src/generator/java") + } + val main by getting { + java { + srcDir("build/generated/sources/supported") + } + } +} + +dependencies { + "generatorImplementation"("com.fasterxml.jackson.core:jackson-databind:2.15.2") + "generatorImplementation"("org.slf4j:slf4j-api:1.7.36") + implementation(project(":dd-trace-api")) +} + +apply(from = "$rootDir/gradle/java.gradle") + +val compileGeneratorJava = tasks.named("compileGeneratorJava") + +val generateSupportedConfigurations by tasks.registering(JavaExec::class) { + // We can run the generator with the main sourceSet runtimeClasspath + dependsOn(compileGeneratorJava) + mainClass.set("datadog.generator.ParseSupportedConfigurations") + classpath = sourceSets["generator"].runtimeClasspath + + val outputFile = layout.buildDirectory.file("generated/sources/supported/GeneratedSupportedConfigurations.java") + args("supported-configurations.json", outputFile.get().asFile.absolutePath) + + doFirst { + outputFile.get().asFile.parentFile.mkdirs() + } +} +// Ensure Java compilation depends on the generated sources +sourceSets["main"].java.srcDir(layout.buildDirectory.dir("generated/sources/supported")) + +tasks.named("compileJava") { + dependsOn(generateSupportedConfigurations) +} + +// /* +// * Configure test coverage. +// */ +// extra.set("minimumInstructionCoverage", 0.7) +// val excludedClassesCoverage by extra { +// listOf( +// "datadog.environment.GeneratedSupportedConfigurations", // generated static file +// ) +// } diff --git a/components/environment/src/generator/java/datadog/environment/ParseSupportedConfigurations.java b/components/generator/src/generator/java/datadog/generator/ParseSupportedConfigurations.java similarity index 98% rename from components/environment/src/generator/java/datadog/environment/ParseSupportedConfigurations.java rename to components/generator/src/generator/java/datadog/generator/ParseSupportedConfigurations.java index 9d10fc60663..bf3156cd881 100644 --- a/components/environment/src/generator/java/datadog/environment/ParseSupportedConfigurations.java +++ b/components/generator/src/generator/java/datadog/generator/ParseSupportedConfigurations.java @@ -1,4 +1,4 @@ -package datadog.environment; +package datadog.generator; import com.fasterxml.jackson.databind.ObjectMapper; import java.io.IOException; @@ -60,7 +60,7 @@ private static void generateJavaFile( Map deprecated) throws IOException { try (PrintWriter out = new PrintWriter(Files.newBufferedWriter(Paths.get(outputPath)))) { - out.println("package datadog.environment;"); + out.println("package datadog.generator;"); out.println(); out.println("import java.util.*;"); out.println(); diff --git a/components/environment/src/generator/resources/supported-configurations.json b/components/generator/src/generator/resources/supported-configurations.json similarity index 100% rename from components/environment/src/generator/resources/supported-configurations.json rename to components/generator/src/generator/resources/supported-configurations.json diff --git a/gradle/configInversionLinter.gradle b/gradle/configInversionLinter.gradle index cee4fb9c957..0b0ff24c595 100644 --- a/gradle/configInversionLinter.gradle +++ b/gradle/configInversionLinter.gradle @@ -7,7 +7,7 @@ tasks.register('logEnvVarUsages') { doLast { def repoRoot = projectDir.toPath() - def jsonFile = file("$projectDir/components/environment/src/generator/resources/supported-configurations.json") + def jsonFile = file("$projectDir/components/generator/src/generator/resources/supported-configurations.json") if (!jsonFile.exists()) { throw new GradleException("supported-configurations.json not found at $jsonFile") diff --git a/internal-api/build.gradle.kts b/internal-api/build.gradle.kts index eb25ebd9ac8..87eafecd625 100644 --- a/internal-api/build.gradle.kts +++ b/internal-api/build.gradle.kts @@ -271,6 +271,7 @@ dependencies { api(libs.slf4j) api(project(":components:context")) api(project(":components:environment")) + api(project(":components:generator")) api(project(":components:json")) api(project(":components:yaml")) api(project(":utils:time-utils")) diff --git a/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java b/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java index d13d9ffed9f..c05e99e43a4 100644 --- a/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java +++ b/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java @@ -1,6 +1,6 @@ package datadog.trace.api; -import datadog.environment.GeneratedSupportedConfigurations; +import datadog.generator.GeneratedSupportedConfigurations; import java.util.List; import java.util.Map; import java.util.Set; diff --git a/settings.gradle.kts b/settings.gradle.kts index 70bbfb5679f..cb903848780 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -103,6 +103,7 @@ include( ":communication", ":components:context", ":components:environment", + ":components:generator", ":components:json", ":components:yaml", ":telemetry", From 94f392cee2a869dcddc32fca81200a79162104c9 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 20 Aug 2025 17:54:12 -0400 Subject: [PATCH 42/47] updating tests bootstrap constants and spock runner --- components/generator/build.gradle.kts | 10 ---------- .../main/java/datadog/trace/bootstrap/Constants.java | 1 + .../NativeImageGeneratorRunnerInstrumentation.java | 2 +- .../groovy/datadog/trace/agent/test/SpockRunner.java | 1 + gradle/dependencies.gradle | 1 + 5 files changed, 4 insertions(+), 11 deletions(-) diff --git a/components/generator/build.gradle.kts b/components/generator/build.gradle.kts index a0f158dcb61..ee8ee90069e 100644 --- a/components/generator/build.gradle.kts +++ b/components/generator/build.gradle.kts @@ -43,13 +43,3 @@ sourceSets["main"].java.srcDir(layout.buildDirectory.dir("generated/sources/supp tasks.named("compileJava") { dependsOn(generateSupportedConfigurations) } - -// /* -// * Configure test coverage. -// */ -// extra.set("minimumInstructionCoverage", 0.7) -// val excludedClassesCoverage by extra { -// listOf( -// "datadog.environment.GeneratedSupportedConfigurations", // generated static file -// ) -// } diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Constants.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Constants.java index 8f4ba377161..e524e54615f 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Constants.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Constants.java @@ -19,6 +19,7 @@ public final class Constants { "datadog.environment", "datadog.json", "datadog.yaml", + "datadog.generator", "datadog.appsec.api", "datadog.trace.api", "datadog.trace.bootstrap", diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index 94ed7597f5d..f2a266f47f3 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -72,7 +72,7 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "com.datadog.profiling.controller.openjdk.events.SmapEntryFactory$SmapParseErrorEvent:build_time," + "com.datadog.profiling.ddprof.JavaProfilerLoader:run_time," + "datadog.environment.JavaVirtualMachine:rerun," - + "datadog.environment.GeneratedSupportedConfigurations:build_time," + + "datadog.generator.GeneratedSupportedConfigurations:build_time," + "datadog.trace.agent.tooling.WeakMaps$Adapter:build_time," + "datadog.trace.api.Config:rerun," + "datadog.trace.api.Platform:rerun," diff --git a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/SpockRunner.java b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/SpockRunner.java index 80160b59e9f..f4763487bc4 100644 --- a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/SpockRunner.java +++ b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/SpockRunner.java @@ -42,6 +42,7 @@ public class SpockRunner extends JUnitPlatform { "datadog.environment", "datadog.json", "datadog.yaml", + "datadog.generator", "datadog.appsec.api", "datadog.trace.api", "datadog.trace.bootstrap", diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index 73a71bdbffa..66b7d4ad1b4 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -18,6 +18,7 @@ final class CachedData { exclude(project(':communication')) exclude(project(':components:context')) exclude(project(':components:environment')) + exclude(project(':components:generator')) exclude(project(':components:json')) exclude(project(':components:yaml')) exclude(project(':remote-config:remote-config-api')) From 6c2a5512c4aaf603a764129b3fefdaaaa0b8554b Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Mon, 25 Aug 2025 12:38:31 -0400 Subject: [PATCH 43/47] undo migration to configHelper --- .../test/DefaultInstrumenterForkedTest.groovy | 8 +----- .../ci/env/CiEnvironmentImpl.java | 4 +-- .../logging/ddlogger/DDLoggerFactory.java | 4 +-- .../instrumentation/maven3/MavenUtils.java | 5 ++-- .../trace/bootstrap/AgentBootstrap.java | 8 +++--- gradle/configInversionLinter.gradle | 10 ------- .../main/java/datadog/trace/api/Config.java | 27 ++++++++++--------- .../trace/api/env/CapturedEnvironment.java | 6 ++--- .../config/provider/AgentArgsInjector.java | 4 +-- .../provider/EnvironmentConfigSource.java | 4 +-- .../provider/OtelEnvironmentConfigSource.java | 4 +-- .../java/datadog/trace/util/PidHelper.java | 15 ++++++----- .../trace/util/TempLocationManager.java | 4 +-- .../datadog/telemetry/TelemetryRequest.java | 8 +++--- .../common/container/ServerlessInfo.java | 4 +-- 15 files changed, 50 insertions(+), 65 deletions(-) diff --git a/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy b/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy index 32937a882c2..eb448819bd2 100644 --- a/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy +++ b/dd-java-agent/agent-builder/src/test/groovy/datadog/trace/agent/test/DefaultInstrumenterForkedTest.groovy @@ -1,10 +1,9 @@ package datadog.trace.agent.test -import datadog.trace.api.ConfigHelper + import datadog.trace.agent.tooling.InstrumenterModule import datadog.trace.agent.tooling.bytebuddy.matcher.DDElementMatchers import datadog.trace.agent.tooling.bytebuddy.outline.TypePoolFacade -import static datadog.trace.api.ConfigInversionStrictStyle.TEST import datadog.trace.test.util.DDSpecification class DefaultInstrumenterForkedTest extends DDSpecification { @@ -114,8 +113,6 @@ class DefaultInstrumenterForkedTest extends DDSpecification { setup: injectEnvConfig("DD_INTEGRATIONS_ENABLED", "false") injectEnvConfig("DD_INTEGRATION_${value}_ENABLED", "true") - def strictness = ConfigHelper.configInversionStrictFlag() - ConfigHelper.setConfigInversionStrict(TEST) when: def target = new TestDefaultInstrumenter(name, altName) @@ -124,9 +121,6 @@ class DefaultInstrumenterForkedTest extends DDSpecification { System.getenv("DD_INTEGRATION_${value}_ENABLED") == "true" target.enabled == enabled - cleanup: - ConfigHelper.setConfigInversionStrict(strictness) - where: value | enabled | name | altName "TEST" | true | "test" | "asdf" diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java index 473cb808a63..d838cc9db5e 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/env/CiEnvironmentImpl.java @@ -1,6 +1,6 @@ package datadog.trace.civisibility.ci.env; -import datadog.trace.api.ConfigHelper; +import datadog.environment.EnvironmentVariables; import java.util.Map; public class CiEnvironmentImpl implements CiEnvironment { @@ -12,7 +12,7 @@ public CiEnvironmentImpl(Map env) { } public static CiEnvironment local() { - return new CiEnvironmentImpl(ConfigHelper.getEnvironmentVariables()); + return new CiEnvironmentImpl(EnvironmentVariables.getAll()); } @Override diff --git a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java index a1ec70f495a..083d559b711 100644 --- a/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java +++ b/dd-java-agent/agent-logging/src/main/java/datadog/trace/logging/ddlogger/DDLoggerFactory.java @@ -1,7 +1,7 @@ package datadog.trace.logging.ddlogger; +import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigHelper; import datadog.trace.api.Platform; import datadog.trace.logging.LogLevel; import datadog.trace.logging.LogLevelSwitcher; @@ -108,7 +108,7 @@ private static boolean isFlagEnabled( if ("false".equalsIgnoreCase(value)) { return false; } - value = ConfigHelper.getEnvironmentVariable(envVar); + value = EnvironmentVariables.get(envVar); if ("true".equalsIgnoreCase(value)) { return true; } diff --git a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java index d11eee72cf3..3b49dce6841 100644 --- a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java +++ b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java @@ -1,6 +1,6 @@ package datadog.trace.instrumentation.maven3; -import datadog.trace.api.ConfigHelper; +import datadog.environment.EnvironmentVariables; import datadog.trace.api.civisibility.domain.JavaAgent; import datadog.trace.util.MethodHandles; import datadog.trace.util.Strings; @@ -66,8 +66,7 @@ public abstract class MavenUtils { * of the request object */ public static String getCommandLine(MavenSession session) { - String mavenCmdLineArgsEnvVar = - ConfigHelper.getEnvironmentVariable(MAVEN_CMD_LINE_ARGS_ENVIRONMENT_VAR); + String mavenCmdLineArgsEnvVar = EnvironmentVariables.get(MAVEN_CMD_LINE_ARGS_ENVIRONMENT_VAR); if (mavenCmdLineArgsEnvVar != null) { return MVN_CMD_LINE_INVOCATION + mavenCmdLineArgsEnvVar; } diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java index 584876d0006..5e8b8567849 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java @@ -2,6 +2,7 @@ import static java.nio.charset.StandardCharsets.UTF_8; +import datadog.trace.bootstrap.environment.EnvironmentVariables; import datadog.trace.bootstrap.environment.JavaVirtualMachine; import datadog.trace.bootstrap.environment.SystemProperties; import de.thetaphi.forbiddenapis.SuppressForbidden; @@ -43,7 +44,6 @@ *
  • Do dot touch any logging facilities here so we can configure them later * */ -@SuppressForbidden public final class AgentBootstrap { static final String LIB_INJECTION_ENABLED_ENV_VAR = "DD_INJECTION_ENABLED"; static final String LIB_INJECTION_FORCE_SYS_PROP = "dd.inject.force"; @@ -91,7 +91,7 @@ public static void agentmain(final String agentArgs, final Instrumentation inst) } private static BootstrapInitializationTelemetry createInitializationTelemetry() { - String forwarderPath = System.getenv("DD_TELEMETRY_FORWARDER_PATH"); + String forwarderPath = EnvironmentVariables.get("DD_TELEMETRY_FORWARDER_PATH"); if (forwarderPath == null) { return BootstrapInitializationTelemetry.noOpInstance(); } @@ -165,12 +165,12 @@ private static void agentmainImpl( static boolean getConfig(String configName) { switch (configName) { case LIB_INJECTION_ENABLED_ENV_VAR: - return System.getenv(LIB_INJECTION_ENABLED_ENV_VAR) != null; + return EnvironmentVariables.get(LIB_INJECTION_ENABLED_ENV_VAR) != null; case LIB_INJECTION_FORCE_SYS_PROP: { String envVarName = LIB_INJECTION_FORCE_SYS_PROP.replace('.', '_').replace('-', '_').toUpperCase(); - String injectionForceFlag = System.getenv(envVarName); + String injectionForceFlag = EnvironmentVariables.get(envVarName); if (injectionForceFlag == null) { injectionForceFlag = SystemProperties.get(LIB_INJECTION_FORCE_SYS_PROP); } diff --git a/gradle/configInversionLinter.gradle b/gradle/configInversionLinter.gradle index 0b0ff24c595..98408b803ab 100644 --- a/gradle/configInversionLinter.gradle +++ b/gradle/configInversionLinter.gradle @@ -105,13 +105,3 @@ tasks.register('checkEnvironmentVariablesUsage') { } } } - -tasks.named('spotlessCheck') { - dependsOn tasks.named('logEnvVarUsages') - dependsOn tasks.named('checkEnvironmentVariablesUsage') -} - -tasks.named('spotlessApply') { - dependsOn tasks.named('logEnvVarUsages') - dependsOn tasks.named('checkEnvironmentVariablesUsage') -} diff --git a/internal-api/src/main/java/datadog/trace/api/Config.java b/internal-api/src/main/java/datadog/trace/api/Config.java index 68e6f32b90f..36a165ee1c3 100644 --- a/internal-api/src/main/java/datadog/trace/api/Config.java +++ b/internal-api/src/main/java/datadog/trace/api/Config.java @@ -631,6 +631,7 @@ import static datadog.trace.util.CollectionUtils.tryMakeImmutableSet; import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; +import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import datadog.environment.SystemProperties; @@ -1201,8 +1202,6 @@ public static String getHostName() { private final boolean telemetryDebugRequestsEnabled; - private final ConfigInversionStrictStyle configInversionStrict; - private final boolean agentlessLogSubmissionEnabled; private final int agentlessLogSubmissionQueueSize; private final String agentlessLogSubmissionLevel; @@ -2007,8 +2006,6 @@ PROFILING_DATADOG_PROFILER_ENABLED, isDatadogProfilerSafeInCurrentEnvironment()) DEFAULT_TELEMETRY_DEPENDENCY_RESOLUTION_QUEUE_SIZE); clientIpEnabled = configProvider.getBoolean(CLIENT_IP_ENABLED, DEFAULT_CLIENT_IP_ENABLED); - configInversionStrict = ConfigHelper.configInversionStrictFlag(); - appSecReportingInband = configProvider.getBoolean(APPSEC_REPORTING_INBAND, DEFAULT_APPSEC_REPORTING_INBAND); appSecRulesFile = configProvider.getString(APPSEC_RULES_FILE, null); @@ -3483,10 +3480,6 @@ public boolean isClientIpEnabled() { return clientIpEnabled; } - public ConfigInversionStrictStyle isConfigInversionStrict() { - return configInversionStrict; - } - public ProductActivation getAppSecActivation() { return instrumenterConfig.getAppSecActivation(); } @@ -4748,8 +4741,18 @@ public String getFinalProfilingUrl() { // when agentless profiling is turned on we send directly to our intake return "https://intake.profile." + site + "/api/v2/profile"; } else { - // when profilingUrl and agentless are not set we send to the dd trace agent running locally - return getAgentUrl() + "/profiling/v1/input"; + // When profilingUrl and agentless are not set we send to the dd trace agent running locally + // However, there are two gotchas: + // - the agentHost, agentPort split will trip on IPv6 addresses because of the colon -> we + // need to use the agentUrl + // - but the agentUrl can be unix socket and OKHttp doesn't support that so we fall back to + // http + // + // There is some magic behind the scenes where the http url will be converted to UDS if the + // target is a unix socket only + String baseUrl = + agentUrl.startsWith("unix:") ? "http://" + agentHost + ":" + agentPort : agentUrl; + return baseUrl + "/profiling/v1/input"; } } @@ -5214,7 +5217,7 @@ private static boolean isWindowsOS() { } private static String getEnv(String name) { - String value = ConfigHelper.getEnvironmentVariable(name); + String value = EnvironmentVariables.get(name); if (value != null) { ConfigCollector.get().put(name, value, ConfigOrigin.ENV); } @@ -5640,8 +5643,6 @@ public String toString() { + grpcClientErrorStatuses + ", clientIpEnabled=" + clientIpEnabled - + ", configInversionStrict=" - + configInversionStrict + ", appSecReportingInband=" + appSecReportingInband + ", appSecRulesFile='" diff --git a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java b/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java index d6edf8ae21c..956db28c2de 100644 --- a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java +++ b/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java @@ -1,7 +1,7 @@ package datadog.trace.api.env; +import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; -import datadog.trace.api.ConfigHelper; import datadog.trace.api.config.GeneralConfig; import java.io.File; import java.util.HashMap; @@ -78,8 +78,8 @@ static void useFixedProcessInfo(final ProcessInfo processInfo) { * autodetection will return either the JAR filename or the java main class. */ private String autodetectServiceName() { - String inAas = ConfigHelper.getEnvironmentVariable("DD_AZURE_APP_SERVICES"); - String siteName = ConfigHelper.getEnvironmentVariable("WEBSITE_SITE_NAME"); + String inAas = EnvironmentVariables.get("DD_AZURE_APP_SERVICES"); + String siteName = EnvironmentVariables.get("WEBSITE_SITE_NAME"); if (("true".equalsIgnoreCase(inAas) || "1".equals(inAas)) && siteName != null) { return siteName; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java index eea7fac901a..3254c30db7d 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java @@ -1,7 +1,7 @@ package datadog.trace.bootstrap.config.provider; +import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigHelper; import datadog.trace.util.Strings; import java.util.Map; @@ -30,7 +30,7 @@ public static void injectAgentArgsConfig(Map args) { } String envVarName = Strings.toEnvVar(propertyName); - String envVarValue = ConfigHelper.getEnvironmentVariable(envVarName); + String envVarValue = EnvironmentVariables.get(envVarName); if (envVarValue != null) { // env variables should have higher priority than agent arguments continue; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java index f6bfae363a4..c8531f6a094 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java @@ -3,13 +3,13 @@ import static datadog.trace.api.ConfigOrigin.ENV; import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; -import datadog.trace.api.ConfigHelper; +import datadog.environment.EnvironmentVariables; import datadog.trace.api.ConfigOrigin; final class EnvironmentConfigSource extends ConfigProvider.Source { @Override protected String get(String key) { - return ConfigHelper.getEnvironmentVariable(propertyNameToEnvironmentVariableName(key)); + return EnvironmentVariables.get(propertyNameToEnvironmentVariableName(key)); } @Override diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java index ad74d12db22..863a59fdcf8 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java @@ -16,8 +16,8 @@ import static datadog.trace.api.config.TracerConfig.TRACE_SAMPLE_RATE; import static datadog.trace.util.Strings.toEnvVar; +import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigHelper; import datadog.trace.api.ConfigOrigin; import datadog.trace.api.TracePropagationStyle; import datadog.trace.api.telemetry.OtelEnvMetricCollector; @@ -187,7 +187,7 @@ private String getDatadogProperty(String sysProp) { private static String getProperty(String sysProp) { String value = SystemProperties.get(sysProp); if (null == value) { - value = ConfigHelper.getEnvironmentVariable(toEnvVar(sysProp)); + value = EnvironmentVariables.get(toEnvVar(sysProp)); } return value; } diff --git a/internal-api/src/main/java/datadog/trace/util/PidHelper.java b/internal-api/src/main/java/datadog/trace/util/PidHelper.java index 8e911cf065b..43fd7fa96ec 100644 --- a/internal-api/src/main/java/datadog/trace/util/PidHelper.java +++ b/internal-api/src/main/java/datadog/trace/util/PidHelper.java @@ -1,9 +1,9 @@ package datadog.trace.util; +import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigHelper; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.IOException; import java.lang.management.ManagementFactory; @@ -11,7 +11,9 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.util.Collections; +import java.util.Objects; import java.util.Set; +import java.util.function.Predicate; import java.util.function.Supplier; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -77,15 +79,14 @@ private static String getTempDir() { if (OperatingSystem.isLinux()) { return "/tmp"; } else if (OperatingSystem.isWindows()) { - return Stream.of( - ConfigHelper.getEnvironmentVariable("TMP"), - ConfigHelper.getEnvironmentVariable("TEMP"), - ConfigHelper.getEnvironmentVariable("USERPROFILE")) - .filter(String::isEmpty) + return Stream.of("TMP", "TEMP", "USERPROFILE") + .map(EnvironmentVariables::get) + .filter(Objects::nonNull) + .filter(((Predicate) String::isEmpty).negate()) .findFirst() .orElse("C:\\Windows"); } else if (OperatingSystem.isMacOs()) { - return ConfigHelper.getEnvironmentVariable("TMPDIR"); + return EnvironmentVariables.get("TMPDIR"); } else { return SystemProperties.get("java.io.tmpdir"); } diff --git a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java index d8babb9dfd5..0942a277dae 100644 --- a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java +++ b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java @@ -2,8 +2,8 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; +import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigHelper; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; @@ -308,7 +308,7 @@ private TempLocationManager() { static String getBaseTempDirName() { String userName = SystemProperties.get("user.name"); // unlikely, but fall-back to system env based user name - userName = userName == null ? ConfigHelper.getEnvironmentVariable("USER") : userName; + userName = userName == null ? EnvironmentVariables.get("USER") : userName; // make sure we do not have any illegal characters in the user name userName = userName != null ? userName.replace('.', '_').replace('/', '_').replace(' ', '_') : null; diff --git a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java index 02879d5d5f7..f903feb1aef 100644 --- a/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java +++ b/telemetry/src/main/java/datadog/telemetry/TelemetryRequest.java @@ -2,6 +2,7 @@ import datadog.common.container.ContainerInfo; import datadog.communication.ddagent.TracerVersion; +import datadog.environment.EnvironmentVariables; import datadog.telemetry.api.DistributionSeries; import datadog.telemetry.api.Integration; import datadog.telemetry.api.LogMessage; @@ -9,7 +10,6 @@ import datadog.telemetry.api.RequestType; import datadog.telemetry.dependency.Dependency; import datadog.trace.api.Config; -import datadog.trace.api.ConfigHelper; import datadog.trace.api.ConfigSetting; import datadog.trace.api.DDTags; import datadog.trace.api.InstrumenterConfig; @@ -112,9 +112,9 @@ public void writeProducts() { } public void writeInstallSignature() { - String installId = ConfigHelper.getEnvironmentVariable("DD_INSTRUMENTATION_INSTALL_ID"); - String installType = ConfigHelper.getEnvironmentVariable("DD_INSTRUMENTATION_INSTALL_TYPE"); - String installTime = ConfigHelper.getEnvironmentVariable("DD_INSTRUMENTATION_INSTALL_TIME"); + String installId = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_ID"); + String installType = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_TYPE"); + String installTime = EnvironmentVariables.get("DD_INSTRUMENTATION_INSTALL_TIME"); try { requestBody.writeInstallSignature(installId, installType, installTime); diff --git a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java index 5a8a85fb89d..a068e6d49c2 100644 --- a/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java +++ b/utils/container-utils/src/main/java/datadog/common/container/ServerlessInfo.java @@ -1,6 +1,6 @@ package datadog.common.container; -import datadog.trace.api.ConfigHelper; +import datadog.environment.EnvironmentVariables; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.File; @@ -13,7 +13,7 @@ public class ServerlessInfo { private final boolean hasExtension; private ServerlessInfo(final String extensionPath) { - this.functionName = ConfigHelper.getEnvironmentVariable(AWS_FUNCTION_VARIABLE); + this.functionName = EnvironmentVariables.get(AWS_FUNCTION_VARIABLE); if (null == extensionPath) { this.hasExtension = false; } else { From fe697ff1bf145c4f41f92504003393b29c6462d9 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Tue, 26 Aug 2025 09:32:10 -0400 Subject: [PATCH 44/47] pushing changes for new module --- .../ddagent/DDAgentFeaturesDiscovery.java | 2 +- .../StackTraceEventFrameWriter.java | 2 +- .../stacktrace/StackTraceEventWriter.java | 2 +- .../DDAgentFeaturesDiscoveryTest.groovy | 2 +- components/yaml/build.gradle.kts | 9 - components/yaml/gradle.lockfile | 158 ------------------ dd-java-agent/agent-bootstrap/build.gradle | 1 + .../java/datadog/trace/bootstrap/Agent.java | 10 +- .../java/concurrent/QueueTimerHelper.java | 2 +- .../CiVisibilityRepoServices.java | 2 +- .../trace/civisibility/ProcessHierarchy.java | 2 +- .../trace/civisibility/ci/AppVeyorInfo.java | 2 +- .../trace/civisibility/ci/BitBucketInfo.java | 2 +- .../civisibility/ci/GithubActionsInfo.java | 2 +- .../civisibility/ci/PullRequestInfo.java | 2 +- .../config/ExecutionSettingsFactoryImpl.java | 2 +- .../config/TracerEnvironment.java | 2 +- .../percentage/JacocoCoverageCalculator.java | 2 +- .../decorator/TestDecoratorImpl.java | 2 +- .../buildsystem/BuildSystemModuleImpl.java | 2 +- .../git/CILocalGitInfoBuilder.java | 2 +- .../civisibility/git/tree/ShellGitClient.java | 2 +- .../civisibility/ci/CITagsProviderTest.groovy | 2 +- .../CiVisibilityMetricCollectorTest.groovy | 2 +- .../datadog/crashtracking/CrashUploader.java | 2 +- .../CrashUploaderScriptInitializer.java | 2 +- .../crashtracking/CrashUploaderTest.java | 2 +- .../bootstrap/debugger/CorrelationAccess.java | 2 +- .../debugger/agent/DebuggerTransformer.java | 2 +- .../agent/SourceFileTrackingTransformer.java | 2 +- .../debugger/instrumentation/ASMHelper.java | 2 +- .../debugger/instrumentation/MethodInfo.java | 2 +- .../instrumentation/MetricInstrumentor.java | 2 +- .../debugger/symbol/SymbolAggregator.java | 2 +- .../symbol/SymbolExtractionTransformer.java | 2 +- .../debugger/symbol/SymbolExtractor.java | 2 +- .../debugger/symbol/SymDBEnablementTest.java | 2 +- .../debugger/util/LogProbeTestHelper.java | 2 +- .../test/java/utils/TestClassFileHelper.java | 2 +- .../internal/InstrumentationConfig.java | 2 +- .../ddprof/DatadogProfilerController.java | 2 +- .../ddprof/DatadogProfilerSettings.java | 2 +- .../ddprof/DatadogProfilerControllerTest.java | 2 +- .../openjdk/JFREventContextIntegration.java | 2 +- .../openjdk/JfrProfilerSettings.java | 2 +- .../controller/openjdk/OpenJdkController.java | 2 +- .../openjdk/OpenJdkOngoingRecording.java | 2 +- .../controller/InstantiationTest.java | 2 +- .../openjdk/OpenJdkControllerTest.java | 2 +- .../oracle/OracleJdkController.java | 2 +- .../oracle/OracleJdkControllerTest.java | 2 +- .../controller/ProfilerSettingsSupport.java | 2 +- .../profiling/controller/ProfilingSystem.java | 2 +- .../ProfilerSettingsSupportTest.java | 2 +- .../controller/ProfilingSystemTest.java | 2 +- .../profiling/ddprof/DatadogProfiler.java | 2 +- .../ddprof/DatadogProfilerConfig.java | 2 +- .../ddprof/DatadogProfilerRecordingTest.java | 2 +- .../profiling/ddprof/DatadogProfilerTest.java | 2 +- .../profiling/uploader/ProfileUploader.java | 2 +- .../uploader/ProfileUploaderTest.java | 2 +- .../profiling/agent/CompositeController.java | 2 +- .../profiling/agent/ProfilingAgent.java | 2 +- .../agent/CompositeControllerTest.java | 2 +- .../agent/tooling/InstrumenterModule.java | 4 +- .../tooling/bytebuddy/ClassFileLocators.java | 2 +- .../bytebuddy/NewTaskForRewritingVisitor.java | 2 +- .../matcher/ClassLoaderMatchers.java | 2 +- .../context/FieldBackedContextInjector.java | 2 +- .../FieldBackedContextRequestRewriter.java | 2 +- .../trace/agent/tooling/muzzle/Reference.java | 2 +- .../tooling/muzzle/ReferenceCreator.java | 4 +- .../tooling/muzzle/AddableClassLoader.java | 2 +- .../libs/ddprof/DdprofLibraryLoader.java | 2 +- .../v1/sqs/AbstractSqsInstrumentation.java | 2 +- .../v2/sqs/AbstractSqsInstrumentation.java | 2 +- .../cassandra/CassandraClientDecorator.java | 2 +- .../cassandra4/CassandraClientDecorator.java | 2 +- ...ableWallclockProfilingInstrumentation.java | 2 +- ...veImageGeneratorRunnerInstrumentation.java | 18 +- .../legacy/GradleProjectConfigurator.groovy | 2 +- .../gradle/GradleDaemonInjectionUtils.java | 2 +- .../TaskUnwrappingInstrumentation.java | 2 +- .../JavaForkJoinWorkQueueInstrumentation.java | 2 +- .../ByteBufferInstrumentation.java | 2 +- .../DirectByteBufferInstrumentation.java | 2 +- .../FileChannelImplInstrumentation.java | 2 +- .../instrumentation/junit4/CucumberUtils.java | 2 +- .../Cucumber4ExecutionInstrumentation.java | 2 +- .../JUnit4TestOrdererInstrumentation.java | 2 +- .../JUnit4TestSorterInstrumentation.java | 2 +- .../junit4/MUnitTracingListener.java | 2 +- .../MUnitExecutionInstrumentation.java | 2 +- .../JUnit4ExecutionInstrumentation.java | 2 +- .../order/JUnit5TestOrderInstrumentation.java | 2 +- ...ParameterizedExecutionInstrumentation.java | 2 +- .../JUnit5ExecutionInstrumentation.java | 2 +- .../JUnit5ExecutionStoreInstrumentation.java | 2 +- ...it5NodeTestTaskContextInstrumentation.java | 2 +- .../instrumentation/karate/KarateUtils.java | 2 +- .../liberty20/Liberty20Test.groovy | 2 +- .../maven3/MavenProjectConfigurator.java | 2 +- .../instrumentation/maven3/MavenUtils.java | 2 +- ...gleThreadEventExecutorInstrumentation.java | 2 +- .../ScalatestExecutionInstrumentation.java | 2 +- .../groovy/JettyServletHandlerTest.groovy | 2 +- .../SocketConnectInstrumentation.java | 2 +- .../synapse3/SynapseTest.groovy | 2 +- .../TestNGClassListenerInstrumentation.java | 2 +- .../TestNGClassListenerInstrumentation.java | 2 +- .../TestNGExecutionInstrumentation.java | 2 +- .../order/TestNGOrderInstrumentation.java | 2 +- .../AbstractTibcoInstrumentation.java | 2 +- .../WebsphereSecurityInstrumentation.java | 2 +- .../trace/agent/test/AgentTestRunner.groovy | 2 +- .../agent/test/base/HttpServerTest.groovy | 2 +- .../agent/test/utils/ClasspathUtils.java | 2 +- .../datadog/smoketest/RemoteConfigHelper.java | 2 +- .../smoketest/GradleDaemonSmokeTest.groovy | 2 +- .../datadog/smoketest/MavenSmokeTest.groovy | 2 +- .../smoketest/AbstractSmokeTest.groovy | 2 +- .../trace/common/writer/WriterFactory.java | 2 +- .../core/taginterceptor/TagInterceptor.java | 2 +- .../core/tagprocessor/QueryObfuscator.java | 2 +- .../tagprocessor/SpanPointersProcessor.java | 2 +- .../taginterceptor/TagInterceptorTest.groovy | 2 +- gradle/dependencies.gradle | 2 - internal-api/build.gradle.kts | 11 +- .../ClassloaderConfigurationOverrides.java | 2 +- .../main/java/datadog/trace/api/Config.java | 12 +- .../java/datadog/trace/api/DynamicConfig.java | 4 +- .../datadog/trace/api/InstrumenterConfig.java | 2 +- .../java/datadog/trace/api/ProcessTags.java | 2 +- .../trace/api/appsec/AppSecEventTracker.java | 2 +- .../CiVisibilityDistributionMetric.java | 2 +- .../CiVisibilityMetricCollector.java | 2 +- .../telemetry/CiVisibilityMetricData.java | 2 +- .../datadog/trace/api/git/CommitInfo.java | 2 +- .../trace/api/git/GitInfoProvider.java | 2 +- .../java/datadog/trace/api/git/GitUtils.java | 2 +- .../datadog/trace/api/git/PersonInfo.java | 2 +- .../api/git/UserSuppliedGitInfoBuilder.java | 4 +- .../trace/api/iast/IastDetectionMode.java | 2 +- .../iast/telemetry/IastMetricCollector.java | 2 +- .../api/profiling/ProfilingEnablement.java | 2 +- .../api/telemetry/CoreMetricCollector.java | 1 + .../api/telemetry/WafMetricCollector.java | 1 + .../config/provider/AgentArgsInjector.java | 3 +- .../trace/util/TempLocationManager.java | 2 +- .../java/datadog/trace/util/TraceUtils.java | 2 +- .../trace/api/ConfigCollectorTest.groovy | 2 +- .../datadog/trace/api/ConfigTest.groovy | 2 +- .../trace/api/ProcessTagsForkedTest.groovy | 2 +- .../git/UserSuppliedGitInfoBuilderTest.groovy | 2 +- .../api/iast/IastDetectionModeTest.groovy | 2 +- .../ConfigInversionMetricCollectorTest.groovy | 2 +- .../provider/StableConfigSourceTest.groovy | 8 +- .../profiling/ProfilingEnablementTest.java | 2 +- .../trace/util/TempLocationManagerTest.java | 2 +- settings.gradle.kts | 5 +- .../datadog/telemetry/TelemetryClient.java | 2 +- .../CiVisibilityMetricPeriodicAction.java | 2 +- .../ConfigInversionMetricPeriodicAction.java | 2 +- .../metric/CoreMetricsPeriodicAction.java | 2 +- .../metric/IastMetricPeriodicAction.java | 2 +- .../metric/MetricPeriodicAction.java | 2 +- .../metric/OtelEnvMetricPeriodicAction.java | 2 +- .../metric/WafMetricPeriodicAction.java | 2 +- .../BufferedEventsSpecification.groovy | 4 +- .../datadog/telemetry/EventSourceTest.groovy | 4 +- .../ExtendedHeartbeatDataSpecification.groovy | 4 +- .../TelemetryRequestBodySpecification.groovy | 4 +- .../TelemetryRunnableSpecification.groovy | 4 +- .../TelemetryServiceSpecification.groovy | 6 +- .../TelemetrySystemSpecification.groovy | 2 +- .../telemetry/TestTelemetryRouter.groovy | 2 +- .../metric/MetricPeriodicActionTest.groovy | 2 +- .../config-utils}/build.gradle.kts | 3 +- .../ParseSupportedConfigurations.java | 0 .../resources/supported-configurations.json | 0 .../CapturedEnvironmentConfigSource.java | 5 +- .../java/datadog/config}/ConfigCollector.java | 2 +- .../java/datadog/config}/ConfigConverter.java | 4 +- .../java/datadog/config}/ConfigHelper.java | 6 +- .../config}/ConfigInversionStrictStyle.java | 2 +- .../java/datadog/config}/ConfigOrigin.java | 2 +- .../java/datadog/config}/ConfigProvider.java | 14 +- .../java/datadog/config}/ConfigSetting.java | 2 +- .../config}/EnvironmentConfigSource.java | 7 +- .../config}/OtelEnvironmentConfigSource.java | 89 +++++----- .../config}/PropertiesConfigSource.java | 5 +- .../datadog/config}/StableConfigParser.java | 14 +- .../datadog/config}/StableConfigSource.java | 5 +- .../config}/SupportedConfigurationSource.java | 2 +- .../config}/SystemPropertiesConfigSource.java | 7 +- .../config}/env/CapturedEnvironment.java | 2 +- .../datadog/config}/stableconfig/Rule.java | 2 +- .../config}/stableconfig/Selector.java | 2 +- .../config}/stableconfig/StableConfig.java | 2 +- .../ConfigInversionMetricCollector.java | 2 +- .../config}/telemetry/MetricCollector.java | 4 +- .../telemetry/OtelEnvMetricCollector.java | 2 +- .../java/datadog/config}/util/Strings.java | 2 +- .../main/java/datadog/yaml/YamlParser.java | 0 .../src/test/java}/ConfigHelperTest.java | 4 +- .../TestSupportedConfigurationSource.java | 3 +- 206 files changed, 305 insertions(+), 478 deletions(-) delete mode 100644 components/yaml/build.gradle.kts delete mode 100644 components/yaml/gradle.lockfile rename {components/generator => utils/config-utils}/build.gradle.kts (91%) rename {components/generator => utils/config-utils}/src/generator/java/datadog/generator/ParseSupportedConfigurations.java (100%) rename {components/generator => utils/config-utils}/src/generator/resources/supported-configurations.json (100%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/CapturedEnvironmentConfigSource.java (77%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/ConfigCollector.java (98%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/ConfigConverter.java (99%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/ConfigHelper.java (96%) rename {dd-trace-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/ConfigInversionStrictStyle.java (94%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/ConfigOrigin.java (97%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/ConfigProvider.java (97%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/ConfigSetting.java (99%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/EnvironmentConfigSource.java (59%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/OtelEnvironmentConfigSource.java (78%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/PropertiesConfigSource.java (84%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/StableConfigParser.java (95%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/StableConfigSource.java (94%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/SupportedConfigurationSource.java (97%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/SystemPropertiesConfigSource.java (59%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/env/CapturedEnvironment.java (98%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/stableconfig/Rule.java (94%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/stableconfig/Selector.java (94%) rename {internal-api/src/main/java/datadog/trace/bootstrap/config/provider => utils/config-utils/src/main/java/datadog/config}/stableconfig/StableConfig.java (96%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/telemetry/ConfigInversionMetricCollector.java (98%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/telemetry/MetricCollector.java (97%) rename {internal-api/src/main/java/datadog/trace/api => utils/config-utils/src/main/java/datadog/config}/telemetry/OtelEnvMetricCollector.java (98%) rename {internal-api/src/main/java/datadog/trace => utils/config-utils/src/main/java/datadog/config}/util/Strings.java (99%) rename {components/yaml => utils/config-utils}/src/main/java/datadog/yaml/YamlParser.java (100%) rename {internal-api/src/test/java/datadog/trace/api => utils/config-utils/src/test/java}/ConfigHelperTest.java (98%) rename {internal-api/src/test/java/datadog/trace/api => utils/config-utils/src/test/java}/TestSupportedConfigurationSource.java (95%) diff --git a/communication/src/main/java/datadog/communication/ddagent/DDAgentFeaturesDiscovery.java b/communication/src/main/java/datadog/communication/ddagent/DDAgentFeaturesDiscovery.java index b527b08e13f..861fc7e1d81 100644 --- a/communication/src/main/java/datadog/communication/ddagent/DDAgentFeaturesDiscovery.java +++ b/communication/src/main/java/datadog/communication/ddagent/DDAgentFeaturesDiscovery.java @@ -15,8 +15,8 @@ import datadog.communication.monitor.DDAgentStatsDClientManager; import datadog.communication.monitor.Monitoring; import datadog.communication.monitor.Recording; +import datadog.config.util.Strings; import datadog.trace.api.telemetry.LogCollector; -import datadog.trace.util.Strings; import java.nio.ByteBuffer; import java.security.NoSuchAlgorithmException; import java.util.HashSet; diff --git a/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventFrameWriter.java b/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventFrameWriter.java index 0977448bfd7..3aff99aa681 100644 --- a/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventFrameWriter.java +++ b/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventFrameWriter.java @@ -3,7 +3,7 @@ import datadog.communication.serialization.EncodingCache; import datadog.communication.serialization.ValueWriter; import datadog.communication.serialization.Writable; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import datadog.trace.util.stacktrace.StackTraceFrame; public class StackTraceEventFrameWriter implements ValueWriter { diff --git a/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventWriter.java b/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventWriter.java index f2b56b3bba6..00381876e51 100644 --- a/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventWriter.java +++ b/communication/src/main/java/datadog/communication/serialization/custom/stacktrace/StackTraceEventWriter.java @@ -3,7 +3,7 @@ import datadog.communication.serialization.EncodingCache; import datadog.communication.serialization.ValueWriter; import datadog.communication.serialization.Writable; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import datadog.trace.util.stacktrace.StackTraceEvent; public class StackTraceEventWriter implements ValueWriter { diff --git a/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy b/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy index 1ee382f5775..6ebd3521338 100644 --- a/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy +++ b/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy @@ -3,7 +3,7 @@ package datadog.communication.ddagent import datadog.common.container.ContainerInfo import datadog.communication.monitor.Monitoring import datadog.trace.test.util.DDSpecification -import datadog.trace.util.Strings +import Strings import okhttp3.Call import okhttp3.Headers import okhttp3.HttpUrl diff --git a/components/yaml/build.gradle.kts b/components/yaml/build.gradle.kts deleted file mode 100644 index f2297262236..00000000000 --- a/components/yaml/build.gradle.kts +++ /dev/null @@ -1,9 +0,0 @@ -plugins { - `java-library` -} - -apply(from = "$rootDir/gradle/java.gradle") - -dependencies { - implementation("org.snakeyaml", "snakeyaml-engine", "2.9") -} diff --git a/components/yaml/gradle.lockfile b/components/yaml/gradle.lockfile deleted file mode 100644 index b9595d129ca..00000000000 --- a/components/yaml/gradle.lockfile +++ /dev/null @@ -1,158 +0,0 @@ -# This is a Gradle generated file for dependency locking. -# Manual edits can break the build and are not advised. -# This file is expected to be part of source control. -ch.qos.logback:logback-classic:1.2.13=testCompileClasspath,testRuntimeClasspath -ch.qos.logback:logback-classic:1.2.3=jmhRuntimeClasspath -ch.qos.logback:logback-core:1.2.13=testCompileClasspath,testRuntimeClasspath -ch.qos.logback:logback-core:1.2.3=jmhRuntimeClasspath -com.beust:jcommander:1.78=jmhRuntimeClasspath,testRuntimeClasspath -com.github.javaparser:javaparser-core:3.25.1=jmhRuntimeClasspath -com.github.javaparser:javaparser-core:3.25.6=testCompileClasspath,testRuntimeClasspath -com.github.spotbugs:spotbugs-annotations:4.2.0=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -com.github.spotbugs:spotbugs-annotations:4.7.3=spotbugs -com.github.spotbugs:spotbugs:4.7.3=spotbugs -com.google.code.findbugs:jsr305:3.0.2=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,spotbugs,testCompileClasspath,testRuntimeClasspath -com.google.code.gson:gson:2.9.1=spotbugs -com.thoughtworks.qdox:qdox:1.12.1=jmhRuntimeClasspath,testRuntimeClasspath -commons-codec:commons-codec:1.15=spotbugs -de.thetaphi:forbiddenapis:3.8=compileClasspath,jmhCompileClasspath -info.picocli:picocli:4.6.3=jmhRuntimeClasspath,testRuntimeClasspath -jaxen:jaxen:1.2.0=spotbugs -jline:jline:2.14.6=jmhRuntimeClasspath,testRuntimeClasspath -junit:junit:4.13.2=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -net.jcip:jcip-annotations:1.0=compileClasspath,jmhCompileClasspath,jmhRuntimeClasspath,spotbugs,testCompileClasspath,testRuntimeClasspath -net.sf.jopt-simple:jopt-simple:5.0.4=jmh,jmhCompileClasspath,jmhRuntimeClasspath -net.sf.saxon:Saxon-HE:11.4=spotbugs -org.apache.ant:ant-antlr:1.10.12=jmhRuntimeClasspath -org.apache.ant:ant-antlr:1.10.15=testRuntimeClasspath -org.apache.ant:ant-antlr:1.9.15=codenarc -org.apache.ant:ant-junit:1.10.12=jmhRuntimeClasspath -org.apache.ant:ant-junit:1.10.15=testRuntimeClasspath -org.apache.ant:ant-junit:1.9.15=codenarc -org.apache.ant:ant-launcher:1.10.12=jmhRuntimeClasspath -org.apache.ant:ant-launcher:1.10.15=testRuntimeClasspath -org.apache.ant:ant:1.10.12=jmhRuntimeClasspath -org.apache.ant:ant:1.10.15=testCompileClasspath,testRuntimeClasspath -org.apache.bcel:bcel:6.5.0=spotbugs -org.apache.commons:commons-lang3:3.12.0=pitest,spotbugs -org.apache.commons:commons-math3:3.2=jmh,jmhCompileClasspath,jmhRuntimeClasspath -org.apache.commons:commons-text:1.10.0=pitest,spotbugs -org.apache.httpcomponents.client5:httpclient5:5.1.3=spotbugs -org.apache.httpcomponents.core5:httpcore5-h2:5.1.3=spotbugs -org.apache.httpcomponents.core5:httpcore5:5.1.3=spotbugs -org.apache.logging.log4j:log4j-api:2.19.0=spotbugs -org.apache.logging.log4j:log4j-core:2.19.0=spotbugs -org.apiguardian:apiguardian-api:1.1.2=testCompileClasspath -org.codehaus.groovy:groovy-all:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-all:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-ant:2.5.14=codenarc -org.codehaus.groovy:groovy-ant:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-ant:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-astbuilder:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-astbuilder:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-cli-picocli:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-cli-picocli:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-console:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-console:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-datetime:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-datetime:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-docgenerator:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-docgenerator:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-groovydoc:2.5.14=codenarc -org.codehaus.groovy:groovy-groovydoc:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-groovydoc:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-groovysh:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-groovysh:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-jmx:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-jmx:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-json:2.5.14=codenarc -org.codehaus.groovy:groovy-json:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-json:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-jsr223:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-jsr223:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-macro:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-macro:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-nio:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-nio:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-servlet:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-servlet:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-sql:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-sql:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-swing:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-swing:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-templates:2.5.14=codenarc -org.codehaus.groovy:groovy-templates:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-templates:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-test-junit5:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-test-junit5:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-test:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-test:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-testng:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-testng:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy-xml:2.5.14=codenarc -org.codehaus.groovy:groovy-xml:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy-xml:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codehaus.groovy:groovy:2.5.14=codenarc -org.codehaus.groovy:groovy:3.0.17=jmhRuntimeClasspath -org.codehaus.groovy:groovy:3.0.24=testCompileClasspath,testRuntimeClasspath -org.codenarc:CodeNarc:2.2.0=codenarc -org.dom4j:dom4j:2.1.3=spotbugs -org.gmetrics:GMetrics:1.1=codenarc -org.hamcrest:hamcrest-core:1.3=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.hamcrest:hamcrest:2.2=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.jacoco:org.jacoco.agent:0.8.13=jacocoAgent,jacocoAnt -org.jacoco:org.jacoco.ant:0.8.13=jacocoAnt -org.jacoco:org.jacoco.core:0.8.13=jacocoAnt -org.jacoco:org.jacoco.report:0.8.13=jacocoAnt -org.junit.jupiter:junit-jupiter-api:5.12.0=testCompileClasspath,testRuntimeClasspath -org.junit.jupiter:junit-jupiter-api:5.9.2=jmhRuntimeClasspath -org.junit.jupiter:junit-jupiter-engine:5.12.0=testRuntimeClasspath -org.junit.jupiter:junit-jupiter-engine:5.9.2=jmhRuntimeClasspath -org.junit.jupiter:junit-jupiter-params:5.12.0=testCompileClasspath,testRuntimeClasspath -org.junit.jupiter:junit-jupiter-params:5.9.2=jmhRuntimeClasspath -org.junit.jupiter:junit-jupiter:5.12.0=testCompileClasspath,testRuntimeClasspath -org.junit.jupiter:junit-jupiter:5.9.2=jmhRuntimeClasspath -org.junit.platform:junit-platform-commons:1.12.0=testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-commons:1.9.2=jmhRuntimeClasspath -org.junit.platform:junit-platform-engine:1.12.0=testCompileClasspath,testRuntimeClasspath -org.junit.platform:junit-platform-engine:1.9.2=jmhRuntimeClasspath -org.junit.platform:junit-platform-launcher:1.12.0=testRuntimeClasspath -org.junit.platform:junit-platform-launcher:1.9.2=jmhRuntimeClasspath -org.junit:junit-bom:5.12.0=testCompileClasspath,testRuntimeClasspath -org.junit:junit-bom:5.9.1=spotbugs -org.junit:junit-bom:5.9.2=jmhRuntimeClasspath -org.objenesis:objenesis:3.3=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.openjdk.jmh:jmh-core:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath -org.openjdk.jmh:jmh-generator-asm:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath -org.openjdk.jmh:jmh-generator-bytecode:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath -org.openjdk.jmh:jmh-generator-reflection:1.36=jmh,jmhCompileClasspath,jmhRuntimeClasspath -org.opentest4j:opentest4j:1.2.0=jmhRuntimeClasspath -org.opentest4j:opentest4j:1.3.0=testCompileClasspath,testRuntimeClasspath -org.ow2.asm:asm-analysis:9.4=spotbugs -org.ow2.asm:asm-commons:9.4=spotbugs -org.ow2.asm:asm-commons:9.8=jacocoAnt -org.ow2.asm:asm-tree:9.4=spotbugs -org.ow2.asm:asm-tree:9.8=jacocoAnt -org.ow2.asm:asm-util:9.4=spotbugs -org.ow2.asm:asm:9.0=jmh,jmhCompileClasspath,jmhRuntimeClasspath -org.ow2.asm:asm:9.4=spotbugs -org.ow2.asm:asm:9.8=jacocoAnt -org.pitest:pitest-command-line:1.9.11=pitest -org.pitest:pitest-entry:1.9.11=pitest -org.pitest:pitest:1.9.11=pitest -org.slf4j:jcl-over-slf4j:1.7.30=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:jul-to-slf4j:1.7.30=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:log4j-over-slf4j:1.7.30=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:slf4j-api:1.7.32=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.slf4j:slf4j-api:2.0.0=spotbugs,spotbugsSlf4j -org.slf4j:slf4j-simple:2.0.0=spotbugsSlf4j -org.snakeyaml:snakeyaml-engine:2.9=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath -org.spockframework:spock-core:2.3-groovy-3.0=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.spockframework:spock-junit4:2.3-groovy-3.0=jmhRuntimeClasspath,testCompileClasspath,testRuntimeClasspath -org.testng:testng:7.5=jmhRuntimeClasspath -org.testng:testng:7.5.1=testRuntimeClasspath -org.webjars:jquery:3.5.1=jmhRuntimeClasspath,testRuntimeClasspath -org.xmlresolver:xmlresolver:4.4.3=spotbugs -org.yaml:snakeyaml:2.4=jmhCompileClasspath,jmhRuntimeClasspath -xml-apis:xml-apis:1.4.01=spotbugs -empty=annotationProcessor,jmhAnnotationProcessor,spotbugsPlugins,testAnnotationProcessor diff --git a/dd-java-agent/agent-bootstrap/build.gradle b/dd-java-agent/agent-bootstrap/build.gradle index 9608df7010a..c79d27046ea 100644 --- a/dd-java-agent/agent-bootstrap/build.gradle +++ b/dd-java-agent/agent-bootstrap/build.gradle @@ -24,6 +24,7 @@ dependencies { api project(':dd-java-agent:agent-debugger:debugger-bootstrap') api project(':components:environment') api project(':components:json') + api project(':utils:test-utils') api libs.slf4j // ^ Generally a bad idea for libraries, but we're shadowing. diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java index d8f09c75089..f556bffc537 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java @@ -1,5 +1,9 @@ package datadog.trace.bootstrap; +import static datadog.config.StableConfigSource.FLEET; +import static datadog.config.StableConfigSource.LOCAL; +import static datadog.config.util.Strings.propertyNameToSystemPropertyName; +import static datadog.config.util.Strings.toEnvVar; import static datadog.environment.JavaVirtualMachine.isJavaVersionAtLeast; import static datadog.environment.JavaVirtualMachine.isOracleJDK8; import static datadog.trace.api.ConfigDefaults.DEFAULT_STARTUP_LOGS_ENABLED; @@ -8,15 +12,12 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; import static datadog.trace.bootstrap.Library.WILDFLY; import static datadog.trace.bootstrap.Library.detectLibraries; -import static datadog.trace.bootstrap.config.provider.StableConfigSource.FLEET; -import static datadog.trace.bootstrap.config.provider.StableConfigSource.LOCAL; import static datadog.trace.util.AgentThreadFactory.AgentThread.JMX_STARTUP; import static datadog.trace.util.AgentThreadFactory.AgentThread.PROFILER_STARTUP; import static datadog.trace.util.AgentThreadFactory.AgentThread.TRACE_STARTUP; import static datadog.trace.util.AgentThreadFactory.newAgentThread; -import static datadog.trace.util.Strings.propertyNameToSystemPropertyName; -import static datadog.trace.util.Strings.toEnvVar; +import datadog.config.StableConfigSource; import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; @@ -47,7 +48,6 @@ import datadog.trace.api.profiling.ProfilingEnablement; import datadog.trace.api.scopemanager.ScopeListener; import datadog.trace.bootstrap.benchmark.StaticEventLogger; -import datadog.trace.bootstrap.config.provider.StableConfigSource; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.bootstrap.instrumentation.api.AgentTracer.TracerAPI; import datadog.trace.bootstrap.instrumentation.api.ProfilingContextIntegration; diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/java/concurrent/QueueTimerHelper.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/java/concurrent/QueueTimerHelper.java index 2f77a3fb4bf..729cfc89f05 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/java/concurrent/QueueTimerHelper.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/java/concurrent/QueueTimerHelper.java @@ -1,5 +1,6 @@ package datadog.trace.bootstrap.instrumentation.java.concurrent; +import datadog.config.ConfigProvider; import datadog.trace.api.Platform; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.api.profiling.QueueTiming; @@ -7,7 +8,6 @@ import datadog.trace.api.profiling.Timing; import datadog.trace.api.sampling.PerRecordingRateLimiter; import datadog.trace.bootstrap.ContextStore; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.bootstrap.instrumentation.jfr.InstrumentationBasedProfiling; import java.time.Duration; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityRepoServices.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityRepoServices.java index 57afe1d8e0b..c9a1b516c23 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityRepoServices.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilityRepoServices.java @@ -1,6 +1,7 @@ package datadog.trace.civisibility; import datadog.communication.BackendApi; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.civisibility.telemetry.CiVisibilityMetricCollector; import datadog.trace.api.civisibility.telemetry.tag.Provider; @@ -35,7 +36,6 @@ import datadog.trace.civisibility.source.SourcePathResolver; import datadog.trace.civisibility.source.index.RepoIndexProvider; import datadog.trace.civisibility.source.index.RepoIndexSourcePathResolver; -import datadog.trace.util.Strings; import java.nio.file.Path; import java.nio.file.Paths; import java.util.Map; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ProcessHierarchy.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ProcessHierarchy.java index 3c899cb25f3..002d7c936da 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ProcessHierarchy.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ProcessHierarchy.java @@ -1,9 +1,9 @@ package datadog.trace.civisibility; +import static datadog.config.util.Strings.propertyNameToSystemPropertyName; import static datadog.trace.api.config.CiVisibilityConfig.CIVISIBILITY_SIGNAL_SERVER_HOST; import static datadog.trace.api.config.CiVisibilityConfig.CIVISIBILITY_SIGNAL_SERVER_PORT; import static datadog.trace.bootstrap.instrumentation.api.AgentPropagation.extractContextAndGetSpanContext; -import static datadog.trace.util.Strings.propertyNameToSystemPropertyName; import datadog.environment.SystemProperties; import datadog.trace.bootstrap.instrumentation.api.AgentPropagation; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/AppVeyorInfo.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/AppVeyorInfo.java index f8bc31dd090..6561f80e6e9 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/AppVeyorInfo.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/AppVeyorInfo.java @@ -4,12 +4,12 @@ import static datadog.trace.api.git.GitUtils.normalizeTag; import static datadog.trace.civisibility.utils.FileUtils.expandTilde; +import datadog.config.util.Strings; import datadog.trace.api.civisibility.telemetry.tag.Provider; import datadog.trace.api.git.CommitInfo; import datadog.trace.api.git.GitInfo; import datadog.trace.api.git.PersonInfo; import datadog.trace.civisibility.ci.env.CiEnvironment; -import datadog.trace.util.Strings; import javax.annotation.Nonnull; class AppVeyorInfo implements CIProviderInfo { diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/BitBucketInfo.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/BitBucketInfo.java index 1c95c0d4bff..690c4afa80e 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/BitBucketInfo.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/BitBucketInfo.java @@ -5,11 +5,11 @@ import static datadog.trace.api.git.GitUtils.normalizeTag; import static datadog.trace.civisibility.utils.FileUtils.expandTilde; +import datadog.config.util.Strings; import datadog.trace.api.civisibility.telemetry.tag.Provider; import datadog.trace.api.git.CommitInfo; import datadog.trace.api.git.GitInfo; import datadog.trace.civisibility.ci.env.CiEnvironment; -import datadog.trace.util.Strings; import javax.annotation.Nonnull; class BitBucketInfo implements CIProviderInfo { diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/GithubActionsInfo.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/GithubActionsInfo.java index 4439714d27a..6f6425b1d8b 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/GithubActionsInfo.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/GithubActionsInfo.java @@ -9,11 +9,11 @@ import com.squareup.moshi.JsonAdapter; import com.squareup.moshi.Moshi; import com.squareup.moshi.Types; +import datadog.config.util.Strings; import datadog.trace.api.civisibility.telemetry.tag.Provider; import datadog.trace.api.git.CommitInfo; import datadog.trace.api.git.GitInfo; import datadog.trace.civisibility.ci.env.CiEnvironment; -import datadog.trace.util.Strings; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/PullRequestInfo.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/PullRequestInfo.java index a6319a014c5..85e96e2c869 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/PullRequestInfo.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ci/PullRequestInfo.java @@ -1,7 +1,7 @@ package datadog.trace.civisibility.ci; +import datadog.config.util.Strings; import datadog.trace.api.git.CommitInfo; -import datadog.trace.util.Strings; import java.util.Objects; import javax.annotation.Nonnull; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java index c0acb7f83a6..e6279747141 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java @@ -1,5 +1,6 @@ package datadog.trace.civisibility.config; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.civisibility.CIConstants; import datadog.trace.api.civisibility.CiVisibilityWellKnownTags; @@ -12,7 +13,6 @@ import datadog.trace.civisibility.git.tree.GitClient; import datadog.trace.civisibility.git.tree.GitDataUploader; import datadog.trace.civisibility.git.tree.GitRepoUnshallow; -import datadog.trace.util.Strings; import java.nio.file.Paths; import java.util.Collection; import java.util.Collections; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TracerEnvironment.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TracerEnvironment.java index c06210123a9..4344acc700f 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TracerEnvironment.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TracerEnvironment.java @@ -1,8 +1,8 @@ package datadog.trace.civisibility.config; import com.squareup.moshi.Json; +import datadog.config.util.Strings; import datadog.trace.api.civisibility.config.Configurations; -import datadog.trace.util.Strings; import java.util.HashMap; import java.util.Map; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/coverage/percentage/JacocoCoverageCalculator.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/coverage/percentage/JacocoCoverageCalculator.java index c275d18a7eb..d4beb6163a2 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/coverage/percentage/JacocoCoverageCalculator.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/coverage/percentage/JacocoCoverageCalculator.java @@ -1,5 +1,6 @@ package datadog.trace.civisibility.coverage.percentage; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.civisibility.domain.BuildModuleLayout; import datadog.trace.api.civisibility.domain.SourceSet; @@ -12,7 +13,6 @@ import datadog.trace.civisibility.source.SourceResolutionException; import datadog.trace.civisibility.source.index.RepoIndex; import datadog.trace.civisibility.source.index.RepoIndexProvider; -import datadog.trace.util.Strings; import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.File; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/decorator/TestDecoratorImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/decorator/TestDecoratorImpl.java index de2ab526728..fabd629f843 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/decorator/TestDecoratorImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/decorator/TestDecoratorImpl.java @@ -1,11 +1,11 @@ package datadog.trace.civisibility.decorator; +import datadog.config.util.Strings; import datadog.trace.api.DDTags; import datadog.trace.api.sampling.PrioritySampling; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import datadog.trace.bootstrap.instrumentation.api.Tags; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; -import datadog.trace.util.Strings; import java.util.Map; public class TestDecoratorImpl implements TestDecorator { diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java index 70b36f11b59..83cf22a94c9 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java @@ -3,6 +3,7 @@ import static datadog.context.propagation.Propagators.defaultPropagator; import datadog.communication.ddagent.TracerVersion; +import datadog.config.util.Strings; import datadog.context.propagation.CarrierSetter; import datadog.environment.SystemProperties; import datadog.trace.api.Config; @@ -31,7 +32,6 @@ import datadog.trace.civisibility.ipc.SignalType; import datadog.trace.civisibility.source.LinesResolver; import datadog.trace.civisibility.source.SourcePathResolver; -import datadog.trace.util.Strings; import java.net.InetSocketAddress; import java.nio.file.Path; import java.util.Collection; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/CILocalGitInfoBuilder.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/CILocalGitInfoBuilder.java index 8c2a73ff31d..af40b359535 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/CILocalGitInfoBuilder.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/CILocalGitInfoBuilder.java @@ -1,11 +1,11 @@ package datadog.trace.civisibility.git; +import datadog.config.util.Strings; import datadog.trace.api.civisibility.telemetry.tag.GitProviderDiscrepant; import datadog.trace.api.civisibility.telemetry.tag.GitProviderExpected; import datadog.trace.api.git.GitInfo; import datadog.trace.api.git.GitInfoBuilder; import datadog.trace.civisibility.git.tree.GitClient; -import datadog.trace.util.Strings; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/tree/ShellGitClient.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/tree/ShellGitClient.java index f353b05c0b9..3b39e00df95 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/tree/ShellGitClient.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/git/tree/ShellGitClient.java @@ -1,6 +1,7 @@ package datadog.trace.civisibility.git.tree; import datadog.communication.util.IOUtils; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.civisibility.telemetry.CiVisibilityCountMetric; import datadog.trace.api.civisibility.telemetry.CiVisibilityDistributionMetric; @@ -11,7 +12,6 @@ import datadog.trace.api.git.PersonInfo; import datadog.trace.civisibility.diff.LineDiff; import datadog.trace.civisibility.utils.ShellCommandExecutor; -import datadog.trace.util.Strings; import java.io.File; import java.io.IOException; import java.nio.charset.Charset; diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ci/CITagsProviderTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ci/CITagsProviderTest.groovy index 799cbafb476..ce5891d250e 100644 --- a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ci/CITagsProviderTest.groovy +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ci/CITagsProviderTest.groovy @@ -8,7 +8,7 @@ import datadog.trace.civisibility.ci.env.CiEnvironmentImpl import datadog.trace.civisibility.git.CILocalGitInfoBuilder import datadog.trace.civisibility.git.CIProviderGitInfoBuilder import datadog.trace.civisibility.git.tree.GitClient -import datadog.trace.util.Strings +import Strings import org.junit.Rule import org.junit.contrib.java.lang.system.EnvironmentVariables import org.junit.contrib.java.lang.system.RestoreSystemProperties diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/telemetry/CiVisibilityMetricCollectorTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/telemetry/CiVisibilityMetricCollectorTest.groovy index 9fa8c47209b..b4fad5fc459 100644 --- a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/telemetry/CiVisibilityMetricCollectorTest.groovy +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/telemetry/CiVisibilityMetricCollectorTest.groovy @@ -7,7 +7,7 @@ import datadog.trace.api.civisibility.telemetry.TagValue import datadog.trace.api.civisibility.telemetry.tag.Endpoint import datadog.trace.api.civisibility.telemetry.tag.EventType import datadog.trace.api.civisibility.telemetry.tag.Library -import datadog.trace.api.telemetry.MetricCollector +import MetricCollector import spock.lang.Specification class CiVisibilityMetricCollectorTest extends Specification { diff --git a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploader.java b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploader.java index fc0f1d64e46..34d2d76e883 100644 --- a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploader.java +++ b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploader.java @@ -11,11 +11,11 @@ import datadog.common.container.ContainerInfo; import datadog.common.version.VersionInfo; import datadog.communication.http.OkHttpUtils; +import datadog.config.ConfigProvider; import datadog.crashtracking.dto.CrashLog; import datadog.environment.SystemProperties; import datadog.trace.api.Config; import datadog.trace.api.DDTags; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.util.PidHelper; import datadog.trace.util.RandomUtils; import de.thetaphi.forbiddenapis.SuppressForbidden; diff --git a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java index 681c211c42f..316bf95e2ef 100644 --- a/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java +++ b/dd-java-agent/agent-crashtracking/src/main/java/datadog/crashtracking/CrashUploaderScriptInitializer.java @@ -11,9 +11,9 @@ import static java.nio.file.attribute.PosixFilePermissions.fromString; import static java.util.Locale.ROOT; +import datadog.config.util.Strings; import datadog.environment.SystemProperties; import datadog.trace.util.PidHelper; -import datadog.trace.util.Strings; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; diff --git a/dd-java-agent/agent-crashtracking/src/test/java/datadog/crashtracking/CrashUploaderTest.java b/dd-java-agent/agent-crashtracking/src/test/java/datadog/crashtracking/CrashUploaderTest.java index ddd0ddfcf49..d859d2e5308 100644 --- a/dd-java-agent/agent-crashtracking/src/test/java/datadog/crashtracking/CrashUploaderTest.java +++ b/dd-java-agent/agent-crashtracking/src/test/java/datadog/crashtracking/CrashUploaderTest.java @@ -7,10 +7,10 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import datadog.common.version.VersionInfo; +import datadog.config.ConfigProvider; import datadog.crashtracking.dto.CrashLog; import datadog.environment.SystemProperties; import datadog.trace.api.Config; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.IOException; diff --git a/dd-java-agent/agent-debugger/debugger-bootstrap/src/main/java/datadog/trace/bootstrap/debugger/CorrelationAccess.java b/dd-java-agent/agent-debugger/debugger-bootstrap/src/main/java/datadog/trace/bootstrap/debugger/CorrelationAccess.java index 085f814ed31..6e80f0da147 100644 --- a/dd-java-agent/agent-debugger/debugger-bootstrap/src/main/java/datadog/trace/bootstrap/debugger/CorrelationAccess.java +++ b/dd-java-agent/agent-debugger/debugger-bootstrap/src/main/java/datadog/trace/bootstrap/debugger/CorrelationAccess.java @@ -1,7 +1,7 @@ package datadog.trace.bootstrap.debugger; +import datadog.config.ConfigProvider; import datadog.trace.api.config.TraceInstrumentationConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; import java.lang.invoke.MethodType; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/DebuggerTransformer.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/DebuggerTransformer.java index 4ae05865d22..f43bf56a06d 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/DebuggerTransformer.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/DebuggerTransformer.java @@ -25,6 +25,7 @@ import com.datadog.debugger.util.ClassFileLines; import com.datadog.debugger.util.DebuggerMetrics; import com.datadog.debugger.util.ExceptionHelper; +import datadog.config.util.Strings; import datadog.environment.SystemProperties; import datadog.trace.agent.tooling.AgentStrategies; import datadog.trace.api.Config; @@ -32,7 +33,6 @@ import datadog.trace.bootstrap.debugger.ProbeId; import datadog.trace.bootstrap.debugger.ProbeImplementation; import datadog.trace.util.RandomUtils; -import datadog.trace.util.Strings; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/SourceFileTrackingTransformer.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/SourceFileTrackingTransformer.java index a1b200badac..5716fa899b7 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/SourceFileTrackingTransformer.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/agent/SourceFileTrackingTransformer.java @@ -5,9 +5,9 @@ import com.datadog.debugger.util.ClassFileHelper; import com.datadog.debugger.util.ClassNameFiltering; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.util.AgentTaskScheduler; -import datadog.trace.util.Strings; import java.lang.instrument.ClassFileTransformer; import java.lang.instrument.IllegalClassFormatException; import java.security.ProtectionDomain; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/ASMHelper.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/ASMHelper.java index 94ac5264259..fdacd520589 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/ASMHelper.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/ASMHelper.java @@ -6,7 +6,7 @@ import static org.objectweb.asm.Type.getObjectType; import com.datadog.debugger.agent.Generated; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.File; import java.io.FileOutputStream; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MethodInfo.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MethodInfo.java index d58ad0251e0..b246bd8787a 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MethodInfo.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MethodInfo.java @@ -1,7 +1,7 @@ package com.datadog.debugger.instrumentation; import com.datadog.debugger.util.ClassFileLines; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import org.objectweb.asm.tree.ClassNode; import org.objectweb.asm.tree.MethodNode; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MetricInstrumentor.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MetricInstrumentor.java index 11c46673318..d5a0c766e72 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MetricInstrumentor.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/instrumentation/MetricInstrumentor.java @@ -11,7 +11,7 @@ import static com.datadog.debugger.instrumentation.ASMHelper.isStaticField; import static com.datadog.debugger.instrumentation.ASMHelper.ldc; import static com.datadog.debugger.instrumentation.Types.*; -import static datadog.trace.util.Strings.getClassName; +import static datadog.config.util.Strings.getClassName; import static org.objectweb.asm.Type.DOUBLE_TYPE; import static org.objectweb.asm.Type.LONG_TYPE; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolAggregator.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolAggregator.java index 11a998271c3..1b8c7b615d5 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolAggregator.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolAggregator.java @@ -3,10 +3,10 @@ import static com.datadog.debugger.symbol.JarScanner.trimPrefixes; import com.datadog.debugger.sink.SymbolSink; +import datadog.config.util.Strings; import datadog.trace.bootstrap.debugger.DebuggerContext; import datadog.trace.util.AgentTaskScheduler; import datadog.trace.util.ClassNameTrie; -import datadog.trace.util.Strings; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractionTransformer.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractionTransformer.java index 0d7b4503c8f..e9906224eaa 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractionTransformer.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractionTransformer.java @@ -1,7 +1,7 @@ package com.datadog.debugger.symbol; +import datadog.config.util.Strings; import datadog.trace.bootstrap.debugger.DebuggerContext.ClassNameFilter; -import datadog.trace.util.Strings; import java.lang.instrument.ClassFileTransformer; import java.security.ProtectionDomain; import org.slf4j.Logger; diff --git a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractor.java b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractor.java index 88abfadde0f..f86140e3cf4 100644 --- a/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractor.java +++ b/dd-java-agent/agent-debugger/src/main/java/com/datadog/debugger/symbol/SymbolExtractor.java @@ -5,7 +5,7 @@ import static com.datadog.debugger.instrumentation.ASMHelper.sortLocalVariables; import com.datadog.debugger.instrumentation.ASMHelper; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; diff --git a/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/symbol/SymDBEnablementTest.java b/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/symbol/SymDBEnablementTest.java index 22a46804339..063ff8e7641 100644 --- a/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/symbol/SymDBEnablementTest.java +++ b/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/symbol/SymDBEnablementTest.java @@ -17,10 +17,10 @@ import com.datadog.debugger.sink.SymbolSink; import com.datadog.debugger.util.ClassNameFiltering; +import datadog.config.util.Strings; import datadog.remoteconfig.state.ParsedConfigKey; import datadog.trace.api.Config; import datadog.trace.bootstrap.debugger.DebuggerContext.ClassNameFilter; -import datadog.trace.util.Strings; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; diff --git a/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/util/LogProbeTestHelper.java b/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/util/LogProbeTestHelper.java index a8aec6b3c43..f7f5bfb17da 100644 --- a/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/util/LogProbeTestHelper.java +++ b/dd-java-agent/agent-debugger/src/test/java/com/datadog/debugger/util/LogProbeTestHelper.java @@ -2,7 +2,7 @@ import com.datadog.debugger.el.ValueScript; import com.datadog.debugger.probe.LogProbe; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.util.ArrayList; import java.util.Collections; import java.util.List; diff --git a/dd-java-agent/agent-debugger/src/test/java/utils/TestClassFileHelper.java b/dd-java-agent/agent-debugger/src/test/java/utils/TestClassFileHelper.java index 832ab0aef85..7702cd8a398 100644 --- a/dd-java-agent/agent-debugger/src/test/java/utils/TestClassFileHelper.java +++ b/dd-java-agent/agent-debugger/src/test/java/utils/TestClassFileHelper.java @@ -1,6 +1,6 @@ package utils; -import static datadog.trace.util.Strings.getResourceName; +import static datadog.config.util.Strings.getResourceName; import java.io.ByteArrayOutputStream; import java.io.IOException; diff --git a/dd-java-agent/agent-otel/otel-bootstrap/src/main/java/datadog/trace/bootstrap/otel/instrumentation/internal/InstrumentationConfig.java b/dd-java-agent/agent-otel/otel-bootstrap/src/main/java/datadog/trace/bootstrap/otel/instrumentation/internal/InstrumentationConfig.java index 78df63fde73..8de2913eb00 100644 --- a/dd-java-agent/agent-otel/otel-bootstrap/src/main/java/datadog/trace/bootstrap/otel/instrumentation/internal/InstrumentationConfig.java +++ b/dd-java-agent/agent-otel/otel-bootstrap/src/main/java/datadog/trace/bootstrap/otel/instrumentation/internal/InstrumentationConfig.java @@ -1,6 +1,6 @@ package datadog.trace.bootstrap.otel.instrumentation.internal; -import datadog.trace.bootstrap.config.provider.ConfigProvider; +import datadog.config.ConfigProvider; import java.time.Duration; import java.util.Collections; import java.util.List; diff --git a/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerController.java b/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerController.java index 413caa5ba17..76871ca6763 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerController.java +++ b/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerController.java @@ -20,7 +20,7 @@ import com.datadog.profiling.controller.OngoingRecording; import com.datadog.profiling.controller.UnsupportedEnvironmentException; import com.datadog.profiling.ddprof.DatadogProfiler; -import datadog.trace.bootstrap.config.provider.ConfigProvider; +import datadog.config.ConfigProvider; import java.util.EnumSet; import javax.annotation.Nonnull; diff --git a/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerSettings.java b/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerSettings.java index b2746b82e5e..3735cad5fe8 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerSettings.java +++ b/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/main/java/com/datadog/profiling/controller/ddprof/DatadogProfilerSettings.java @@ -3,7 +3,7 @@ import com.datadog.profiling.controller.ProfilerSettingsSupport; import com.datadog.profiling.ddprof.DatadogProfiler; import datadog.common.version.VersionInfo; -import datadog.trace.bootstrap.config.provider.ConfigProvider; +import datadog.config.ConfigProvider; public class DatadogProfilerSettings extends ProfilerSettingsSupport { diff --git a/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/test/java/com/datadog/profiling/controller/ddprof/DatadogProfilerControllerTest.java b/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/test/java/com/datadog/profiling/controller/ddprof/DatadogProfilerControllerTest.java index 20bb760a357..0d77044125d 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/test/java/com/datadog/profiling/controller/ddprof/DatadogProfilerControllerTest.java +++ b/dd-java-agent/agent-profiling/profiling-controller-ddprof/src/test/java/com/datadog/profiling/controller/ddprof/DatadogProfilerControllerTest.java @@ -4,9 +4,9 @@ import static org.junit.jupiter.api.Assertions.assertEquals; import com.datadog.profiling.controller.ControllerContext; +import datadog.config.ConfigProvider; import datadog.environment.OperatingSystem; import datadog.trace.api.profiling.RecordingData; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.util.Properties; import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Test; diff --git a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JFREventContextIntegration.java b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JFREventContextIntegration.java index 999266980f8..720dbe32dce 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JFREventContextIntegration.java +++ b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JFREventContextIntegration.java @@ -4,12 +4,12 @@ import com.datadog.profiling.controller.openjdk.events.QueueTimeEvent; import com.datadog.profiling.controller.openjdk.events.TimelineEvent; import com.datadog.profiling.utils.ExcludedVersions; +import datadog.config.ConfigProvider; import datadog.trace.api.EndpointTracker; import datadog.trace.api.Platform; import datadog.trace.api.Stateful; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.api.profiling.Timing; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import datadog.trace.bootstrap.instrumentation.api.ProfilerContext; import datadog.trace.bootstrap.instrumentation.api.ProfilingContextIntegration; diff --git a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JfrProfilerSettings.java b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JfrProfilerSettings.java index f74d626909a..226bc7c5a07 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JfrProfilerSettings.java +++ b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/JfrProfilerSettings.java @@ -4,9 +4,9 @@ import com.datadog.profiling.controller.ProfilerSettingsSupport; import com.datadog.profiling.controller.openjdk.events.ProfilerSettingEvent; import datadog.common.version.VersionInfo; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.api.Platform; -import datadog.trace.bootstrap.config.provider.ConfigProvider; /** Capture the profiler config first and allow emitting the setting events per each recording. */ final class JfrProfilerSettings extends ProfilerSettingsSupport { diff --git a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkController.java b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkController.java index 69c31c6847a..097594f257e 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkController.java +++ b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkController.java @@ -33,10 +33,10 @@ import com.datadog.profiling.controller.jfr.JFRAccess; import com.datadog.profiling.controller.jfr.JfpUtils; import com.datadog.profiling.controller.openjdk.events.AvailableProcessorCoresEvent; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.api.Config; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.jfr.backpressure.BackpressureProfiling; import datadog.trace.bootstrap.instrumentation.jfr.exceptions.ExceptionProfiling; import datadog.trace.util.TempLocationManager; diff --git a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkOngoingRecording.java b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkOngoingRecording.java index eab6ebc1e76..f6bbb4c8cbc 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkOngoingRecording.java +++ b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/main/java/com/datadog/profiling/controller/openjdk/OpenJdkOngoingRecording.java @@ -3,9 +3,9 @@ import com.datadog.profiling.controller.ControllerContext; import com.datadog.profiling.controller.OngoingRecording; import com.datadog.profiling.utils.ProfilingMode; +import datadog.config.ConfigProvider; import datadog.trace.api.profiling.ProfilingSnapshot; import datadog.trace.api.profiling.RecordingData; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.time.Duration; import java.time.Instant; import java.util.Map; diff --git a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/InstantiationTest.java b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/InstantiationTest.java index 1a604d71291..71cb2bb308b 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/InstantiationTest.java +++ b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/InstantiationTest.java @@ -7,7 +7,7 @@ import com.datadog.profiling.agent.CompositeController; import com.datadog.profiling.controller.openjdk.OpenJdkController; -import datadog.trace.bootstrap.config.provider.ConfigProvider; +import datadog.config.ConfigProvider; import java.util.Properties; import org.junit.jupiter.api.Test; diff --git a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/openjdk/OpenJdkControllerTest.java b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/openjdk/OpenJdkControllerTest.java index 3d90c346417..dc0a24942a3 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/openjdk/OpenJdkControllerTest.java +++ b/dd-java-agent/agent-profiling/profiling-controller-openjdk/src/test/java/com/datadog/profiling/controller/openjdk/OpenJdkControllerTest.java @@ -16,9 +16,9 @@ import com.datadog.profiling.controller.ControllerContext; import com.datadog.profiling.controller.jfr.JfpUtilsTest; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.api.profiling.RecordingData; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.util.Properties; import jdk.jfr.Recording; import org.junit.jupiter.api.BeforeAll; diff --git a/dd-java-agent/agent-profiling/profiling-controller-oracle/src/main/java/com/datadog/profiling/controller/oracle/OracleJdkController.java b/dd-java-agent/agent-profiling/profiling-controller-oracle/src/main/java/com/datadog/profiling/controller/oracle/OracleJdkController.java index c3478506bc4..ecb221035aa 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-oracle/src/main/java/com/datadog/profiling/controller/oracle/OracleJdkController.java +++ b/dd-java-agent/agent-profiling/profiling-controller-oracle/src/main/java/com/datadog/profiling/controller/oracle/OracleJdkController.java @@ -5,8 +5,8 @@ import com.datadog.profiling.controller.ControllerContext; import com.datadog.profiling.controller.UnsupportedEnvironmentException; import com.datadog.profiling.controller.jfr.JfpUtils; +import datadog.config.ConfigProvider; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; import java.time.Duration; import java.util.Collections; diff --git a/dd-java-agent/agent-profiling/profiling-controller-oracle/src/test/java/com/datadog/profiling/controller/oracle/OracleJdkControllerTest.java b/dd-java-agent/agent-profiling/profiling-controller-oracle/src/test/java/com/datadog/profiling/controller/oracle/OracleJdkControllerTest.java index 1cb2ccd42d7..5d02e33e795 100644 --- a/dd-java-agent/agent-profiling/profiling-controller-oracle/src/test/java/com/datadog/profiling/controller/oracle/OracleJdkControllerTest.java +++ b/dd-java-agent/agent-profiling/profiling-controller-oracle/src/test/java/com/datadog/profiling/controller/oracle/OracleJdkControllerTest.java @@ -6,7 +6,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import com.datadog.profiling.controller.ControllerContext; -import datadog.trace.bootstrap.config.provider.ConfigProvider; +import datadog.config.ConfigProvider; import java.io.InputStream; import java.time.Instant; import java.util.Properties; diff --git a/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilerSettingsSupport.java b/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilerSettingsSupport.java index ed2e8a688be..a649ea891be 100644 --- a/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilerSettingsSupport.java +++ b/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilerSettingsSupport.java @@ -2,12 +2,12 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; import datadog.trace.api.Config; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.api.profiling.ProfilingEnablement; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.context.TraceScope; import java.io.BufferedReader; diff --git a/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilingSystem.java b/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilingSystem.java index d1d7bfd8c99..0d2d12252b2 100644 --- a/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilingSystem.java +++ b/dd-java-agent/agent-profiling/profiling-controller/src/main/java/com/datadog/profiling/controller/ProfilingSystem.java @@ -21,12 +21,12 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; import static datadog.trace.util.AgentThreadFactory.AgentThread.PROFILER_RECORDING_SCHEDULER; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.api.profiling.ProfilingSnapshot; import datadog.trace.api.profiling.RecordingData; import datadog.trace.api.profiling.RecordingDataListener; import datadog.trace.api.profiling.RecordingType; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.util.AgentTaskScheduler; import java.time.Duration; import java.time.Instant; diff --git a/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilerSettingsSupportTest.java b/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilerSettingsSupportTest.java index 9cf5dcc44a4..242c50ebaae 100644 --- a/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilerSettingsSupportTest.java +++ b/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilerSettingsSupportTest.java @@ -4,9 +4,9 @@ import com.datadog.profiling.controller.ProfilerSettingsSupport.ProfilerActivationSetting; import com.datadog.profiling.controller.ProfilerSettingsSupport.ProfilerActivationSetting.Ssi; +import datadog.config.ConfigProvider; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.api.profiling.ProfilingEnablement; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.util.Properties; import java.util.stream.Stream; import org.junit.jupiter.params.ParameterizedTest; diff --git a/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilingSystemTest.java b/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilingSystemTest.java index 9895a9863d6..0aff293342a 100644 --- a/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilingSystemTest.java +++ b/dd-java-agent/agent-profiling/profiling-controller/src/test/java/com/datadog/profiling/controller/ProfilingSystemTest.java @@ -36,9 +36,9 @@ import ch.qos.logback.classic.Level; import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.core.Appender; +import datadog.config.ConfigProvider; import datadog.trace.api.profiling.RecordingData; import datadog.trace.api.profiling.RecordingDataListener; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.util.AgentTaskScheduler; import java.time.Duration; import java.time.Instant; diff --git a/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfiler.java b/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfiler.java index 0c889108d2d..5aedaadacfb 100644 --- a/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfiler.java +++ b/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfiler.java @@ -36,11 +36,11 @@ import com.datadog.profiling.utils.ProfilingMode; import com.datadoghq.profiler.ContextSetter; import com.datadoghq.profiler.JavaProfiler; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.libs.ddprof.DdprofLibraryLoader; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.api.profiling.RecordingData; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.TaskWrapper; import datadog.trace.util.TempLocationManager; import java.io.IOException; diff --git a/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfilerConfig.java b/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfilerConfig.java index 0a778c03475..f7e0b2c802c 100644 --- a/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfilerConfig.java +++ b/dd-java-agent/agent-profiling/profiling-ddprof/src/main/java/com/datadog/profiling/ddprof/DatadogProfilerConfig.java @@ -54,9 +54,9 @@ import static datadog.trace.api.config.ProfilingConfig.PROFILING_ULTRA_MINIMAL; import static datadog.trace.api.config.TraceInstrumentationConfig.TRACE_ENABLED; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.lang.management.ManagementFactory; import java.util.Collections; import java.util.Set; diff --git a/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerRecordingTest.java b/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerRecordingTest.java index 79d6985508e..5de06c270bf 100644 --- a/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerRecordingTest.java +++ b/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerRecordingTest.java @@ -6,10 +6,10 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assumptions.assumeTrue; +import datadog.config.ConfigProvider; import datadog.environment.OperatingSystem; import datadog.libs.ddprof.DdprofLibraryLoader; import datadog.trace.api.profiling.RecordingData; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.InputStream; import java.nio.file.Files; import java.time.Instant; diff --git a/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerTest.java b/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerTest.java index c14783629c2..140b8de4b48 100644 --- a/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerTest.java +++ b/dd-java-agent/agent-profiling/profiling-ddprof/src/test/java/com/datadog/profiling/ddprof/DatadogProfilerTest.java @@ -8,12 +8,12 @@ import com.datadog.profiling.controller.OngoingRecording; import com.datadog.profiling.utils.ProfilingMode; +import datadog.config.ConfigProvider; import datadog.environment.OperatingSystem; import datadog.libs.ddprof.DdprofLibraryLoader; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.api.profiling.ProfilingScope; import datadog.trace.api.profiling.RecordingData; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.nio.file.Path; import java.nio.file.Paths; import java.util.Arrays; diff --git a/dd-java-agent/agent-profiling/profiling-uploader/src/main/java/com/datadog/profiling/uploader/ProfileUploader.java b/dd-java-agent/agent-profiling/profiling-uploader/src/main/java/com/datadog/profiling/uploader/ProfileUploader.java index ab588da6e1a..42106b33907 100644 --- a/dd-java-agent/agent-profiling/profiling-uploader/src/main/java/com/datadog/profiling/uploader/ProfileUploader.java +++ b/dd-java-agent/agent-profiling/profiling-uploader/src/main/java/com/datadog/profiling/uploader/ProfileUploader.java @@ -24,6 +24,7 @@ import datadog.common.container.ServerlessInfo; import datadog.common.version.VersionInfo; import datadog.communication.http.OkHttpUtils; +import datadog.config.ConfigProvider; import datadog.trace.api.Config; import datadog.trace.api.DDTags; import datadog.trace.api.Platform; @@ -32,7 +33,6 @@ import datadog.trace.api.git.GitInfoProvider; import datadog.trace.api.profiling.RecordingData; import datadog.trace.api.profiling.RecordingType; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.Tags; import datadog.trace.relocate.api.IOLogger; import datadog.trace.util.AgentThreadFactory; diff --git a/dd-java-agent/agent-profiling/profiling-uploader/src/test/java/com/datadog/profiling/uploader/ProfileUploaderTest.java b/dd-java-agent/agent-profiling/profiling-uploader/src/test/java/com/datadog/profiling/uploader/ProfileUploaderTest.java index c65c605c17c..2fcc7187774 100644 --- a/dd-java-agent/agent-profiling/profiling-uploader/src/test/java/com/datadog/profiling/uploader/ProfileUploaderTest.java +++ b/dd-java-agent/agent-profiling/profiling-uploader/src/test/java/com/datadog/profiling/uploader/ProfileUploaderTest.java @@ -40,6 +40,7 @@ import com.google.common.collect.ImmutableMap; import com.google.common.io.ByteStreams; import datadog.common.version.VersionInfo; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.api.Config; import datadog.trace.api.DDTags; @@ -48,7 +49,6 @@ import datadog.trace.api.profiling.RecordingData; import datadog.trace.api.profiling.RecordingInputStream; import datadog.trace.api.profiling.RecordingType; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.relocate.api.IOLogger; import datadog.trace.util.PidHelper; import delight.fileupload.FileUpload; diff --git a/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/CompositeController.java b/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/CompositeController.java index 6daf5986b11..d8278ec43b4 100644 --- a/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/CompositeController.java +++ b/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/CompositeController.java @@ -13,6 +13,7 @@ import com.datadog.profiling.controller.oracle.OracleJdkController; import com.datadog.profiling.ddprof.Arch; import com.datadog.profiling.ddprof.OperatingSystem; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.environment.SystemProperties; import datadog.trace.api.Config; @@ -21,7 +22,6 @@ import datadog.trace.api.profiling.ProfilingSnapshot; import datadog.trace.api.profiling.RecordingData; import datadog.trace.api.profiling.RecordingInputStream; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.IOException; import java.io.SequenceInputStream; diff --git a/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/ProfilingAgent.java b/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/ProfilingAgent.java index 0be95f227aa..3695b03f820 100644 --- a/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/ProfilingAgent.java +++ b/dd-java-agent/agent-profiling/src/main/java/com/datadog/profiling/agent/ProfilingAgent.java @@ -15,13 +15,13 @@ import com.datadog.profiling.controller.jfr.JFRAccess; import com.datadog.profiling.uploader.ProfileUploader; import com.datadog.profiling.utils.Timestamper; +import datadog.config.ConfigProvider; import datadog.trace.api.Config; import datadog.trace.api.Platform; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.api.profiling.RecordingData; import datadog.trace.api.profiling.RecordingDataListener; import datadog.trace.api.profiling.RecordingType; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; import java.lang.instrument.Instrumentation; import java.lang.ref.WeakReference; diff --git a/dd-java-agent/agent-profiling/src/test/java/com/datadog/profiling/agent/CompositeControllerTest.java b/dd-java-agent/agent-profiling/src/test/java/com/datadog/profiling/agent/CompositeControllerTest.java index 2be200296ab..1fe51bc132c 100644 --- a/dd-java-agent/agent-profiling/src/test/java/com/datadog/profiling/agent/CompositeControllerTest.java +++ b/dd-java-agent/agent-profiling/src/test/java/com/datadog/profiling/agent/CompositeControllerTest.java @@ -4,7 +4,7 @@ import com.datadog.profiling.controller.ControllerContext; import com.datadog.profiling.controller.UnsupportedEnvironmentException; -import datadog.trace.bootstrap.config.provider.ConfigProvider; +import datadog.config.ConfigProvider; import org.junit.jupiter.api.Test; /** Note: some additional tests for this class are located in profiling-controller-openjdk module */ diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/InstrumenterModule.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/InstrumenterModule.java index 42ea6b7207f..3dc2a636a96 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/InstrumenterModule.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/InstrumenterModule.java @@ -6,6 +6,8 @@ import static java.util.Collections.singletonList; import static net.bytebuddy.matcher.ElementMatchers.isSynthetic; +import datadog.config.ConfigProvider; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.iast.IastPostProcessorFactory; import datadog.trace.agent.tooling.muzzle.Reference; import datadog.trace.agent.tooling.muzzle.ReferenceMatcher; @@ -13,8 +15,6 @@ import datadog.trace.api.InstrumenterConfig; import datadog.trace.api.ProductActivation; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; -import datadog.trace.util.Strings; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.security.CodeSource; import java.util.ArrayList; diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/ClassFileLocators.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/ClassFileLocators.java index 3a4335f7ff3..8cd8574a118 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/ClassFileLocators.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/ClassFileLocators.java @@ -1,7 +1,7 @@ package datadog.trace.agent.tooling.bytebuddy; +import static datadog.config.util.Strings.getResourceName; import static datadog.trace.bootstrap.AgentClassLoading.LOCATING_CLASS; -import static datadog.trace.util.Strings.getResourceName; import datadog.trace.agent.tooling.InstrumenterMetrics; import datadog.trace.agent.tooling.Utils; diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/NewTaskForRewritingVisitor.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/NewTaskForRewritingVisitor.java index da91f64ef79..f76f2dcb744 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/NewTaskForRewritingVisitor.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/NewTaskForRewritingVisitor.java @@ -1,6 +1,6 @@ package datadog.trace.agent.tooling.bytebuddy; -import static datadog.trace.util.Strings.getInternalName; +import static datadog.config.util.Strings.getInternalName; import datadog.trace.bootstrap.instrumentation.java.concurrent.NewTaskForPlaceholder; import java.util.concurrent.RunnableFuture; diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/matcher/ClassLoaderMatchers.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/matcher/ClassLoaderMatchers.java index 58f2e1e4b49..241f350e632 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/matcher/ClassLoaderMatchers.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/bytebuddy/matcher/ClassLoaderMatchers.java @@ -3,12 +3,12 @@ import static datadog.trace.bootstrap.AgentClassLoading.PROBING_CLASSLOADER; import static net.bytebuddy.matcher.ElementMatchers.any; +import datadog.config.util.Strings; import datadog.trace.api.InstrumenterConfig; import datadog.trace.api.Tracer; import datadog.trace.api.cache.DDCache; import datadog.trace.api.cache.DDCaches; import datadog.trace.bootstrap.PatchLogger; -import datadog.trace.util.Strings; import java.util.ArrayList; import java.util.BitSet; import java.util.HashMap; diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextInjector.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextInjector.java index 276ac6daf1b..b4e02fdd3ee 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextInjector.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextInjector.java @@ -1,7 +1,7 @@ package datadog.trace.agent.tooling.context; +import static datadog.config.util.Strings.getInternalName; import static datadog.trace.bootstrap.FieldBackedContextStores.getContextStoreId; -import static datadog.trace.util.Strings.getInternalName; import datadog.trace.agent.tooling.bytebuddy.memoize.MemoizedMatchers; import datadog.trace.api.InstrumenterConfig; diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextRequestRewriter.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextRequestRewriter.java index fb0a6153a41..a5baeaecc89 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextRequestRewriter.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/context/FieldBackedContextRequestRewriter.java @@ -1,7 +1,7 @@ package datadog.trace.agent.tooling.context; +import static datadog.config.util.Strings.getInternalName; import static datadog.trace.bootstrap.FieldBackedContextStores.getContextStoreId; -import static datadog.trace.util.Strings.getInternalName; import datadog.trace.bootstrap.ContextStore; import datadog.trace.bootstrap.FieldBackedContextStore; diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/Reference.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/Reference.java index f427d0b2882..51a66d5d4f6 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/Reference.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/Reference.java @@ -2,7 +2,7 @@ import static java.util.Arrays.asList; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.io.PrintWriter; import java.io.StringWriter; import java.lang.reflect.Array; diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java index 47279624e04..8bdcb5b2f65 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java @@ -1,7 +1,7 @@ package datadog.trace.agent.tooling.muzzle; -import static datadog.trace.util.Strings.getClassName; -import static datadog.trace.util.Strings.getResourceName; +import static datadog.config.util.Strings.getClassName; +import static datadog.config.util.Strings.getResourceName; import datadog.trace.agent.tooling.AdviceShader; import datadog.trace.bootstrap.Constants; diff --git a/dd-java-agent/agent-tooling/src/test/groovy/datadog/trace/agent/tooling/muzzle/AddableClassLoader.java b/dd-java-agent/agent-tooling/src/test/groovy/datadog/trace/agent/tooling/muzzle/AddableClassLoader.java index d2e63d23c03..a7504398cfe 100644 --- a/dd-java-agent/agent-tooling/src/test/groovy/datadog/trace/agent/tooling/muzzle/AddableClassLoader.java +++ b/dd-java-agent/agent-tooling/src/test/groovy/datadog/trace/agent/tooling/muzzle/AddableClassLoader.java @@ -1,6 +1,6 @@ package datadog.trace.agent.tooling.muzzle; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; diff --git a/dd-java-agent/ddprof-lib/src/main/java/datadog/libs/ddprof/DdprofLibraryLoader.java b/dd-java-agent/ddprof-lib/src/main/java/datadog/libs/ddprof/DdprofLibraryLoader.java index 5b8de0cd576..b22cc0e12e4 100644 --- a/dd-java-agent/ddprof-lib/src/main/java/datadog/libs/ddprof/DdprofLibraryLoader.java +++ b/dd-java-agent/ddprof-lib/src/main/java/datadog/libs/ddprof/DdprofLibraryLoader.java @@ -2,8 +2,8 @@ import com.datadoghq.profiler.JVMAccess; import com.datadoghq.profiler.JavaProfiler; +import datadog.config.ConfigProvider; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.util.TempLocationManager; import java.io.IOException; import java.nio.file.Files; diff --git a/dd-java-agent/instrumentation/aws-java-sqs-1.0/src/main/java/datadog/trace/instrumentation/aws/v1/sqs/AbstractSqsInstrumentation.java b/dd-java-agent/instrumentation/aws-java-sqs-1.0/src/main/java/datadog/trace/instrumentation/aws/v1/sqs/AbstractSqsInstrumentation.java index 7db3c720b72..b1a4e086c21 100644 --- a/dd-java-agent/instrumentation/aws-java-sqs-1.0/src/main/java/datadog/trace/instrumentation/aws/v1/sqs/AbstractSqsInstrumentation.java +++ b/dd-java-agent/instrumentation/aws-java-sqs-1.0/src/main/java/datadog/trace/instrumentation/aws/v1/sqs/AbstractSqsInstrumentation.java @@ -1,7 +1,7 @@ package datadog.trace.instrumentation.aws.v1.sqs; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.InstrumenterModule; -import datadog.trace.util.Strings; public abstract class AbstractSqsInstrumentation extends InstrumenterModule.Tracing { public AbstractSqsInstrumentation() { diff --git a/dd-java-agent/instrumentation/aws-java-sqs-2.0/src/main/java/datadog/trace/instrumentation/aws/v2/sqs/AbstractSqsInstrumentation.java b/dd-java-agent/instrumentation/aws-java-sqs-2.0/src/main/java/datadog/trace/instrumentation/aws/v2/sqs/AbstractSqsInstrumentation.java index 53e711db7ac..f0b41025b64 100644 --- a/dd-java-agent/instrumentation/aws-java-sqs-2.0/src/main/java/datadog/trace/instrumentation/aws/v2/sqs/AbstractSqsInstrumentation.java +++ b/dd-java-agent/instrumentation/aws-java-sqs-2.0/src/main/java/datadog/trace/instrumentation/aws/v2/sqs/AbstractSqsInstrumentation.java @@ -1,7 +1,7 @@ package datadog.trace.instrumentation.aws.v2.sqs; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.InstrumenterModule; -import datadog.trace.util.Strings; public abstract class AbstractSqsInstrumentation extends InstrumenterModule.Tracing { public AbstractSqsInstrumentation() { diff --git a/dd-java-agent/instrumentation/datastax-cassandra-3/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java b/dd-java-agent/instrumentation/datastax-cassandra-3/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java index 09f83cd84fa..5196ca32f0d 100644 --- a/dd-java-agent/instrumentation/datastax-cassandra-3/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java +++ b/dd-java-agent/instrumentation/datastax-cassandra-3/src/main/java/datadog/trace/instrumentation/datastax/cassandra/CassandraClientDecorator.java @@ -6,6 +6,7 @@ import com.datastax.driver.core.Host; import com.datastax.driver.core.ResultSet; import com.datastax.driver.core.Session; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.cache.DDCache; import datadog.trace.api.cache.DDCaches; @@ -15,7 +16,6 @@ import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; import datadog.trace.bootstrap.instrumentation.decorator.DBTypeProcessingDatabaseClientDecorator; -import datadog.trace.util.Strings; import java.util.function.ToIntFunction; public class CassandraClientDecorator extends DBTypeProcessingDatabaseClientDecorator { diff --git a/dd-java-agent/instrumentation/datastax-cassandra-4/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java b/dd-java-agent/instrumentation/datastax-cassandra-4/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java index 73badd7fbd2..d59e1123814 100644 --- a/dd-java-agent/instrumentation/datastax-cassandra-4/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java +++ b/dd-java-agent/instrumentation/datastax-cassandra-4/src/main/java/datadog/trace/instrumentation/datastax/cassandra4/CassandraClientDecorator.java @@ -8,6 +8,7 @@ import com.datastax.oss.driver.api.core.metadata.Node; import com.datastax.oss.driver.api.core.servererrors.CoordinatorException; import com.datastax.oss.driver.api.core.session.Session; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.cache.DDCache; import datadog.trace.api.cache.DDCaches; @@ -17,7 +18,6 @@ import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; import datadog.trace.bootstrap.instrumentation.decorator.DBTypeProcessingDatabaseClientDecorator; -import datadog.trace.util.Strings; import java.net.InetSocketAddress; import java.net.SocketAddress; import java.util.Objects; diff --git a/dd-java-agent/instrumentation/enable-wallclock-profiling/src/main/java/datadog/trace/instrumentation/wallclock/EnableWallclockProfilingInstrumentation.java b/dd-java-agent/instrumentation/enable-wallclock-profiling/src/main/java/datadog/trace/instrumentation/wallclock/EnableWallclockProfilingInstrumentation.java index 33567a42048..74e37c75e7d 100644 --- a/dd-java-agent/instrumentation/enable-wallclock-profiling/src/main/java/datadog/trace/instrumentation/wallclock/EnableWallclockProfilingInstrumentation.java +++ b/dd-java-agent/instrumentation/enable-wallclock-profiling/src/main/java/datadog/trace/instrumentation/wallclock/EnableWallclockProfilingInstrumentation.java @@ -10,10 +10,10 @@ import static net.bytebuddy.matcher.ElementMatchers.takesNoArguments; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.InstrumenterConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import java.util.Arrays; diff --git a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java index f2a266f47f3..e7bda04187e 100644 --- a/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java +++ b/dd-java-agent/instrumentation/graal/native-image/src/main/java/datadog/trace/instrumentation/graal/nativeimage/NativeImageGeneratorRunnerInstrumentation.java @@ -5,11 +5,11 @@ import static net.bytebuddy.matcher.ElementMatchers.isMethod; import com.google.auto.service.AutoService; +import datadog.config.env.CapturedEnvironment; import datadog.environment.SystemProperties; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.InstrumenterConfig; -import datadog.trace.api.env.CapturedEnvironment; import java.util.Arrays; import java.util.List; import net.bytebuddy.asm.Advice; @@ -77,8 +77,8 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.Config:rerun," + "datadog.trace.api.Platform:rerun," + "datadog.trace.api.Platform$Captured:build_time," - + "datadog.trace.api.env.CapturedEnvironment:build_time," - + "datadog.trace.api.env.CapturedEnvironment$ProcessInfo:build_time," + + "datadog.config.env.CapturedEnvironment:build_time," + + "datadog.config.env.CapturedEnvironment$ProcessInfo:build_time," + "datadog.trace.api.ConfigCollector:rerun," + "datadog.trace.api.ConfigDefaults:build_time," + "datadog.trace.api.ConfigHelper:rerun," @@ -109,14 +109,14 @@ public static void onEnter(@Advice.Argument(value = 0, readOnly = false) String[ + "datadog.trace.api.profiling.ProfilingEnablement:build_time," + "datadog.trace.bootstrap.config.provider.ConfigConverter:build_time," + "datadog.trace.bootstrap.config.provider.ConfigConverter$ValueOfLookup:build_time," - + "datadog.trace.bootstrap.config.provider.ConfigProvider:build_time," - + "datadog.trace.bootstrap.config.provider.ConfigProvider$Singleton:build_time," - + "datadog.trace.bootstrap.config.provider.CapturedEnvironmentConfigSource:build_time," + + "datadog.config.ConfigProvider:build_time," + + "datadog.config.ConfigProvider$Singleton:build_time," + + "datadog.config.CapturedEnvironmentConfigSource:build_time," + "datadog.trace.bootstrap.config.provider.EnvironmentConfigSource:build_time," + "datadog.trace.bootstrap.config.provider.OtelEnvironmentConfigSource:build_time," - + "datadog.trace.bootstrap.config.provider.SystemPropertiesConfigSource:build_time," - + "datadog.trace.bootstrap.config.provider.StableConfigSource:build_time," - + "datadog.trace.bootstrap.config.provider.StableConfigSource$StableConfig:build_time," + + "datadog.config.SystemPropertiesConfigSource:build_time," + + "datadog.config.StableConfigSource:build_time," + + "datadog.config.StableConfigSource$StableConfig:build_time," + "datadog.trace.bootstrap.Agent:build_time," + "datadog.trace.bootstrap.BootstrapProxy:build_time," + "datadog.trace.bootstrap.CallDepthThreadLocalMap:build_time," diff --git a/dd-java-agent/instrumentation/gradle-3.0/src/main/groovy/datadog/trace/instrumentation/gradle/legacy/GradleProjectConfigurator.groovy b/dd-java-agent/instrumentation/gradle-3.0/src/main/groovy/datadog/trace/instrumentation/gradle/legacy/GradleProjectConfigurator.groovy index 6031671c785..633b40423fb 100644 --- a/dd-java-agent/instrumentation/gradle-3.0/src/main/groovy/datadog/trace/instrumentation/gradle/legacy/GradleProjectConfigurator.groovy +++ b/dd-java-agent/instrumentation/gradle-3.0/src/main/groovy/datadog/trace/instrumentation/gradle/legacy/GradleProjectConfigurator.groovy @@ -4,7 +4,7 @@ import datadog.trace.api.Config import datadog.trace.api.civisibility.domain.BuildSessionSettings import datadog.trace.api.config.CiVisibilityConfig import datadog.trace.bootstrap.DatadogClassLoader -import datadog.trace.util.Strings +import Strings import org.gradle.api.Project import org.gradle.api.Task diff --git a/dd-java-agent/instrumentation/gradle-8.3/src/main/groovy/datadog/trace/instrumentation/gradle/GradleDaemonInjectionUtils.java b/dd-java-agent/instrumentation/gradle-8.3/src/main/groovy/datadog/trace/instrumentation/gradle/GradleDaemonInjectionUtils.java index 7cf8c0eac61..8cac03556f9 100644 --- a/dd-java-agent/instrumentation/gradle-8.3/src/main/groovy/datadog/trace/instrumentation/gradle/GradleDaemonInjectionUtils.java +++ b/dd-java-agent/instrumentation/gradle-8.3/src/main/groovy/datadog/trace/instrumentation/gradle/GradleDaemonInjectionUtils.java @@ -1,7 +1,7 @@ package datadog.trace.instrumentation.gradle; +import static datadog.config.util.Strings.propertyNameToSystemPropertyName; import static datadog.trace.api.config.CiVisibilityConfig.CIVISIBILITY_INJECTED_TRACER_VERSION; -import static datadog.trace.util.Strings.propertyNameToSystemPropertyName; import datadog.environment.SystemProperties; import datadog.trace.api.Config; diff --git a/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/TaskUnwrappingInstrumentation.java b/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/TaskUnwrappingInstrumentation.java index 01e810a9875..253e9e8d19e 100644 --- a/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/TaskUnwrappingInstrumentation.java +++ b/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/TaskUnwrappingInstrumentation.java @@ -3,11 +3,11 @@ import static datadog.trace.instrumentation.java.concurrent.ConcurrentInstrumentationNames.EXECUTOR_INSTRUMENTATION_NAME; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.agent.tooling.bytebuddy.profiling.UnwrappingVisitor; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; @AutoService(InstrumenterModule.class) public class TaskUnwrappingInstrumentation extends InstrumenterModule.Profiling diff --git a/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/forkjoin/JavaForkJoinWorkQueueInstrumentation.java b/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/forkjoin/JavaForkJoinWorkQueueInstrumentation.java index 3be741c9908..a780eb07947 100644 --- a/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/forkjoin/JavaForkJoinWorkQueueInstrumentation.java +++ b/dd-java-agent/instrumentation/java-concurrent/src/main/java/datadog/trace/instrumentation/java/concurrent/forkjoin/JavaForkJoinWorkQueueInstrumentation.java @@ -13,12 +13,12 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.bootstrap.ContextStore; import datadog.trace.bootstrap.InstrumentationContext; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.java.concurrent.QueueTimerHelper; import datadog.trace.bootstrap.instrumentation.java.concurrent.State; import java.util.Map; diff --git a/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/ByteBufferInstrumentation.java b/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/ByteBufferInstrumentation.java index db2f3a6f1fd..e8b8d3440a6 100644 --- a/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/ByteBufferInstrumentation.java +++ b/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/ByteBufferInstrumentation.java @@ -9,11 +9,11 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArguments; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Platform; -import datadog.trace.bootstrap.config.provider.ConfigProvider; @AutoService(InstrumenterModule.class) public final class ByteBufferInstrumentation extends InstrumenterModule.Profiling diff --git a/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/DirectByteBufferInstrumentation.java b/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/DirectByteBufferInstrumentation.java index 3c3d8417d8b..69a64319f63 100644 --- a/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/DirectByteBufferInstrumentation.java +++ b/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/DirectByteBufferInstrumentation.java @@ -7,11 +7,11 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArguments; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Platform; -import datadog.trace.bootstrap.config.provider.ConfigProvider; @AutoService(InstrumenterModule.class) public final class DirectByteBufferInstrumentation extends InstrumenterModule.Profiling diff --git a/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/FileChannelImplInstrumentation.java b/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/FileChannelImplInstrumentation.java index 0fac441bef8..4cd265a8abb 100644 --- a/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/FileChannelImplInstrumentation.java +++ b/dd-java-agent/instrumentation/java-directbytebuffer/src/main/java/datadog/trace/instrumentation/directbytebuffer/FileChannelImplInstrumentation.java @@ -8,11 +8,11 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArguments; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.environment.JavaVirtualMachine; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Platform; -import datadog.trace.bootstrap.config.provider.ConfigProvider; @AutoService(InstrumenterModule.class) public final class FileChannelImplInstrumentation extends InstrumenterModule.Profiling diff --git a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/CucumberUtils.java b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/CucumberUtils.java index d3014374988..db713bcb6b6 100644 --- a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/CucumberUtils.java +++ b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/CucumberUtils.java @@ -1,12 +1,12 @@ package datadog.trace.instrumentation.junit4; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.muzzle.Reference; import datadog.trace.api.civisibility.config.LibraryCapability; import datadog.trace.api.civisibility.config.TestIdentifier; import datadog.trace.api.civisibility.events.TestDescriptor; import datadog.trace.api.civisibility.events.TestSuiteDescriptor; import datadog.trace.util.MethodHandles; -import datadog.trace.util.Strings; import io.cucumber.core.gherkin.Feature; import io.cucumber.core.gherkin.Pickle; import io.cucumber.core.resource.ClassLoaders; diff --git a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/Cucumber4ExecutionInstrumentation.java b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/Cucumber4ExecutionInstrumentation.java index 3cec47ee1af..b82107746f0 100644 --- a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/Cucumber4ExecutionInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/Cucumber4ExecutionInstrumentation.java @@ -4,6 +4,7 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.agent.tooling.muzzle.Reference; @@ -17,7 +18,6 @@ import datadog.trace.instrumentation.junit4.CucumberUtils; import datadog.trace.instrumentation.junit4.JUnit4Utils; import datadog.trace.instrumentation.junit4.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.lang.invoke.MethodHandle; import java.util.Collection; diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestOrdererInstrumentation.java b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestOrdererInstrumentation.java index e871fd9bb92..b73387f2a39 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestOrdererInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestOrdererInstrumentation.java @@ -3,6 +3,7 @@ import static datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers.named; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; @@ -13,7 +14,6 @@ import datadog.trace.api.civisibility.telemetry.tag.TestFrameworkInstrumentation; import datadog.trace.instrumentation.junit4.JUnit4Instrumentation; import datadog.trace.instrumentation.junit4.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.ArrayList; import java.util.List; diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestSorterInstrumentation.java b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestSorterInstrumentation.java index d0d52f689eb..bc69f397302 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestSorterInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/main/java/datadog/trace/instrumentation/junit4/order/JUnit4TestSorterInstrumentation.java @@ -6,6 +6,7 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; @@ -16,7 +17,6 @@ import datadog.trace.api.civisibility.telemetry.tag.TestFrameworkInstrumentation; import datadog.trace.instrumentation.junit4.JUnit4Instrumentation; import datadog.trace.instrumentation.junit4.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import java.util.Set; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.type.TypeDescription; diff --git a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/MUnitTracingListener.java b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/MUnitTracingListener.java index 7e8b8651ca9..9c44ad89ae3 100644 --- a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/MUnitTracingListener.java +++ b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/MUnitTracingListener.java @@ -1,5 +1,6 @@ package datadog.trace.instrumentation.junit4; +import datadog.config.util.Strings; import datadog.trace.api.civisibility.events.TestDescriptor; import datadog.trace.api.civisibility.events.TestSuiteDescriptor; import datadog.trace.api.civisibility.execution.TestExecutionHistory; @@ -9,7 +10,6 @@ import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.bootstrap.instrumentation.api.InternalSpanTypes; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; -import datadog.trace.util.Strings; import java.util.List; import munit.Suite; import org.junit.runner.Description; diff --git a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/MUnitExecutionInstrumentation.java b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/MUnitExecutionInstrumentation.java index a722e20b3cb..0af73dc28fb 100644 --- a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/MUnitExecutionInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/main/java/datadog/trace/instrumentation/junit4/execution/MUnitExecutionInstrumentation.java @@ -4,6 +4,7 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; @@ -16,7 +17,6 @@ import datadog.trace.instrumentation.junit4.JUnit4Utils; import datadog.trace.instrumentation.junit4.MUnitUtils; import datadog.trace.instrumentation.junit4.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.lang.reflect.Method; import java.util.Collection; diff --git a/dd-java-agent/instrumentation/junit-4.10/src/main/java/datadog/trace/instrumentation/junit4/execution/JUnit4ExecutionInstrumentation.java b/dd-java-agent/instrumentation/junit-4.10/src/main/java/datadog/trace/instrumentation/junit4/execution/JUnit4ExecutionInstrumentation.java index 2f356a2d7b9..79515b7fffc 100644 --- a/dd-java-agent/instrumentation/junit-4.10/src/main/java/datadog/trace/instrumentation/junit4/execution/JUnit4ExecutionInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-4.10/src/main/java/datadog/trace/instrumentation/junit4/execution/JUnit4ExecutionInstrumentation.java @@ -5,6 +5,7 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; @@ -16,7 +17,6 @@ import datadog.trace.bootstrap.InstrumentationContext; import datadog.trace.instrumentation.junit4.JUnit4Utils; import datadog.trace.instrumentation.junit4.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.lang.reflect.Method; import java.util.Collection; diff --git a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/main/java/datadog/trace/instrumentation/junit5/order/JUnit5TestOrderInstrumentation.java b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/main/java/datadog/trace/instrumentation/junit5/order/JUnit5TestOrderInstrumentation.java index 2e5686f5fc7..e6ab57e79c1 100644 --- a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/main/java/datadog/trace/instrumentation/junit5/order/JUnit5TestOrderInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/main/java/datadog/trace/instrumentation/junit5/order/JUnit5TestOrderInstrumentation.java @@ -4,6 +4,7 @@ import static datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers.named; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; @@ -12,7 +13,6 @@ import datadog.trace.bootstrap.CallDepthThreadLocalMap; import datadog.trace.instrumentation.junit5.JUnitPlatformUtils; import datadog.trace.instrumentation.junit5.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Optional; import java.util.Set; diff --git a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5SpockParameterizedExecutionInstrumentation.java b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5SpockParameterizedExecutionInstrumentation.java index a7642ad3259..f7830c58a9c 100644 --- a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5SpockParameterizedExecutionInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5SpockParameterizedExecutionInstrumentation.java @@ -3,11 +3,11 @@ import static net.bytebuddy.matcher.ElementMatchers.isConstructor; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; import datadog.trace.instrumentation.junit5.JUnitPlatformUtils; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Map; import java.util.Set; diff --git a/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionInstrumentation.java b/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionInstrumentation.java index 3f22d470a9c..d80be24a930 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionInstrumentation.java @@ -6,6 +6,7 @@ import static net.bytebuddy.matcher.ElementMatchers.takesNoArguments; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.agent.tooling.muzzle.Reference; @@ -19,7 +20,6 @@ import datadog.trace.instrumentation.junit5.JUnitPlatformUtils; import datadog.trace.instrumentation.junit5.TestDataFactory; import datadog.trace.instrumentation.junit5.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.ArrayList; import java.util.Collection; diff --git a/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionStoreInstrumentation.java b/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionStoreInstrumentation.java index 019b4a6b4dd..c4ea82c327e 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionStoreInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5ExecutionStoreInstrumentation.java @@ -6,6 +6,7 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.civisibility.execution.TestExecutionHistory; @@ -13,7 +14,6 @@ import datadog.trace.bootstrap.InstrumentationContext; import datadog.trace.instrumentation.junit5.JUnitPlatformUtils; import datadog.trace.instrumentation.junit5.TestEventsHandlerHolder; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Collections; import java.util.Map; diff --git a/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5NodeTestTaskContextInstrumentation.java b/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5NodeTestTaskContextInstrumentation.java index 73b0e41fe51..901bec72570 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5NodeTestTaskContextInstrumentation.java +++ b/dd-java-agent/instrumentation/junit-5.3/src/main/java/datadog/trace/instrumentation/junit5/execution/JUnit5NodeTestTaskContextInstrumentation.java @@ -3,11 +3,11 @@ import static net.bytebuddy.matcher.ElementMatchers.isConstructor; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; import datadog.trace.instrumentation.junit5.JUnitPlatformUtils; -import datadog.trace.util.Strings; import java.util.Set; import net.bytebuddy.asm.Advice; import net.bytebuddy.implementation.bytecode.assign.Assigner; diff --git a/dd-java-agent/instrumentation/karate/src/main/java/datadog/trace/instrumentation/karate/KarateUtils.java b/dd-java-agent/instrumentation/karate/src/main/java/datadog/trace/instrumentation/karate/KarateUtils.java index 3fc6348aa6e..92f6ea1d9db 100644 --- a/dd-java-agent/instrumentation/karate/src/main/java/datadog/trace/instrumentation/karate/KarateUtils.java +++ b/dd-java-agent/instrumentation/karate/src/main/java/datadog/trace/instrumentation/karate/KarateUtils.java @@ -10,13 +10,13 @@ import com.intuit.karate.core.ScenarioResult; import com.intuit.karate.core.ScenarioRuntime; import com.intuit.karate.core.Tag; +import datadog.config.util.Strings; import datadog.trace.api.civisibility.config.LibraryCapability; import datadog.trace.api.civisibility.config.TestIdentifier; import datadog.trace.api.civisibility.events.TestDescriptor; import datadog.trace.api.civisibility.events.TestSuiteDescriptor; import datadog.trace.util.ComparableVersion; import datadog.trace.util.MethodHandles; -import datadog.trace.util.Strings; import java.lang.invoke.MethodHandle; import java.util.ArrayList; import java.util.Arrays; diff --git a/dd-java-agent/instrumentation/liberty-20/src/test/groovy/datadog/trace/instrumentation/liberty20/Liberty20Test.groovy b/dd-java-agent/instrumentation/liberty-20/src/test/groovy/datadog/trace/instrumentation/liberty20/Liberty20Test.groovy index 937b0b82c17..7217092d50e 100644 --- a/dd-java-agent/instrumentation/liberty-20/src/test/groovy/datadog/trace/instrumentation/liberty20/Liberty20Test.groovy +++ b/dd-java-agent/instrumentation/liberty-20/src/test/groovy/datadog/trace/instrumentation/liberty20/Liberty20Test.groovy @@ -6,7 +6,7 @@ import datadog.trace.agent.test.base.HttpServer import datadog.trace.agent.test.base.HttpServerTest import datadog.trace.agent.test.naming.TestingGenericHttpNamingConventions import datadog.trace.api.config.GeneralConfig -import datadog.trace.api.env.CapturedEnvironment +import CapturedEnvironment import datadog.trace.bootstrap.instrumentation.api.Tags import datadog.trace.core.DDSpan import spock.lang.IgnoreIf diff --git a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenProjectConfigurator.java b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenProjectConfigurator.java index 13758cefd1e..058a6900b9e 100644 --- a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenProjectConfigurator.java +++ b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenProjectConfigurator.java @@ -1,9 +1,9 @@ package datadog.trace.instrumentation.maven3; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.civisibility.domain.BuildSessionSettings; import datadog.trace.bootstrap.DatadogClassLoader; -import datadog.trace.util.Strings; import java.io.File; import java.util.ArrayList; import java.util.List; diff --git a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java index 3b49dce6841..e23c788a5cc 100644 --- a/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java +++ b/dd-java-agent/instrumentation/maven-3.2.1/src/main/java/datadog/trace/instrumentation/maven3/MavenUtils.java @@ -1,9 +1,9 @@ package datadog.trace.instrumentation.maven3; +import datadog.config.util.Strings; import datadog.environment.EnvironmentVariables; import datadog.trace.api.civisibility.domain.JavaAgent; import datadog.trace.util.MethodHandles; -import datadog.trace.util.Strings; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.File; import java.lang.invoke.MethodHandle; diff --git a/dd-java-agent/instrumentation/netty-concurrent-4/src/main/java/datadog/trace/instrumentation/netty40/concurrent/SingleThreadEventExecutorInstrumentation.java b/dd-java-agent/instrumentation/netty-concurrent-4/src/main/java/datadog/trace/instrumentation/netty40/concurrent/SingleThreadEventExecutorInstrumentation.java index a9779e28b87..2e6dffec355 100644 --- a/dd-java-agent/instrumentation/netty-concurrent-4/src/main/java/datadog/trace/instrumentation/netty40/concurrent/SingleThreadEventExecutorInstrumentation.java +++ b/dd-java-agent/instrumentation/netty-concurrent-4/src/main/java/datadog/trace/instrumentation/netty40/concurrent/SingleThreadEventExecutorInstrumentation.java @@ -9,12 +9,12 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArguments; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.config.ProfilingConfig; import datadog.trace.bootstrap.ContextStore; import datadog.trace.bootstrap.InstrumentationContext; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.java.concurrent.QueueTimerHelper; import datadog.trace.bootstrap.instrumentation.java.concurrent.State; import io.netty.util.concurrent.EventExecutor; diff --git a/dd-java-agent/instrumentation/scalatest/src/main/java/datadog/trace/instrumentation/scalatest/execution/ScalatestExecutionInstrumentation.java b/dd-java-agent/instrumentation/scalatest/src/main/java/datadog/trace/instrumentation/scalatest/execution/ScalatestExecutionInstrumentation.java index 187caa69b2d..fd677d71822 100644 --- a/dd-java-agent/instrumentation/scalatest/src/main/java/datadog/trace/instrumentation/scalatest/execution/ScalatestExecutionInstrumentation.java +++ b/dd-java-agent/instrumentation/scalatest/src/main/java/datadog/trace/instrumentation/scalatest/execution/ScalatestExecutionInstrumentation.java @@ -5,6 +5,7 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; @@ -13,7 +14,6 @@ import datadog.trace.api.civisibility.execution.TestExecutionPolicy; import datadog.trace.instrumentation.scalatest.RunContext; import datadog.trace.instrumentation.scalatest.ScalatestUtils; -import datadog.trace.util.Strings; import java.lang.invoke.MethodHandle; import java.util.Set; import net.bytebuddy.asm.Advice; diff --git a/dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/JettyServletHandlerTest.groovy b/dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/JettyServletHandlerTest.groovy index 23ad2ac25c1..03ad8a55a31 100644 --- a/dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/JettyServletHandlerTest.groovy +++ b/dd-java-agent/instrumentation/servlet/request-3/src/test/groovy/JettyServletHandlerTest.groovy @@ -1,6 +1,6 @@ import datadog.trace.agent.test.base.HttpServer import datadog.trace.api.config.GeneralConfig -import datadog.trace.api.env.CapturedEnvironment +import CapturedEnvironment import datadog.trace.instrumentation.servlet3.TestServlet3 import org.eclipse.jetty.http.HttpStatus import org.eclipse.jetty.server.Request diff --git a/dd-java-agent/instrumentation/sslsocket/src/main/java/datadog/trace/instrumentation/sslsocket/SocketConnectInstrumentation.java b/dd-java-agent/instrumentation/sslsocket/src/main/java/datadog/trace/instrumentation/sslsocket/SocketConnectInstrumentation.java index e3764dde93e..0f3edb97802 100644 --- a/dd-java-agent/instrumentation/sslsocket/src/main/java/datadog/trace/instrumentation/sslsocket/SocketConnectInstrumentation.java +++ b/dd-java-agent/instrumentation/sslsocket/src/main/java/datadog/trace/instrumentation/sslsocket/SocketConnectInstrumentation.java @@ -7,10 +7,10 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.InstrumenterConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import net.bytebuddy.asm.Advice; diff --git a/dd-java-agent/instrumentation/synapse-3/src/test/groovy/datadog/trace/instrumentation/synapse3/SynapseTest.groovy b/dd-java-agent/instrumentation/synapse-3/src/test/groovy/datadog/trace/instrumentation/synapse3/SynapseTest.groovy index caf7be64d54..21d901b8e4a 100644 --- a/dd-java-agent/instrumentation/synapse-3/src/test/groovy/datadog/trace/instrumentation/synapse3/SynapseTest.groovy +++ b/dd-java-agent/instrumentation/synapse-3/src/test/groovy/datadog/trace/instrumentation/synapse3/SynapseTest.groovy @@ -9,7 +9,7 @@ import datadog.trace.agent.test.utils.PortUtils import datadog.trace.api.DDSpanTypes import datadog.trace.api.DDTags import datadog.trace.api.config.GeneralConfig -import datadog.trace.api.env.CapturedEnvironment +import CapturedEnvironment import datadog.trace.bootstrap.instrumentation.api.Tags import datadog.trace.core.DDSpan import datadog.trace.test.util.Flaky diff --git a/dd-java-agent/instrumentation/testng/testng-6/src/main/java/datadog/trace/instrumentation/testng6/TestNGClassListenerInstrumentation.java b/dd-java-agent/instrumentation/testng/testng-6/src/main/java/datadog/trace/instrumentation/testng6/TestNGClassListenerInstrumentation.java index 2568b8b532f..2cfedc40f9e 100644 --- a/dd-java-agent/instrumentation/testng/testng-6/src/main/java/datadog/trace/instrumentation/testng6/TestNGClassListenerInstrumentation.java +++ b/dd-java-agent/instrumentation/testng/testng-6/src/main/java/datadog/trace/instrumentation/testng6/TestNGClassListenerInstrumentation.java @@ -6,11 +6,11 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.instrumentation.testng.TestNGClassListener; import datadog.trace.instrumentation.testng.TestNGUtils; -import datadog.trace.util.Strings; import net.bytebuddy.asm.Advice; import net.bytebuddy.matcher.ElementMatcher; import org.testng.IMethodInstance; diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGClassListenerInstrumentation.java b/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGClassListenerInstrumentation.java index 9bc343b046d..626f2b6f126 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGClassListenerInstrumentation.java +++ b/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGClassListenerInstrumentation.java @@ -4,11 +4,11 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.instrumentation.testng.TestNGClassListener; import datadog.trace.instrumentation.testng.TestNGUtils; -import datadog.trace.util.Strings; import net.bytebuddy.asm.Advice; import org.testng.IMethodInstance; import org.testng.ITestClass; diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGExecutionInstrumentation.java b/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGExecutionInstrumentation.java index 7a30dd10405..f20dcb8031c 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGExecutionInstrumentation.java +++ b/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/TestNGExecutionInstrumentation.java @@ -4,13 +4,13 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; import datadog.trace.instrumentation.testng.TestNGUtils; import datadog.trace.instrumentation.testng.TracingListener; import datadog.trace.instrumentation.testng.execution.RetryAnalyzer; -import datadog.trace.util.Strings; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Collections; import java.util.Set; diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/order/TestNGOrderInstrumentation.java b/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/order/TestNGOrderInstrumentation.java index e081ebcfdf0..53bc37ea53c 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/order/TestNGOrderInstrumentation.java +++ b/dd-java-agent/instrumentation/testng/testng-7/src/main/java/datadog/trace/instrumentation/testng7/order/TestNGOrderInstrumentation.java @@ -1,6 +1,7 @@ package datadog.trace.instrumentation.testng7.order; import com.google.auto.service.AutoService; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.api.Config; @@ -8,7 +9,6 @@ import datadog.trace.instrumentation.testng.TestEventsHandlerHolder; import datadog.trace.instrumentation.testng.TestNGInstrumentation; import datadog.trace.instrumentation.testng.TestNGUtils; -import datadog.trace.util.Strings; import java.util.List; import java.util.Set; import net.bytebuddy.asm.Advice; diff --git a/dd-java-agent/instrumentation/tibco-businessworks/tibcobw-6/src/main/java/datadog/trace/instrumentation/tibcobw6/AbstractTibcoInstrumentation.java b/dd-java-agent/instrumentation/tibco-businessworks/tibcobw-6/src/main/java/datadog/trace/instrumentation/tibcobw6/AbstractTibcoInstrumentation.java index 0e5c427c636..84ed5cbc78c 100644 --- a/dd-java-agent/instrumentation/tibco-businessworks/tibcobw-6/src/main/java/datadog/trace/instrumentation/tibcobw6/AbstractTibcoInstrumentation.java +++ b/dd-java-agent/instrumentation/tibco-businessworks/tibcobw-6/src/main/java/datadog/trace/instrumentation/tibcobw6/AbstractTibcoInstrumentation.java @@ -1,8 +1,8 @@ package datadog.trace.instrumentation.tibcobw6; +import datadog.config.util.Strings; import datadog.trace.agent.tooling.InstrumenterModule; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; -import datadog.trace.util.Strings; import java.util.HashMap; import java.util.Map; diff --git a/dd-java-agent/instrumentation/websphere-jmx/src/main/java/datadog/trace/instrumentation/websphere_jmx/WebsphereSecurityInstrumentation.java b/dd-java-agent/instrumentation/websphere-jmx/src/main/java/datadog/trace/instrumentation/websphere_jmx/WebsphereSecurityInstrumentation.java index aef4c7a72f2..1299e209c8c 100644 --- a/dd-java-agent/instrumentation/websphere-jmx/src/main/java/datadog/trace/instrumentation/websphere_jmx/WebsphereSecurityInstrumentation.java +++ b/dd-java-agent/instrumentation/websphere-jmx/src/main/java/datadog/trace/instrumentation/websphere_jmx/WebsphereSecurityInstrumentation.java @@ -5,10 +5,10 @@ import static net.bytebuddy.matcher.ElementMatchers.returns; import com.google.auto.service.AutoService; +import datadog.config.ConfigProvider; import datadog.environment.SystemProperties; import datadog.trace.agent.tooling.Instrumenter; import datadog.trace.agent.tooling.InstrumenterModule; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.util.AgentThreadFactory; import java.util.Collections; import net.bytebuddy.asm.Advice; diff --git a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/AgentTestRunner.groovy b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/AgentTestRunner.groovy index 8c70e25d876..89e1ba90e2d 100644 --- a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/AgentTestRunner.groovy +++ b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/AgentTestRunner.groovy @@ -55,7 +55,7 @@ import datadog.trace.core.PendingTrace import datadog.trace.core.datastreams.DefaultDataStreamsMonitoring import datadog.trace.test.util.DDSpecification import datadog.trace.util.AgentTaskScheduler -import datadog.trace.util.Strings +import Strings import de.thetaphi.forbiddenapis.SuppressForbidden import edu.umd.cs.findbugs.annotations.SuppressFBWarnings import groovy.transform.stc.ClosureParams diff --git a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpServerTest.groovy b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpServerTest.groovy index fba553fe199..e925bbde81b 100644 --- a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpServerTest.groovy +++ b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpServerTest.groovy @@ -15,7 +15,7 @@ import datadog.trace.api.ProductActivation import datadog.trace.api.config.GeneralConfig import datadog.trace.api.config.TracerConfig import datadog.trace.api.datastreams.DataStreamsContext -import datadog.trace.api.env.CapturedEnvironment +import CapturedEnvironment import datadog.trace.api.function.TriConsumer import datadog.trace.api.function.TriFunction import datadog.trace.api.gateway.BlockResponseFunction diff --git a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/utils/ClasspathUtils.java b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/utils/ClasspathUtils.java index 3d0887d0e93..6933dfb3ea2 100644 --- a/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/utils/ClasspathUtils.java +++ b/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/utils/ClasspathUtils.java @@ -2,7 +2,7 @@ import static com.google.common.base.StandardSystemProperty.JAVA_CLASS_PATH; import static com.google.common.base.StandardSystemProperty.PATH_SEPARATOR; -import static datadog.trace.util.Strings.getResourceName; +import static datadog.config.util.Strings.getResourceName; import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; diff --git a/dd-smoke-tests/debugger-integration-tests/src/test/java/datadog/smoketest/RemoteConfigHelper.java b/dd-smoke-tests/debugger-integration-tests/src/test/java/datadog/smoketest/RemoteConfigHelper.java index d9f7c7cc85d..dce4771e121 100644 --- a/dd-smoke-tests/debugger-integration-tests/src/test/java/datadog/smoketest/RemoteConfigHelper.java +++ b/dd-smoke-tests/debugger-integration-tests/src/test/java/datadog/smoketest/RemoteConfigHelper.java @@ -1,6 +1,6 @@ package datadog.smoketest; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.Base64; diff --git a/dd-smoke-tests/gradle/src/test/groovy/datadog/smoketest/GradleDaemonSmokeTest.groovy b/dd-smoke-tests/gradle/src/test/groovy/datadog/smoketest/GradleDaemonSmokeTest.groovy index eaac3227724..90d9a5597e6 100644 --- a/dd-smoke-tests/gradle/src/test/groovy/datadog/smoketest/GradleDaemonSmokeTest.groovy +++ b/dd-smoke-tests/gradle/src/test/groovy/datadog/smoketest/GradleDaemonSmokeTest.groovy @@ -5,7 +5,7 @@ import datadog.trace.api.Config import datadog.trace.api.config.CiVisibilityConfig import datadog.trace.api.config.GeneralConfig import datadog.trace.api.config.TraceInstrumentationConfig -import datadog.trace.util.Strings +import Strings import org.gradle.testkit.runner.BuildResult import org.gradle.testkit.runner.GradleRunner import org.gradle.testkit.runner.TaskOutcome diff --git a/dd-smoke-tests/maven/src/test/groovy/datadog/smoketest/MavenSmokeTest.groovy b/dd-smoke-tests/maven/src/test/groovy/datadog/smoketest/MavenSmokeTest.groovy index 83da2154689..6364361bca2 100644 --- a/dd-smoke-tests/maven/src/test/groovy/datadog/smoketest/MavenSmokeTest.groovy +++ b/dd-smoke-tests/maven/src/test/groovy/datadog/smoketest/MavenSmokeTest.groovy @@ -6,7 +6,7 @@ import datadog.trace.api.civisibility.CIConstants import datadog.trace.api.config.CiVisibilityConfig import datadog.trace.api.config.GeneralConfig import datadog.trace.civisibility.CiVisibilitySmokeTest -import datadog.trace.util.Strings +import Strings import spock.lang.IgnoreIf import java.nio.file.FileVisitResult diff --git a/dd-smoke-tests/src/main/groovy/datadog/smoketest/AbstractSmokeTest.groovy b/dd-smoke-tests/src/main/groovy/datadog/smoketest/AbstractSmokeTest.groovy index 8bc5e2f5a33..92454b415aa 100644 --- a/dd-smoke-tests/src/main/groovy/datadog/smoketest/AbstractSmokeTest.groovy +++ b/dd-smoke-tests/src/main/groovy/datadog/smoketest/AbstractSmokeTest.groovy @@ -7,7 +7,7 @@ import datadog.trace.test.agent.decoder.DecodedMessage import datadog.trace.test.agent.decoder.DecodedSpan import datadog.trace.test.agent.decoder.DecodedTrace import datadog.trace.test.agent.decoder.Decoder -import datadog.trace.util.Strings +import Strings import groovy.json.JsonSlurper import spock.lang.AutoCleanup import spock.lang.Shared diff --git a/dd-trace-core/src/main/java/datadog/trace/common/writer/WriterFactory.java b/dd-trace-core/src/main/java/datadog/trace/common/writer/WriterFactory.java index a3244fc3768..a450b80f86d 100644 --- a/dd-trace-core/src/main/java/datadog/trace/common/writer/WriterFactory.java +++ b/dd-trace-core/src/main/java/datadog/trace/common/writer/WriterFactory.java @@ -13,6 +13,7 @@ import datadog.common.container.ServerlessInfo; import datadog.communication.ddagent.DDAgentFeaturesDiscovery; import datadog.communication.ddagent.SharedCommunicationObjects; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.intake.TrackType; import datadog.trace.common.sampling.Sampler; @@ -23,7 +24,6 @@ import datadog.trace.common.writer.ddintake.DDIntakeApi; import datadog.trace.common.writer.ddintake.DDIntakeTrackTypeResolver; import datadog.trace.core.monitor.HealthMetrics; -import datadog.trace.util.Strings; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.util.concurrent.TimeUnit; import okhttp3.HttpUrl; diff --git a/dd-trace-core/src/main/java/datadog/trace/core/taginterceptor/TagInterceptor.java b/dd-trace-core/src/main/java/datadog/trace/core/taginterceptor/TagInterceptor.java index 3da653c5398..31e29b86b9e 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/taginterceptor/TagInterceptor.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/taginterceptor/TagInterceptor.java @@ -18,13 +18,13 @@ import static datadog.trace.core.taginterceptor.RuleFlags.Feature.STATUS_404_DECORATOR; import static datadog.trace.core.taginterceptor.RuleFlags.Feature.URL_AS_RESOURCE_NAME; +import datadog.config.env.CapturedEnvironment; import datadog.trace.api.Config; import datadog.trace.api.ConfigDefaults; import datadog.trace.api.DDTags; import datadog.trace.api.Pair; import datadog.trace.api.TagMap; import datadog.trace.api.config.GeneralConfig; -import datadog.trace.api.env.CapturedEnvironment; import datadog.trace.api.normalize.HttpResourceNames; import datadog.trace.api.remoteconfig.ServiceNameCollector; import datadog.trace.api.sampling.SamplingMechanism; diff --git a/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/QueryObfuscator.java b/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/QueryObfuscator.java index 37bbd470596..743a9e5edb6 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/QueryObfuscator.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/QueryObfuscator.java @@ -3,12 +3,12 @@ import com.google.re2j.Matcher; import com.google.re2j.Pattern; import com.google.re2j.PatternSyntaxException; +import datadog.config.util.Strings; import datadog.trace.api.DDTags; import datadog.trace.api.TagMap; import datadog.trace.bootstrap.instrumentation.api.AgentSpanLink; import datadog.trace.bootstrap.instrumentation.api.Tags; import datadog.trace.core.DDSpanContext; -import datadog.trace.util.Strings; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/SpanPointersProcessor.java b/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/SpanPointersProcessor.java index 8282583cbf2..e95459934a1 100644 --- a/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/SpanPointersProcessor.java +++ b/dd-trace-core/src/main/java/datadog/trace/core/tagprocessor/SpanPointersProcessor.java @@ -11,12 +11,12 @@ import static datadog.trace.bootstrap.instrumentation.api.InstrumentationTags.DYNAMO_PRIMARY_KEY_2_VALUE; import static datadog.trace.bootstrap.instrumentation.api.InstrumentationTags.S3_ETAG; +import datadog.config.util.Strings; import datadog.trace.api.TagMap; import datadog.trace.bootstrap.instrumentation.api.AgentSpanLink; import datadog.trace.bootstrap.instrumentation.api.SpanAttributes; import datadog.trace.bootstrap.instrumentation.api.SpanLink; import datadog.trace.core.DDSpanContext; -import datadog.trace.util.Strings; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; diff --git a/dd-trace-core/src/test/groovy/datadog/trace/core/taginterceptor/TagInterceptorTest.groovy b/dd-trace-core/src/test/groovy/datadog/trace/core/taginterceptor/TagInterceptorTest.groovy index 075ac57a188..33ef282ef89 100644 --- a/dd-trace-core/src/test/groovy/datadog/trace/core/taginterceptor/TagInterceptorTest.groovy +++ b/dd-trace-core/src/test/groovy/datadog/trace/core/taginterceptor/TagInterceptorTest.groovy @@ -9,7 +9,7 @@ import static datadog.trace.api.config.TracerConfig.SPLIT_BY_TAGS import datadog.trace.api.DDSpanTypes import datadog.trace.api.DDTags import datadog.trace.api.config.GeneralConfig -import datadog.trace.api.env.CapturedEnvironment +import CapturedEnvironment import datadog.trace.api.remoteconfig.ServiceNameCollector import datadog.trace.api.sampling.PrioritySampling import datadog.trace.bootstrap.instrumentation.api.AgentSpan diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index 66b7d4ad1b4..9f6290dbdb9 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -18,9 +18,7 @@ final class CachedData { exclude(project(':communication')) exclude(project(':components:context')) exclude(project(':components:environment')) - exclude(project(':components:generator')) exclude(project(':components:json')) - exclude(project(':components:yaml')) exclude(project(':remote-config:remote-config-api')) exclude(project(':remote-config:remote-config-core')) exclude(project(':telemetry')) diff --git a/internal-api/build.gradle.kts b/internal-api/build.gradle.kts index 87eafecd625..81cb47f1cec 100644 --- a/internal-api/build.gradle.kts +++ b/internal-api/build.gradle.kts @@ -76,7 +76,7 @@ val excludedClassesCoverage by extra( // Bootstrap API "datadog.trace.bootstrap.ActiveSubsystems", "datadog.trace.bootstrap.ContextStore.Factory", - "datadog.trace.bootstrap.config.provider.ConfigProvider.Singleton", + "datadog.config.ConfigProvider.Singleton", "datadog.trace.bootstrap.instrumentation.api.java.lang.ProcessImplInstrumentationHelpers", "datadog.trace.bootstrap.instrumentation.api.Tags", "datadog.trace.bootstrap.instrumentation.api.CommonTagValues", @@ -246,8 +246,8 @@ val excludedClassesBranchCoverage by extra( "datadog.trace.util.stacktrace.HotSpotStackWalker", "datadog.trace.util.stacktrace.StackWalkerFactory", // Tested using forked process - "datadog.trace.api.env.CapturedEnvironment", - "datadog.trace.api.env.CapturedEnvironment.ProcessInfo", + "datadog.config.env.CapturedEnvironment", + "datadog.config.env.CapturedEnvironment.ProcessInfo", "datadog.trace.util.TempLocationManager", "datadog.trace.util.TempLocationManager.*", ) @@ -256,7 +256,7 @@ val excludedClassesBranchCoverage by extra( val excludedClassesInstructionCoverage by extra( listOf( "datadog.trace.bootstrap.config.provider.EnvironmentConfigSource", - "datadog.trace.bootstrap.config.provider.SystemPropertiesConfigSource", + "datadog.config.SystemPropertiesConfigSource", "datadog.trace.util.stacktrace.StackWalkerFactory" ) ) @@ -271,9 +271,8 @@ dependencies { api(libs.slf4j) api(project(":components:context")) api(project(":components:environment")) - api(project(":components:generator")) api(project(":components:json")) - api(project(":components:yaml")) + api(project(":utils:config-utils")) api(project(":utils:time-utils")) // has to be loaded by system classloader: diff --git a/internal-api/src/main/java/datadog/trace/api/ClassloaderConfigurationOverrides.java b/internal-api/src/main/java/datadog/trace/api/ClassloaderConfigurationOverrides.java index cfcff9a10b0..4f744a95f96 100644 --- a/internal-api/src/main/java/datadog/trace/api/ClassloaderConfigurationOverrides.java +++ b/internal-api/src/main/java/datadog/trace/api/ClassloaderConfigurationOverrides.java @@ -1,7 +1,7 @@ package datadog.trace.api; +import datadog.config.env.CapturedEnvironment; import datadog.trace.api.config.GeneralConfig; -import datadog.trace.api.env.CapturedEnvironment; import datadog.trace.api.remoteconfig.ServiceNameCollector; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import java.util.Collections; diff --git a/internal-api/src/main/java/datadog/trace/api/Config.java b/internal-api/src/main/java/datadog/trace/api/Config.java index 36a165ee1c3..bcc394ae1c3 100644 --- a/internal-api/src/main/java/datadog/trace/api/Config.java +++ b/internal-api/src/main/java/datadog/trace/api/Config.java @@ -1,5 +1,6 @@ package datadog.trace.api; +import static datadog.config.util.Strings.propertyNameToEnvironmentVariableName; import static datadog.environment.JavaVirtualMachine.isJavaVersion; import static datadog.environment.JavaVirtualMachine.isJavaVersionAtLeast; import static datadog.trace.api.ConfigDefaults.DEFAULT_ADD_SPAN_POINTERS; @@ -629,8 +630,13 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; import static datadog.trace.util.CollectionUtils.tryMakeImmutableList; import static datadog.trace.util.CollectionUtils.tryMakeImmutableSet; -import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; +import datadog.config.CapturedEnvironmentConfigSource; +import datadog.config.ConfigCollector; +import datadog.config.ConfigOrigin; +import datadog.config.ConfigProvider; +import datadog.config.SystemPropertiesConfigSource; +import datadog.config.util.Strings; import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; import datadog.environment.OperatingSystem; @@ -646,14 +652,10 @@ import datadog.trace.api.profiling.ProfilingEnablement; import datadog.trace.api.rum.RumInjectorConfig; import datadog.trace.api.rum.RumInjectorConfig.PrivacyLevel; -import datadog.trace.bootstrap.config.provider.CapturedEnvironmentConfigSource; -import datadog.trace.bootstrap.config.provider.ConfigProvider; -import datadog.trace.bootstrap.config.provider.SystemPropertiesConfigSource; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import datadog.trace.context.TraceScope; import datadog.trace.util.PidHelper; import datadog.trace.util.RandomUtils; -import datadog.trace.util.Strings; import datadog.trace.util.throwable.FatalAgentMisconfigurationError; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.io.BufferedReader; diff --git a/internal-api/src/main/java/datadog/trace/api/DynamicConfig.java b/internal-api/src/main/java/datadog/trace/api/DynamicConfig.java index 1f995ccf7a5..1af62b57e97 100644 --- a/internal-api/src/main/java/datadog/trace/api/DynamicConfig.java +++ b/internal-api/src/main/java/datadog/trace/api/DynamicConfig.java @@ -12,9 +12,11 @@ import static datadog.trace.api.config.TracerConfig.TRACE_SAMPLING_RULES; import static datadog.trace.util.CollectionUtils.tryMakeImmutableMap; +import datadog.config.ConfigCollector; +import datadog.config.ConfigOrigin; +import datadog.config.util.Strings; import datadog.trace.api.sampling.SamplingRule.SpanSamplingRule; import datadog.trace.api.sampling.SamplingRule.TraceSamplingRule; -import datadog.trace.util.Strings; import java.util.Collection; import java.util.Collections; import java.util.HashMap; diff --git a/internal-api/src/main/java/datadog/trace/api/InstrumenterConfig.java b/internal-api/src/main/java/datadog/trace/api/InstrumenterConfig.java index 532d1472c6e..aa3515f0a9c 100644 --- a/internal-api/src/main/java/datadog/trace/api/InstrumenterConfig.java +++ b/internal-api/src/main/java/datadog/trace/api/InstrumenterConfig.java @@ -76,8 +76,8 @@ import static datadog.trace.util.CollectionUtils.tryMakeImmutableList; import static datadog.trace.util.CollectionUtils.tryMakeImmutableSet; +import datadog.config.ConfigProvider; import datadog.trace.api.profiling.ProfilingEnablement; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.lang.reflect.Method; import java.util.Arrays; diff --git a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java index 2d16159c8ef..4902d3de38f 100644 --- a/internal-api/src/main/java/datadog/trace/api/ProcessTags.java +++ b/internal-api/src/main/java/datadog/trace/api/ProcessTags.java @@ -1,8 +1,8 @@ package datadog.trace.api; +import datadog.config.env.CapturedEnvironment; import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.api.env.CapturedEnvironment; import datadog.trace.bootstrap.instrumentation.api.UTF8BytesString; import datadog.trace.util.TraceUtils; import de.thetaphi.forbiddenapis.SuppressForbidden; diff --git a/internal-api/src/main/java/datadog/trace/api/appsec/AppSecEventTracker.java b/internal-api/src/main/java/datadog/trace/api/appsec/AppSecEventTracker.java index 8bf939caccb..6d74d32a41a 100644 --- a/internal-api/src/main/java/datadog/trace/api/appsec/AppSecEventTracker.java +++ b/internal-api/src/main/java/datadog/trace/api/appsec/AppSecEventTracker.java @@ -1,5 +1,6 @@ package datadog.trace.api.appsec; +import static datadog.config.util.Strings.toHexString; import static datadog.trace.api.UserIdCollectionMode.ANONYMIZATION; import static datadog.trace.api.UserIdCollectionMode.DISABLED; import static datadog.trace.api.UserIdCollectionMode.SDK; @@ -10,7 +11,6 @@ import static datadog.trace.api.telemetry.LoginVersion.AUTO; import static datadog.trace.api.telemetry.LoginVersion.V1; import static datadog.trace.api.telemetry.LoginVersion.V2; -import static datadog.trace.util.Strings.toHexString; import static java.util.Collections.emptyMap; import datadog.appsec.api.blocking.BlockingException; diff --git a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityDistributionMetric.java b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityDistributionMetric.java index 8dcaa6eb385..7d691c8b09a 100644 --- a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityDistributionMetric.java +++ b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityDistributionMetric.java @@ -1,9 +1,9 @@ package datadog.trace.api.civisibility.telemetry; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.civisibility.telemetry.tag.Command; import datadog.trace.api.civisibility.telemetry.tag.Endpoint; import datadog.trace.api.civisibility.telemetry.tag.ResponseCompressed; -import datadog.trace.api.telemetry.MetricCollector; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; diff --git a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricCollector.java b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricCollector.java index 00e09c2bead..c3b6e1e7ec8 100644 --- a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricCollector.java +++ b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricCollector.java @@ -1,6 +1,6 @@ package datadog.trace.api.civisibility.telemetry; -import datadog.trace.api.telemetry.MetricCollector; +import datadog.config.telemetry.MetricCollector; public interface CiVisibilityMetricCollector extends MetricCollector { diff --git a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricData.java b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricData.java index 03336682bb6..43b1c374282 100644 --- a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricData.java +++ b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityMetricData.java @@ -1,6 +1,6 @@ package datadog.trace.api.civisibility.telemetry; -import datadog.trace.api.telemetry.MetricCollector; +import datadog.config.telemetry.MetricCollector; public class CiVisibilityMetricData extends MetricCollector.Metric { diff --git a/internal-api/src/main/java/datadog/trace/api/git/CommitInfo.java b/internal-api/src/main/java/datadog/trace/api/git/CommitInfo.java index ad5183c4f92..7aeb1099fbb 100644 --- a/internal-api/src/main/java/datadog/trace/api/git/CommitInfo.java +++ b/internal-api/src/main/java/datadog/trace/api/git/CommitInfo.java @@ -1,6 +1,6 @@ package datadog.trace.api.git; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.util.Objects; public class CommitInfo { diff --git a/internal-api/src/main/java/datadog/trace/api/git/GitInfoProvider.java b/internal-api/src/main/java/datadog/trace/api/git/GitInfoProvider.java index 9550a16236e..46f64cbe18c 100644 --- a/internal-api/src/main/java/datadog/trace/api/git/GitInfoProvider.java +++ b/internal-api/src/main/java/datadog/trace/api/git/GitInfoProvider.java @@ -1,5 +1,6 @@ package datadog.trace.api.git; +import datadog.config.util.Strings; import datadog.trace.api.cache.DDCache; import datadog.trace.api.cache.DDCaches; import datadog.trace.api.civisibility.InstrumentationBridge; @@ -8,7 +9,6 @@ import datadog.trace.api.civisibility.telemetry.tag.GitProviderExpected; import datadog.trace.api.civisibility.telemetry.tag.GitShaDiscrepancyType; import datadog.trace.api.civisibility.telemetry.tag.GitShaMatch; -import datadog.trace.util.Strings; import java.nio.file.Paths; import java.util.ArrayList; import java.util.Collection; diff --git a/internal-api/src/main/java/datadog/trace/api/git/GitUtils.java b/internal-api/src/main/java/datadog/trace/api/git/GitUtils.java index de1cc3ec0ee..ed222109e54 100644 --- a/internal-api/src/main/java/datadog/trace/api/git/GitUtils.java +++ b/internal-api/src/main/java/datadog/trace/api/git/GitUtils.java @@ -3,7 +3,7 @@ import static datadog.trace.api.git.RawParseUtils.decode; import static datadog.trace.api.git.RawParseUtils.nextLF; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.net.URI; diff --git a/internal-api/src/main/java/datadog/trace/api/git/PersonInfo.java b/internal-api/src/main/java/datadog/trace/api/git/PersonInfo.java index a7c1a083658..816aa6b1c19 100644 --- a/internal-api/src/main/java/datadog/trace/api/git/PersonInfo.java +++ b/internal-api/src/main/java/datadog/trace/api/git/PersonInfo.java @@ -1,6 +1,6 @@ package datadog.trace.api.git; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Objects; diff --git a/internal-api/src/main/java/datadog/trace/api/git/UserSuppliedGitInfoBuilder.java b/internal-api/src/main/java/datadog/trace/api/git/UserSuppliedGitInfoBuilder.java index 92a37b109b4..485f81e84c7 100644 --- a/internal-api/src/main/java/datadog/trace/api/git/UserSuppliedGitInfoBuilder.java +++ b/internal-api/src/main/java/datadog/trace/api/git/UserSuppliedGitInfoBuilder.java @@ -1,12 +1,12 @@ package datadog.trace.api.git; +import datadog.config.ConfigProvider; +import datadog.config.util.Strings; import datadog.trace.api.Config; import datadog.trace.api.civisibility.telemetry.tag.GitProviderDiscrepant; import datadog.trace.api.civisibility.telemetry.tag.GitProviderExpected; import datadog.trace.api.config.GeneralConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.bootstrap.instrumentation.api.Tags; -import datadog.trace.util.Strings; import javax.annotation.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/internal-api/src/main/java/datadog/trace/api/iast/IastDetectionMode.java b/internal-api/src/main/java/datadog/trace/api/iast/IastDetectionMode.java index 5b5becc4df7..03e6064d186 100644 --- a/internal-api/src/main/java/datadog/trace/api/iast/IastDetectionMode.java +++ b/internal-api/src/main/java/datadog/trace/api/iast/IastDetectionMode.java @@ -11,7 +11,7 @@ import static datadog.trace.api.config.IastConfig.IAST_REQUEST_SAMPLING; import static datadog.trace.api.config.IastConfig.IAST_VULNERABILITIES_PER_REQUEST; -import datadog.trace.bootstrap.config.provider.ConfigProvider; +import datadog.config.ConfigProvider; import javax.annotation.Nonnull; public enum IastDetectionMode { diff --git a/internal-api/src/main/java/datadog/trace/api/iast/telemetry/IastMetricCollector.java b/internal-api/src/main/java/datadog/trace/api/iast/telemetry/IastMetricCollector.java index fd0b0b3f63d..e7299c42d5a 100644 --- a/internal-api/src/main/java/datadog/trace/api/iast/telemetry/IastMetricCollector.java +++ b/internal-api/src/main/java/datadog/trace/api/iast/telemetry/IastMetricCollector.java @@ -2,11 +2,11 @@ import static datadog.trace.api.iast.telemetry.IastMetric.Scope.REQUEST; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.Config; import datadog.trace.api.gateway.RequestContext; import datadog.trace.api.gateway.RequestContextSlot; import datadog.trace.api.iast.telemetry.IastMetric.Tag; -import datadog.trace.api.telemetry.MetricCollector; import datadog.trace.bootstrap.instrumentation.api.AgentSpan; import datadog.trace.bootstrap.instrumentation.api.AgentTracer; import java.util.Collection; diff --git a/internal-api/src/main/java/datadog/trace/api/profiling/ProfilingEnablement.java b/internal-api/src/main/java/datadog/trace/api/profiling/ProfilingEnablement.java index e8c1ff333ea..85e2b3ffa2b 100644 --- a/internal-api/src/main/java/datadog/trace/api/profiling/ProfilingEnablement.java +++ b/internal-api/src/main/java/datadog/trace/api/profiling/ProfilingEnablement.java @@ -1,7 +1,7 @@ package datadog.trace.api.profiling; +import datadog.config.ConfigProvider; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/internal-api/src/main/java/datadog/trace/api/telemetry/CoreMetricCollector.java b/internal-api/src/main/java/datadog/trace/api/telemetry/CoreMetricCollector.java index d33fcf1529d..ec4f60f25e4 100644 --- a/internal-api/src/main/java/datadog/trace/api/telemetry/CoreMetricCollector.java +++ b/internal-api/src/main/java/datadog/trace/api/telemetry/CoreMetricCollector.java @@ -1,5 +1,6 @@ package datadog.trace.api.telemetry; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.metrics.BaggageMetrics; import datadog.trace.api.metrics.CoreCounter; import datadog.trace.api.metrics.SpanMetricRegistryImpl; diff --git a/internal-api/src/main/java/datadog/trace/api/telemetry/WafMetricCollector.java b/internal-api/src/main/java/datadog/trace/api/telemetry/WafMetricCollector.java index 1834ef73da5..59d58fed67a 100644 --- a/internal-api/src/main/java/datadog/trace/api/telemetry/WafMetricCollector.java +++ b/internal-api/src/main/java/datadog/trace/api/telemetry/WafMetricCollector.java @@ -1,5 +1,6 @@ package datadog.trace.api.telemetry; +import datadog.config.telemetry.MetricCollector; import java.util.Collection; import java.util.Collections; import java.util.HashMap; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java index 3254c30db7d..5ae6a5d7a02 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/AgentArgsInjector.java @@ -1,8 +1,9 @@ package datadog.trace.bootstrap.config.provider; +import datadog.config.ConfigConverter; +import datadog.config.util.Strings; import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.util.Strings; import java.util.Map; public class AgentArgsInjector { diff --git a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java index 0942a277dae..d5790564d61 100644 --- a/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java +++ b/internal-api/src/main/java/datadog/trace/util/TempLocationManager.java @@ -2,10 +2,10 @@ import static datadog.trace.api.telemetry.LogCollector.SEND_TELEMETRY; +import datadog.config.ConfigProvider; import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.io.IOException; import java.nio.file.FileSystems; import java.nio.file.FileVisitResult; diff --git a/internal-api/src/main/java/datadog/trace/util/TraceUtils.java b/internal-api/src/main/java/datadog/trace/util/TraceUtils.java index b5c1a1b76a4..39ffc4d54f5 100644 --- a/internal-api/src/main/java/datadog/trace/util/TraceUtils.java +++ b/internal-api/src/main/java/datadog/trace/util/TraceUtils.java @@ -1,6 +1,6 @@ package datadog.trace.util; -import static datadog.trace.util.Strings.truncate; +import static datadog.config.util.Strings.truncate; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/internal-api/src/test/groovy/datadog/trace/api/ConfigCollectorTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/ConfigCollectorTest.groovy index 12a52136eb0..507bfd51ecb 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/ConfigCollectorTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/ConfigCollectorTest.groovy @@ -10,7 +10,7 @@ import datadog.trace.api.config.TracerConfig import datadog.trace.api.iast.telemetry.Verbosity import datadog.trace.api.naming.SpanNaming import datadog.trace.test.util.DDSpecification -import datadog.trace.util.Strings +import Strings import static datadog.trace.api.ConfigDefaults.DEFAULT_IAST_WEAK_HASH_ALGORITHMS import static datadog.trace.api.ConfigDefaults.DEFAULT_TELEMETRY_HEARTBEAT_INTERVAL diff --git a/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy index 9002a257fdf..4a8895a02bc 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy @@ -4,7 +4,7 @@ package datadog.trace.api import datadog.trace.api.env.FixedCapturedEnvironment import datadog.trace.bootstrap.config.provider.AgentArgsInjector import datadog.trace.bootstrap.config.provider.ConfigConverter -import datadog.trace.bootstrap.config.provider.ConfigProvider +import ConfigProvider import datadog.trace.test.util.DDSpecification import datadog.trace.util.throwable.FatalAgentMisconfigurationError import org.junit.Rule diff --git a/internal-api/src/test/groovy/datadog/trace/api/ProcessTagsForkedTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/ProcessTagsForkedTest.groovy index 34d530b3fd8..ac63fe15999 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/ProcessTagsForkedTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/ProcessTagsForkedTest.groovy @@ -1,6 +1,6 @@ package datadog.trace.api -import datadog.trace.api.env.CapturedEnvironment +import CapturedEnvironment import datadog.trace.test.util.DDSpecification import java.nio.file.Paths diff --git a/internal-api/src/test/groovy/datadog/trace/api/git/UserSuppliedGitInfoBuilderTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/git/UserSuppliedGitInfoBuilderTest.groovy index 3d5c886a490..cb4560bb28e 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/git/UserSuppliedGitInfoBuilderTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/git/UserSuppliedGitInfoBuilderTest.groovy @@ -3,7 +3,7 @@ package datadog.trace.api.git import datadog.trace.api.config.GeneralConfig import datadog.trace.bootstrap.instrumentation.api.Tags import datadog.trace.test.util.DDSpecification -import datadog.trace.util.Strings +import Strings class UserSuppliedGitInfoBuilderTest extends DDSpecification { diff --git a/internal-api/src/test/groovy/datadog/trace/api/iast/IastDetectionModeTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/iast/IastDetectionModeTest.groovy index fd5255e1ebc..f9c48e6bd46 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/iast/IastDetectionModeTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/iast/IastDetectionModeTest.groovy @@ -1,7 +1,7 @@ package datadog.trace.api.iast import datadog.trace.api.ConfigDefaults -import datadog.trace.bootstrap.config.provider.ConfigProvider +import ConfigProvider import groovy.transform.CompileDynamic import spock.lang.Specification diff --git a/internal-api/src/test/groovy/datadog/trace/api/telemetry/ConfigInversionMetricCollectorTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/telemetry/ConfigInversionMetricCollectorTest.groovy index 7f63048eb27..5b26f7f229e 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/telemetry/ConfigInversionMetricCollectorTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/telemetry/ConfigInversionMetricCollectorTest.groovy @@ -2,7 +2,7 @@ package datadog.trace.api.telemetry import datadog.trace.test.util.DDSpecification -import static datadog.trace.api.telemetry.ConfigInversionMetricCollector.CONFIG_INVERSION_METRIC_NAME +import static ConfigInversionMetricCollector.CONFIG_INVERSION_METRIC_NAME class ConfigInversionMetricCollectorTest extends DDSpecification { diff --git a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigSourceTest.groovy b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigSourceTest.groovy index b3ec755ddc1..1adc140ba74 100644 --- a/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigSourceTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigSourceTest.groovy @@ -2,10 +2,10 @@ package datadog.trace.bootstrap.config.provider import static java.util.Collections.singletonMap -import datadog.trace.api.ConfigOrigin -import datadog.trace.bootstrap.config.provider.stableconfig.Rule -import datadog.trace.bootstrap.config.provider.stableconfig.Selector -import datadog.trace.bootstrap.config.provider.stableconfig.StableConfig +import ConfigOrigin +import Rule +import Selector +import StableConfig import datadog.trace.test.util.DDSpecification import org.snakeyaml.engine.v2.api.Dump import org.snakeyaml.engine.v2.api.DumpSettings diff --git a/internal-api/src/test/java/datadog/trace/api/profiling/ProfilingEnablementTest.java b/internal-api/src/test/java/datadog/trace/api/profiling/ProfilingEnablementTest.java index 02aef552951..9e5cee08558 100644 --- a/internal-api/src/test/java/datadog/trace/api/profiling/ProfilingEnablementTest.java +++ b/internal-api/src/test/java/datadog/trace/api/profiling/ProfilingEnablementTest.java @@ -2,8 +2,8 @@ import static org.junit.jupiter.api.Assertions.*; +import datadog.config.ConfigProvider; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import java.util.Properties; import java.util.stream.Stream; import org.junit.jupiter.params.ParameterizedTest; diff --git a/internal-api/src/test/java/datadog/trace/util/TempLocationManagerTest.java b/internal-api/src/test/java/datadog/trace/util/TempLocationManagerTest.java index af9580f8981..79915f46c5d 100644 --- a/internal-api/src/test/java/datadog/trace/util/TempLocationManagerTest.java +++ b/internal-api/src/test/java/datadog/trace/util/TempLocationManagerTest.java @@ -6,8 +6,8 @@ import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; +import datadog.config.ConfigProvider; import datadog.trace.api.config.ProfilingConfig; -import datadog.trace.bootstrap.config.provider.ConfigProvider; import datadog.trace.test.util.Flaky; import java.io.IOException; import java.nio.file.FileVisitResult; diff --git a/settings.gradle.kts b/settings.gradle.kts index cb903848780..9cb5c7847c8 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -103,9 +103,7 @@ include( ":communication", ":components:context", ":components:environment", - ":components:generator", ":components:json", - ":components:yaml", ":telemetry", ":remote-config:remote-config-api", ":remote-config:remote-config-core", @@ -137,6 +135,7 @@ include( // misc include( ":dd-java-agent:testing", + ":utils:config-utils", ":utils:container-utils", ":utils:socket-utils", ":utils:test-agent-utils:decoder", @@ -599,3 +598,5 @@ include( ":dd-java-agent:benchmark-integration:jetty-perftest", ":dd-java-agent:benchmark-integration:play-perftest", ) + +include("utils:config-utils") diff --git a/telemetry/src/main/java/datadog/telemetry/TelemetryClient.java b/telemetry/src/main/java/datadog/telemetry/TelemetryClient.java index e06e75ea0b3..4e01cbb9deb 100644 --- a/telemetry/src/main/java/datadog/telemetry/TelemetryClient.java +++ b/telemetry/src/main/java/datadog/telemetry/TelemetryClient.java @@ -2,8 +2,8 @@ import datadog.communication.http.HttpRetryPolicy; import datadog.communication.http.OkHttpUtils; +import datadog.config.util.Strings; import datadog.trace.api.Config; -import datadog.trace.util.Strings; import java.io.IOException; import java.io.InterruptedIOException; import java.util.concurrent.TimeUnit; diff --git a/telemetry/src/main/java/datadog/telemetry/metric/CiVisibilityMetricPeriodicAction.java b/telemetry/src/main/java/datadog/telemetry/metric/CiVisibilityMetricPeriodicAction.java index 2638f609d83..b2b8576b3cc 100644 --- a/telemetry/src/main/java/datadog/telemetry/metric/CiVisibilityMetricPeriodicAction.java +++ b/telemetry/src/main/java/datadog/telemetry/metric/CiVisibilityMetricPeriodicAction.java @@ -1,7 +1,7 @@ package datadog.telemetry.metric; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.civisibility.InstrumentationBridge; -import datadog.trace.api.telemetry.MetricCollector; import edu.umd.cs.findbugs.annotations.NonNull; public class CiVisibilityMetricPeriodicAction extends MetricPeriodicAction { diff --git a/telemetry/src/main/java/datadog/telemetry/metric/ConfigInversionMetricPeriodicAction.java b/telemetry/src/main/java/datadog/telemetry/metric/ConfigInversionMetricPeriodicAction.java index e7eb7dfab48..a9bf808d60e 100644 --- a/telemetry/src/main/java/datadog/telemetry/metric/ConfigInversionMetricPeriodicAction.java +++ b/telemetry/src/main/java/datadog/telemetry/metric/ConfigInversionMetricPeriodicAction.java @@ -1,7 +1,7 @@ package datadog.telemetry.metric; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.telemetry.ConfigInversionMetricCollector; -import datadog.trace.api.telemetry.MetricCollector; import edu.umd.cs.findbugs.annotations.NonNull; public class ConfigInversionMetricPeriodicAction extends MetricPeriodicAction { diff --git a/telemetry/src/main/java/datadog/telemetry/metric/CoreMetricsPeriodicAction.java b/telemetry/src/main/java/datadog/telemetry/metric/CoreMetricsPeriodicAction.java index 83ee04c661c..73092329d50 100644 --- a/telemetry/src/main/java/datadog/telemetry/metric/CoreMetricsPeriodicAction.java +++ b/telemetry/src/main/java/datadog/telemetry/metric/CoreMetricsPeriodicAction.java @@ -1,7 +1,7 @@ package datadog.telemetry.metric; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.telemetry.CoreMetricCollector; -import datadog.trace.api.telemetry.MetricCollector; import edu.umd.cs.findbugs.annotations.NonNull; public class CoreMetricsPeriodicAction extends MetricPeriodicAction { diff --git a/telemetry/src/main/java/datadog/telemetry/metric/IastMetricPeriodicAction.java b/telemetry/src/main/java/datadog/telemetry/metric/IastMetricPeriodicAction.java index f45889a753c..b6d3b739db0 100644 --- a/telemetry/src/main/java/datadog/telemetry/metric/IastMetricPeriodicAction.java +++ b/telemetry/src/main/java/datadog/telemetry/metric/IastMetricPeriodicAction.java @@ -1,7 +1,7 @@ package datadog.telemetry.metric; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.iast.telemetry.IastMetricCollector; -import datadog.trace.api.telemetry.MetricCollector; import edu.umd.cs.findbugs.annotations.NonNull; public class IastMetricPeriodicAction extends MetricPeriodicAction { diff --git a/telemetry/src/main/java/datadog/telemetry/metric/MetricPeriodicAction.java b/telemetry/src/main/java/datadog/telemetry/metric/MetricPeriodicAction.java index c3088907a00..8b801f2f474 100644 --- a/telemetry/src/main/java/datadog/telemetry/metric/MetricPeriodicAction.java +++ b/telemetry/src/main/java/datadog/telemetry/metric/MetricPeriodicAction.java @@ -1,10 +1,10 @@ package datadog.telemetry.metric; +import datadog.config.telemetry.MetricCollector; import datadog.telemetry.TelemetryRunnable; import datadog.telemetry.TelemetryService; import datadog.telemetry.api.DistributionSeries; import datadog.telemetry.api.Metric; -import datadog.trace.api.telemetry.MetricCollector; import edu.umd.cs.findbugs.annotations.NonNull; import java.util.ArrayList; import java.util.Collection; diff --git a/telemetry/src/main/java/datadog/telemetry/metric/OtelEnvMetricPeriodicAction.java b/telemetry/src/main/java/datadog/telemetry/metric/OtelEnvMetricPeriodicAction.java index c63bd5b33ae..3e3470d4732 100644 --- a/telemetry/src/main/java/datadog/telemetry/metric/OtelEnvMetricPeriodicAction.java +++ b/telemetry/src/main/java/datadog/telemetry/metric/OtelEnvMetricPeriodicAction.java @@ -1,6 +1,6 @@ package datadog.telemetry.metric; -import datadog.trace.api.telemetry.MetricCollector; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.telemetry.OtelEnvMetricCollector; import edu.umd.cs.findbugs.annotations.NonNull; diff --git a/telemetry/src/main/java/datadog/telemetry/metric/WafMetricPeriodicAction.java b/telemetry/src/main/java/datadog/telemetry/metric/WafMetricPeriodicAction.java index 6f3d10ba794..d5e2a9deeae 100644 --- a/telemetry/src/main/java/datadog/telemetry/metric/WafMetricPeriodicAction.java +++ b/telemetry/src/main/java/datadog/telemetry/metric/WafMetricPeriodicAction.java @@ -1,6 +1,6 @@ package datadog.telemetry.metric; -import datadog.trace.api.telemetry.MetricCollector; +import datadog.config.telemetry.MetricCollector; import datadog.trace.api.telemetry.WafMetricCollector; import edu.umd.cs.findbugs.annotations.NonNull; diff --git a/telemetry/src/test/groovy/datadog/telemetry/BufferedEventsSpecification.groovy b/telemetry/src/test/groovy/datadog/telemetry/BufferedEventsSpecification.groovy index 4dcd8cd50b1..dfdf2ac4cda 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/BufferedEventsSpecification.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/BufferedEventsSpecification.groovy @@ -5,8 +5,8 @@ import datadog.telemetry.api.Integration import datadog.telemetry.api.LogMessage import datadog.telemetry.api.Metric import datadog.telemetry.dependency.Dependency -import datadog.trace.api.ConfigOrigin -import datadog.trace.api.ConfigSetting +import ConfigOrigin +import ConfigSetting import datadog.trace.api.telemetry.Endpoint import datadog.trace.test.util.DDSpecification diff --git a/telemetry/src/test/groovy/datadog/telemetry/EventSourceTest.groovy b/telemetry/src/test/groovy/datadog/telemetry/EventSourceTest.groovy index 5a492c18171..330668b45ea 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/EventSourceTest.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/EventSourceTest.groovy @@ -5,8 +5,8 @@ import datadog.telemetry.api.Integration import datadog.telemetry.api.LogMessage import datadog.telemetry.api.Metric import datadog.telemetry.dependency.Dependency -import datadog.trace.api.ConfigOrigin -import datadog.trace.api.ConfigSetting +import ConfigOrigin +import ConfigSetting import datadog.trace.api.telemetry.Endpoint import datadog.trace.api.telemetry.ProductChange import datadog.trace.test.util.DDSpecification diff --git a/telemetry/src/test/groovy/datadog/telemetry/ExtendedHeartbeatDataSpecification.groovy b/telemetry/src/test/groovy/datadog/telemetry/ExtendedHeartbeatDataSpecification.groovy index 98d83c7572f..7c03b5f60c4 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/ExtendedHeartbeatDataSpecification.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/ExtendedHeartbeatDataSpecification.groovy @@ -2,8 +2,8 @@ package datadog.telemetry import datadog.telemetry.api.Integration import datadog.telemetry.dependency.Dependency -import datadog.trace.api.ConfigOrigin -import datadog.trace.api.ConfigSetting +import ConfigOrigin +import ConfigSetting import spock.lang.Specification class ExtendedHeartbeatDataSpecification extends Specification { diff --git a/telemetry/src/test/groovy/datadog/telemetry/TelemetryRequestBodySpecification.groovy b/telemetry/src/test/groovy/datadog/telemetry/TelemetryRequestBodySpecification.groovy index d0f7832da20..53b15beeddf 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/TelemetryRequestBodySpecification.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/TelemetryRequestBodySpecification.groovy @@ -4,8 +4,8 @@ package datadog.telemetry import com.squareup.moshi.Moshi import com.squareup.moshi.Types import datadog.telemetry.api.RequestType -import datadog.trace.api.ConfigOrigin -import datadog.trace.api.ConfigSetting +import ConfigOrigin +import ConfigSetting import datadog.trace.api.ProcessTags import datadog.trace.api.telemetry.ProductChange import datadog.trace.test.util.DDSpecification diff --git a/telemetry/src/test/groovy/datadog/telemetry/TelemetryRunnableSpecification.groovy b/telemetry/src/test/groovy/datadog/telemetry/TelemetryRunnableSpecification.groovy index 6ddebef3782..d47de45dabe 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/TelemetryRunnableSpecification.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/TelemetryRunnableSpecification.groovy @@ -2,10 +2,10 @@ package datadog.telemetry import datadog.telemetry.metric.MetricPeriodicAction import datadog.trace.api.config.GeneralConfig -import datadog.trace.api.telemetry.MetricCollector +import MetricCollector import datadog.trace.api.time.TimeSource import datadog.trace.test.util.DDSpecification -import datadog.trace.util.Strings +import Strings import java.util.concurrent.CyclicBarrier import java.util.concurrent.TimeUnit diff --git a/telemetry/src/test/groovy/datadog/telemetry/TelemetryServiceSpecification.groovy b/telemetry/src/test/groovy/datadog/telemetry/TelemetryServiceSpecification.groovy index a1248729cf3..18022537ce6 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/TelemetryServiceSpecification.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/TelemetryServiceSpecification.groovy @@ -7,15 +7,15 @@ import datadog.telemetry.api.LogMessage import datadog.telemetry.api.LogMessageLevel import datadog.telemetry.api.Metric import datadog.telemetry.api.RequestType -import datadog.trace.api.ConfigOrigin -import datadog.trace.api.ConfigSetting +import ConfigOrigin +import ConfigSetting import datadog.trace.api.config.AppSecConfig import datadog.trace.api.config.DebuggerConfig import datadog.trace.api.config.ProfilingConfig import datadog.trace.api.telemetry.Endpoint import datadog.trace.api.telemetry.ProductChange import datadog.trace.test.util.DDSpecification -import datadog.trace.util.Strings +import Strings class TelemetryServiceSpecification extends DDSpecification { def confKeyValue = ConfigSetting.of("confkey", "confvalue", ConfigOrigin.DEFAULT) diff --git a/telemetry/src/test/groovy/datadog/telemetry/TelemetrySystemSpecification.groovy b/telemetry/src/test/groovy/datadog/telemetry/TelemetrySystemSpecification.groovy index f92b4e836a3..ae719ae4040 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/TelemetrySystemSpecification.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/TelemetrySystemSpecification.groovy @@ -7,7 +7,7 @@ import datadog.telemetry.dependency.DependencyService import datadog.telemetry.dependency.LocationsCollectingTransformer import datadog.trace.api.config.GeneralConfig import datadog.trace.test.util.DDSpecification -import datadog.trace.util.Strings +import Strings import okhttp3.HttpUrl import okhttp3.OkHttpClient import java.lang.instrument.Instrumentation diff --git a/telemetry/src/test/groovy/datadog/telemetry/TestTelemetryRouter.groovy b/telemetry/src/test/groovy/datadog/telemetry/TestTelemetryRouter.groovy index d1b29549bf1..a1962714ebf 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/TestTelemetryRouter.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/TestTelemetryRouter.groovy @@ -7,7 +7,7 @@ import datadog.telemetry.api.DistributionSeries import datadog.telemetry.api.LogMessage import datadog.telemetry.api.Metric import datadog.telemetry.api.RequestType -import datadog.trace.api.ConfigSetting +import ConfigSetting import datadog.trace.api.telemetry.Endpoint import datadog.trace.api.telemetry.ProductChange import groovy.json.JsonSlurper diff --git a/telemetry/src/test/groovy/datadog/telemetry/metric/MetricPeriodicActionTest.groovy b/telemetry/src/test/groovy/datadog/telemetry/metric/MetricPeriodicActionTest.groovy index 0bc65695f55..99d50fdaa06 100644 --- a/telemetry/src/test/groovy/datadog/telemetry/metric/MetricPeriodicActionTest.groovy +++ b/telemetry/src/test/groovy/datadog/telemetry/metric/MetricPeriodicActionTest.groovy @@ -4,7 +4,7 @@ package datadog.telemetry.metric import datadog.telemetry.TelemetryService import datadog.telemetry.api.DistributionSeries import datadog.telemetry.api.Metric -import datadog.trace.api.telemetry.MetricCollector +import MetricCollector import edu.umd.cs.findbugs.annotations.NonNull import groovy.transform.NamedDelegate import groovy.transform.NamedVariant diff --git a/components/generator/build.gradle.kts b/utils/config-utils/build.gradle.kts similarity index 91% rename from components/generator/build.gradle.kts rename to utils/config-utils/build.gradle.kts index ee8ee90069e..7fb136e4b17 100644 --- a/components/generator/build.gradle.kts +++ b/utils/config-utils/build.gradle.kts @@ -1,6 +1,5 @@ plugins { `java-library` - id("com.gradleup.shadow") } sourceSets { @@ -17,7 +16,9 @@ sourceSets { dependencies { "generatorImplementation"("com.fasterxml.jackson.core:jackson-databind:2.15.2") "generatorImplementation"("org.slf4j:slf4j-api:1.7.36") + implementation(project(":components:environment")) implementation(project(":dd-trace-api")) + implementation("org.snakeyaml", "snakeyaml-engine", "2.9") } apply(from = "$rootDir/gradle/java.gradle") diff --git a/components/generator/src/generator/java/datadog/generator/ParseSupportedConfigurations.java b/utils/config-utils/src/generator/java/datadog/generator/ParseSupportedConfigurations.java similarity index 100% rename from components/generator/src/generator/java/datadog/generator/ParseSupportedConfigurations.java rename to utils/config-utils/src/generator/java/datadog/generator/ParseSupportedConfigurations.java diff --git a/components/generator/src/generator/resources/supported-configurations.json b/utils/config-utils/src/generator/resources/supported-configurations.json similarity index 100% rename from components/generator/src/generator/resources/supported-configurations.json rename to utils/config-utils/src/generator/resources/supported-configurations.json diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/CapturedEnvironmentConfigSource.java b/utils/config-utils/src/main/java/datadog/config/CapturedEnvironmentConfigSource.java similarity index 77% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/CapturedEnvironmentConfigSource.java rename to utils/config-utils/src/main/java/datadog/config/CapturedEnvironmentConfigSource.java index 56bfb0ad547..f2443101793 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/CapturedEnvironmentConfigSource.java +++ b/utils/config-utils/src/main/java/datadog/config/CapturedEnvironmentConfigSource.java @@ -1,7 +1,6 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; -import datadog.trace.api.ConfigOrigin; -import datadog.trace.api.env.CapturedEnvironment; +import datadog.config.env.CapturedEnvironment; public final class CapturedEnvironmentConfigSource extends ConfigProvider.Source { private final CapturedEnvironment env; diff --git a/internal-api/src/main/java/datadog/trace/api/ConfigCollector.java b/utils/config-utils/src/main/java/datadog/config/ConfigCollector.java similarity index 98% rename from internal-api/src/main/java/datadog/trace/api/ConfigCollector.java rename to utils/config-utils/src/main/java/datadog/config/ConfigCollector.java index f4cfda6877b..3a4b83f2593 100644 --- a/internal-api/src/main/java/datadog/trace/api/ConfigCollector.java +++ b/utils/config-utils/src/main/java/datadog/config/ConfigCollector.java @@ -1,4 +1,4 @@ -package datadog.trace.api; +package datadog.config; import java.util.Collections; import java.util.Map; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigConverter.java b/utils/config-utils/src/main/java/datadog/config/ConfigConverter.java similarity index 99% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigConverter.java rename to utils/config-utils/src/main/java/datadog/config/ConfigConverter.java index b081b704369..afec2757a71 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigConverter.java +++ b/utils/config-utils/src/main/java/datadog/config/ConfigConverter.java @@ -1,6 +1,6 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; -import datadog.trace.util.Strings; +import datadog.config.util.Strings; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; diff --git a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java b/utils/config-utils/src/main/java/datadog/config/ConfigHelper.java similarity index 96% rename from internal-api/src/main/java/datadog/trace/api/ConfigHelper.java rename to utils/config-utils/src/main/java/datadog/config/ConfigHelper.java index e52abbf813e..665b4a6e59e 100644 --- a/internal-api/src/main/java/datadog/trace/api/ConfigHelper.java +++ b/utils/config-utils/src/main/java/datadog/config/ConfigHelper.java @@ -1,13 +1,11 @@ -package datadog.trace.api; +package datadog.config; +import datadog.config.telemetry.ConfigInversionMetricCollector; import datadog.environment.EnvironmentVariables; -import datadog.trace.api.telemetry.ConfigInversionMetricCollector; -import de.thetaphi.forbiddenapis.SuppressForbidden; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -@SuppressForbidden public class ConfigHelper { private static ConfigInversionStrictStyle configInversionStrict; diff --git a/dd-trace-api/src/main/java/datadog/trace/api/ConfigInversionStrictStyle.java b/utils/config-utils/src/main/java/datadog/config/ConfigInversionStrictStyle.java similarity index 94% rename from dd-trace-api/src/main/java/datadog/trace/api/ConfigInversionStrictStyle.java rename to utils/config-utils/src/main/java/datadog/config/ConfigInversionStrictStyle.java index 243f5fbbbdf..8ed7def27c3 100644 --- a/dd-trace-api/src/main/java/datadog/trace/api/ConfigInversionStrictStyle.java +++ b/utils/config-utils/src/main/java/datadog/config/ConfigInversionStrictStyle.java @@ -1,4 +1,4 @@ -package datadog.trace.api; +package datadog.config; import java.util.Locale; diff --git a/internal-api/src/main/java/datadog/trace/api/ConfigOrigin.java b/utils/config-utils/src/main/java/datadog/config/ConfigOrigin.java similarity index 97% rename from internal-api/src/main/java/datadog/trace/api/ConfigOrigin.java rename to utils/config-utils/src/main/java/datadog/config/ConfigOrigin.java index 935f410ebe1..5fe07103fb6 100644 --- a/internal-api/src/main/java/datadog/trace/api/ConfigOrigin.java +++ b/utils/config-utils/src/main/java/datadog/config/ConfigOrigin.java @@ -1,4 +1,4 @@ -package datadog.trace.api; +package datadog.config; // https://github.com/DataDog/instrumentation-telemetry-api-docs/blob/main/ // GeneratedDocumentation/ApiDocs/v2/SchemaDocumentation/Schemas/conf_key_value.md diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java b/utils/config-utils/src/main/java/datadog/config/ConfigProvider.java similarity index 97% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java rename to utils/config-utils/src/main/java/datadog/config/ConfigProvider.java index c2a9dc2d90a..5152a767077 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/ConfigProvider.java +++ b/utils/config-utils/src/main/java/datadog/config/ConfigProvider.java @@ -1,13 +1,9 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; -import static datadog.trace.api.config.GeneralConfig.CONFIGURATION_FILE; import static datadog.trace.api.config.GeneralConfig.CONFIG_INVERSION_STRICT; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigCollector; -import datadog.trace.api.ConfigHelper; -import datadog.trace.api.ConfigInversionStrictStyle; -import datadog.trace.api.ConfigOrigin; +import datadog.trace.api.config.GeneralConfig; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.File; import java.io.FileNotFoundException; @@ -382,7 +378,7 @@ public static ConfigProvider createDefault() { ConfigHelper.setConfigInversionStrict( minimalProvider.getEnum( - CONFIG_INVERSION_STRICT, + GeneralConfig.CONFIG_INVERSION_STRICT, ConfigInversionStrictStyle.class, ConfigInversionStrictStyle.WARNING)); @@ -450,7 +446,7 @@ public static ConfigProvider withPropertiesOverride(Properties properties) { ConfigHelper.setConfigInversionStrict( minimalProvider.getEnum( - CONFIG_INVERSION_STRICT, + GeneralConfig.CONFIG_INVERSION_STRICT, ConfigInversionStrictStyle.class, ConfigInversionStrictStyle.WARNING)); @@ -489,7 +485,7 @@ private static Properties loadConfigurationFile(ConfigProvider configProvider) { final Properties properties = new Properties(); // Reading from system property first and from env after - String configurationFilePath = configProvider.getString(CONFIGURATION_FILE); + String configurationFilePath = configProvider.getString(GeneralConfig.CONFIGURATION_FILE); if (null == configurationFilePath) { return properties; } diff --git a/internal-api/src/main/java/datadog/trace/api/ConfigSetting.java b/utils/config-utils/src/main/java/datadog/config/ConfigSetting.java similarity index 99% rename from internal-api/src/main/java/datadog/trace/api/ConfigSetting.java rename to utils/config-utils/src/main/java/datadog/config/ConfigSetting.java index b688d5b477d..58162a73a25 100644 --- a/internal-api/src/main/java/datadog/trace/api/ConfigSetting.java +++ b/utils/config-utils/src/main/java/datadog/config/ConfigSetting.java @@ -1,4 +1,4 @@ -package datadog.trace.api; +package datadog.config; import java.util.Arrays; import java.util.BitSet; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java b/utils/config-utils/src/main/java/datadog/config/EnvironmentConfigSource.java similarity index 59% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java rename to utils/config-utils/src/main/java/datadog/config/EnvironmentConfigSource.java index c8531f6a094..7b56a86b898 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/EnvironmentConfigSource.java +++ b/utils/config-utils/src/main/java/datadog/config/EnvironmentConfigSource.java @@ -1,10 +1,9 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; -import static datadog.trace.api.ConfigOrigin.ENV; -import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; +import static datadog.config.ConfigOrigin.ENV; +import static datadog.config.util.Strings.propertyNameToEnvironmentVariableName; import datadog.environment.EnvironmentVariables; -import datadog.trace.api.ConfigOrigin; final class EnvironmentConfigSource extends ConfigProvider.Source { @Override diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java b/utils/config-utils/src/main/java/datadog/config/OtelEnvironmentConfigSource.java similarity index 78% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java rename to utils/config-utils/src/main/java/datadog/config/OtelEnvironmentConfigSource.java index 863a59fdcf8..4a102271d5b 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/OtelEnvironmentConfigSource.java +++ b/utils/config-utils/src/main/java/datadog/config/OtelEnvironmentConfigSource.java @@ -1,27 +1,16 @@ -package datadog.trace.bootstrap.config.provider; - -import static datadog.trace.api.ConfigDefaults.DEFAULT_TRACE_OTEL_ENABLED; -import static datadog.trace.api.config.GeneralConfig.ENV; -import static datadog.trace.api.config.GeneralConfig.LOG_LEVEL; -import static datadog.trace.api.config.GeneralConfig.RUNTIME_METRICS_ENABLED; -import static datadog.trace.api.config.GeneralConfig.SERVICE_NAME; -import static datadog.trace.api.config.GeneralConfig.TAGS; -import static datadog.trace.api.config.GeneralConfig.VERSION; -import static datadog.trace.api.config.TraceInstrumentationConfig.TRACE_ENABLED; -import static datadog.trace.api.config.TraceInstrumentationConfig.TRACE_EXTENSIONS_PATH; -import static datadog.trace.api.config.TraceInstrumentationConfig.TRACE_OTEL_ENABLED; -import static datadog.trace.api.config.TracerConfig.REQUEST_HEADER_TAGS; -import static datadog.trace.api.config.TracerConfig.RESPONSE_HEADER_TAGS; -import static datadog.trace.api.config.TracerConfig.TRACE_PROPAGATION_STYLE; -import static datadog.trace.api.config.TracerConfig.TRACE_SAMPLE_RATE; -import static datadog.trace.util.Strings.toEnvVar; +package datadog.config; +import static datadog.config.util.Strings.toEnvVar; + +import datadog.config.telemetry.OtelEnvMetricCollector; +import datadog.config.util.Strings; import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigOrigin; +import datadog.trace.api.ConfigDefaults; import datadog.trace.api.TracePropagationStyle; -import datadog.trace.api.telemetry.OtelEnvMetricCollector; -import datadog.trace.util.Strings; +import datadog.trace.api.config.GeneralConfig; +import datadog.trace.api.config.TraceInstrumentationConfig; +import datadog.trace.api.config.TracerConfig; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; @@ -84,50 +73,60 @@ public ConfigOrigin origin() { private void setupOteEnvironment() { // only applies when OTEL is enabled by default (otherwise TRACE_OTEL_ENABLED takes precedence) - String sdkDisabled = getOtelProperty("otel.sdk.disabled", "dd." + TRACE_OTEL_ENABLED); + String sdkDisabled = + getOtelProperty("otel.sdk.disabled", "dd." + TraceInstrumentationConfig.TRACE_OTEL_ENABLED); if ("true".equalsIgnoreCase(sdkDisabled)) { - capture(TRACE_OTEL_ENABLED, "false"); + capture(TraceInstrumentationConfig.TRACE_OTEL_ENABLED, "false"); return; } - String serviceName = getOtelProperty("otel.service.name", "dd." + SERVICE_NAME); - String logLevel = getOtelProperty("otel.log.level", "dd." + LOG_LEVEL); - String propagators = getOtelProperty("otel.propagators", "dd." + TRACE_PROPAGATION_STYLE); - String tracesSampler = getOtelProperty("otel.traces.sampler", "dd." + TRACE_SAMPLE_RATE); - String resourceAttributes = getOtelProperty("otel.resource.attributes", "dd." + TAGS); - String requestHeaders = getOtelHeaders("request-headers", "dd." + REQUEST_HEADER_TAGS); - String responseHeaders = getOtelHeaders("response-headers", "dd." + RESPONSE_HEADER_TAGS); - String extensions = getOtelProperty("otel.javaagent.extensions", "dd." + TRACE_EXTENSIONS_PATH); + String serviceName = getOtelProperty("otel.service.name", "dd." + GeneralConfig.SERVICE_NAME); + String logLevel = getOtelProperty("otel.log.level", "dd." + GeneralConfig.LOG_LEVEL); + String propagators = + getOtelProperty("otel.propagators", "dd." + TracerConfig.TRACE_PROPAGATION_STYLE); + String tracesSampler = + getOtelProperty("otel.traces.sampler", "dd." + TracerConfig.TRACE_SAMPLE_RATE); + String resourceAttributes = + getOtelProperty("otel.resource.attributes", "dd." + GeneralConfig.TAGS); + String requestHeaders = + getOtelHeaders("request-headers", "dd." + TracerConfig.REQUEST_HEADER_TAGS); + String responseHeaders = + getOtelHeaders("response-headers", "dd." + TracerConfig.RESPONSE_HEADER_TAGS); + String extensions = + getOtelProperty( + "otel.javaagent.extensions", "dd." + TraceInstrumentationConfig.TRACE_EXTENSIONS_PATH); if (null != resourceAttributes) { Map attributeMap = parseOtelMap(resourceAttributes); - capture(SERVICE_NAME, attributeMap.remove("service.name")); - capture(VERSION, attributeMap.remove("service.version")); - capture(ENV, attributeMap.remove("deployment.environment")); - capture(TAGS, renderDatadogMap(attributeMap, 10)); + capture(GeneralConfig.SERVICE_NAME, attributeMap.remove("service.name")); + capture(GeneralConfig.VERSION, attributeMap.remove("service.version")); + capture(GeneralConfig.ENV, attributeMap.remove("deployment.environment")); + capture(GeneralConfig.TAGS, renderDatadogMap(attributeMap, 10)); } - capture(LOG_LEVEL, logLevel); - capture(SERVICE_NAME, serviceName); - capture(TRACE_PROPAGATION_STYLE, mapPropagationStyle(propagators)); - capture(TRACE_SAMPLE_RATE, mapSampleRate(tracesSampler)); + capture(GeneralConfig.LOG_LEVEL, logLevel); + capture(GeneralConfig.SERVICE_NAME, serviceName); + capture(TracerConfig.TRACE_PROPAGATION_STYLE, mapPropagationStyle(propagators)); + capture(TracerConfig.TRACE_SAMPLE_RATE, mapSampleRate(tracesSampler)); - capture(TRACE_ENABLED, mapDataCollection("traces")); - capture(RUNTIME_METRICS_ENABLED, mapDataCollection("metrics")); + capture(TraceInstrumentationConfig.TRACE_ENABLED, mapDataCollection("traces")); + capture(GeneralConfig.RUNTIME_METRICS_ENABLED, mapDataCollection("metrics")); mapDataCollection("logs"); // check setting, but no need to capture it - capture(REQUEST_HEADER_TAGS, mapHeaderTags("http.request.header.", requestHeaders)); - capture(RESPONSE_HEADER_TAGS, mapHeaderTags("http.response.header.", responseHeaders)); + capture( + TracerConfig.REQUEST_HEADER_TAGS, mapHeaderTags("http.request.header.", requestHeaders)); + capture( + TracerConfig.RESPONSE_HEADER_TAGS, mapHeaderTags("http.response.header.", responseHeaders)); - capture(TRACE_EXTENSIONS_PATH, extensions); + capture(TraceInstrumentationConfig.TRACE_EXTENSIONS_PATH, extensions); } private boolean traceOtelEnabled() { - String enabled = getDatadogProperty("dd." + TRACE_OTEL_ENABLED); + String enabled = getDatadogProperty("dd." + TraceInstrumentationConfig.TRACE_OTEL_ENABLED); if (null != enabled) { return Boolean.parseBoolean(enabled); } else { - return DEFAULT_TRACE_OTEL_ENABLED; + return ConfigDefaults.DEFAULT_TRACE_OTEL_ENABLED; } } diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/PropertiesConfigSource.java b/utils/config-utils/src/main/java/datadog/config/PropertiesConfigSource.java similarity index 84% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/PropertiesConfigSource.java rename to utils/config-utils/src/main/java/datadog/config/PropertiesConfigSource.java index a3391a54ef6..3b3f9e83881 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/PropertiesConfigSource.java +++ b/utils/config-utils/src/main/java/datadog/config/PropertiesConfigSource.java @@ -1,8 +1,7 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; -import static datadog.trace.util.Strings.propertyNameToSystemPropertyName; +import static datadog.config.util.Strings.propertyNameToSystemPropertyName; -import datadog.trace.api.ConfigOrigin; import java.util.Properties; final class PropertiesConfigSource extends ConfigProvider.Source { diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java b/utils/config-utils/src/main/java/datadog/config/StableConfigParser.java similarity index 95% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java rename to utils/config-utils/src/main/java/datadog/config/StableConfigParser.java index d129c1c665e..e40a6d346bd 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java +++ b/utils/config-utils/src/main/java/datadog/config/StableConfigParser.java @@ -1,10 +1,10 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; +import datadog.config.stableconfig.Rule; +import datadog.config.stableconfig.Selector; +import datadog.config.stableconfig.StableConfig; +import datadog.environment.EnvironmentVariables; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigHelper; -import datadog.trace.bootstrap.config.provider.stableconfig.Rule; -import datadog.trace.bootstrap.config.provider.stableconfig.Selector; -import datadog.trace.bootstrap.config.provider.stableconfig.StableConfig; import datadog.yaml.YamlParser; import java.io.IOException; import java.nio.charset.StandardCharsets; @@ -155,7 +155,7 @@ static boolean selectorMatch(String origin, List matches, String operato if (key == null) { return false; } - String envValue = ConfigHelper.getEnvironmentVariable(key.toUpperCase(Locale.ROOT)); + String envValue = EnvironmentVariables.get(key.toUpperCase(Locale.ROOT)); return matchOperator(envValue, operator, matches); case "process_arguments": if (key == null) { @@ -231,7 +231,7 @@ private static String processTemplateVar(String templateVar) throws IOException if (envVar.isEmpty()) { throw new IOException("Empty environment variable name in template"); } - String value = ConfigHelper.getEnvironmentVariable(envVar.toUpperCase(Locale.ROOT)); + String value = EnvironmentVariables.get(envVar.toUpperCase(Locale.ROOT)); if (value == null || value.isEmpty()) { return UNDEFINED_VALUE; } diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigSource.java b/utils/config-utils/src/main/java/datadog/config/StableConfigSource.java similarity index 94% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigSource.java rename to utils/config-utils/src/main/java/datadog/config/StableConfigSource.java index ab634b6fc14..870876e8522 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigSource.java +++ b/utils/config-utils/src/main/java/datadog/config/StableConfigSource.java @@ -1,8 +1,7 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; -import static datadog.trace.util.Strings.propertyNameToEnvironmentVariableName; +import static datadog.config.util.Strings.propertyNameToEnvironmentVariableName; -import datadog.trace.api.ConfigOrigin; import java.io.File; import java.util.Collections; import java.util.Map; diff --git a/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java similarity index 97% rename from internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java rename to utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java index c05e99e43a4..e9dc655d7af 100644 --- a/internal-api/src/main/java/datadog/trace/api/SupportedConfigurationSource.java +++ b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java @@ -1,4 +1,4 @@ -package datadog.trace.api; +package datadog.config; import datadog.generator.GeneratedSupportedConfigurations; import java.util.List; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/SystemPropertiesConfigSource.java b/utils/config-utils/src/main/java/datadog/config/SystemPropertiesConfigSource.java similarity index 59% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/SystemPropertiesConfigSource.java rename to utils/config-utils/src/main/java/datadog/config/SystemPropertiesConfigSource.java index 0ad6e15fa6d..07e12d270af 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/SystemPropertiesConfigSource.java +++ b/utils/config-utils/src/main/java/datadog/config/SystemPropertiesConfigSource.java @@ -1,10 +1,9 @@ -package datadog.trace.bootstrap.config.provider; +package datadog.config; -import static datadog.trace.api.ConfigOrigin.JVM_PROP; -import static datadog.trace.util.Strings.propertyNameToSystemPropertyName; +import static datadog.config.ConfigOrigin.JVM_PROP; +import static datadog.config.util.Strings.propertyNameToSystemPropertyName; import datadog.environment.SystemProperties; -import datadog.trace.api.ConfigOrigin; public final class SystemPropertiesConfigSource extends ConfigProvider.Source { @Override diff --git a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java b/utils/config-utils/src/main/java/datadog/config/env/CapturedEnvironment.java similarity index 98% rename from internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java rename to utils/config-utils/src/main/java/datadog/config/env/CapturedEnvironment.java index 956db28c2de..0be0659877d 100644 --- a/internal-api/src/main/java/datadog/trace/api/env/CapturedEnvironment.java +++ b/utils/config-utils/src/main/java/datadog/config/env/CapturedEnvironment.java @@ -1,4 +1,4 @@ -package datadog.trace.api.env; +package datadog.config.env; import datadog.environment.EnvironmentVariables; import datadog.environment.JavaVirtualMachine; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Rule.java b/utils/config-utils/src/main/java/datadog/config/stableconfig/Rule.java similarity index 94% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Rule.java rename to utils/config-utils/src/main/java/datadog/config/stableconfig/Rule.java index 2d464b41ed1..56335411abe 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Rule.java +++ b/utils/config-utils/src/main/java/datadog/config/stableconfig/Rule.java @@ -1,4 +1,4 @@ -package datadog.trace.bootstrap.config.provider.stableconfig; +package datadog.config.stableconfig; import static java.util.Collections.*; import static java.util.stream.Collectors.toList; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Selector.java b/utils/config-utils/src/main/java/datadog/config/stableconfig/Selector.java similarity index 94% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Selector.java rename to utils/config-utils/src/main/java/datadog/config/stableconfig/Selector.java index ac611751fa5..391a1731897 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Selector.java +++ b/utils/config-utils/src/main/java/datadog/config/stableconfig/Selector.java @@ -1,4 +1,4 @@ -package datadog.trace.bootstrap.config.provider.stableconfig; +package datadog.config.stableconfig; import java.util.Collections; import java.util.List; diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/StableConfig.java b/utils/config-utils/src/main/java/datadog/config/stableconfig/StableConfig.java similarity index 96% rename from internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/StableConfig.java rename to utils/config-utils/src/main/java/datadog/config/stableconfig/StableConfig.java index 58fa3c4f826..200767139b5 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/StableConfig.java +++ b/utils/config-utils/src/main/java/datadog/config/stableconfig/StableConfig.java @@ -1,4 +1,4 @@ -package datadog.trace.bootstrap.config.provider.stableconfig; +package datadog.config.stableconfig; import static java.util.Collections.emptyList; import static java.util.Collections.emptyMap; diff --git a/internal-api/src/main/java/datadog/trace/api/telemetry/ConfigInversionMetricCollector.java b/utils/config-utils/src/main/java/datadog/config/telemetry/ConfigInversionMetricCollector.java similarity index 98% rename from internal-api/src/main/java/datadog/trace/api/telemetry/ConfigInversionMetricCollector.java rename to utils/config-utils/src/main/java/datadog/config/telemetry/ConfigInversionMetricCollector.java index cdd781c78d6..5148490f714 100644 --- a/internal-api/src/main/java/datadog/trace/api/telemetry/ConfigInversionMetricCollector.java +++ b/utils/config-utils/src/main/java/datadog/config/telemetry/ConfigInversionMetricCollector.java @@ -1,4 +1,4 @@ -package datadog.trace.api.telemetry; +package datadog.config.telemetry; import java.util.ArrayList; import java.util.Collection; diff --git a/internal-api/src/main/java/datadog/trace/api/telemetry/MetricCollector.java b/utils/config-utils/src/main/java/datadog/config/telemetry/MetricCollector.java similarity index 97% rename from internal-api/src/main/java/datadog/trace/api/telemetry/MetricCollector.java rename to utils/config-utils/src/main/java/datadog/config/telemetry/MetricCollector.java index 7261c52eab6..043b7071f23 100644 --- a/internal-api/src/main/java/datadog/trace/api/telemetry/MetricCollector.java +++ b/utils/config-utils/src/main/java/datadog/config/telemetry/MetricCollector.java @@ -1,6 +1,6 @@ -package datadog.trace.api.telemetry; +package datadog.config.telemetry; -import static datadog.trace.api.telemetry.MetricCollector.Metric; +import static datadog.config.telemetry.MetricCollector.Metric; import static java.util.Collections.emptyList; import static java.util.Collections.singletonList; diff --git a/internal-api/src/main/java/datadog/trace/api/telemetry/OtelEnvMetricCollector.java b/utils/config-utils/src/main/java/datadog/config/telemetry/OtelEnvMetricCollector.java similarity index 98% rename from internal-api/src/main/java/datadog/trace/api/telemetry/OtelEnvMetricCollector.java rename to utils/config-utils/src/main/java/datadog/config/telemetry/OtelEnvMetricCollector.java index 11837723a5c..3c89302957a 100644 --- a/internal-api/src/main/java/datadog/trace/api/telemetry/OtelEnvMetricCollector.java +++ b/utils/config-utils/src/main/java/datadog/config/telemetry/OtelEnvMetricCollector.java @@ -1,4 +1,4 @@ -package datadog.trace.api.telemetry; +package datadog.config.telemetry; import java.util.ArrayList; import java.util.Collection; diff --git a/internal-api/src/main/java/datadog/trace/util/Strings.java b/utils/config-utils/src/main/java/datadog/config/util/Strings.java similarity index 99% rename from internal-api/src/main/java/datadog/trace/util/Strings.java rename to utils/config-utils/src/main/java/datadog/config/util/Strings.java index 301b7223f04..38dc0ca39f2 100644 --- a/internal-api/src/main/java/datadog/trace/util/Strings.java +++ b/utils/config-utils/src/main/java/datadog/config/util/Strings.java @@ -1,4 +1,4 @@ -package datadog.trace.util; +package datadog.config.util; import static java.nio.charset.StandardCharsets.US_ASCII; diff --git a/components/yaml/src/main/java/datadog/yaml/YamlParser.java b/utils/config-utils/src/main/java/datadog/yaml/YamlParser.java similarity index 100% rename from components/yaml/src/main/java/datadog/yaml/YamlParser.java rename to utils/config-utils/src/main/java/datadog/yaml/YamlParser.java diff --git a/internal-api/src/test/java/datadog/trace/api/ConfigHelperTest.java b/utils/config-utils/src/test/java/ConfigHelperTest.java similarity index 98% rename from internal-api/src/test/java/datadog/trace/api/ConfigHelperTest.java rename to utils/config-utils/src/test/java/ConfigHelperTest.java index 04afcaf02b3..e439e8ecd06 100644 --- a/internal-api/src/test/java/datadog/trace/api/ConfigHelperTest.java +++ b/utils/config-utils/src/test/java/ConfigHelperTest.java @@ -1,9 +1,9 @@ -package datadog.trace.api; - import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertNull; +import datadog.config.ConfigHelper; +import datadog.config.ConfigInversionStrictStyle; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Arrays; diff --git a/internal-api/src/test/java/datadog/trace/api/TestSupportedConfigurationSource.java b/utils/config-utils/src/test/java/TestSupportedConfigurationSource.java similarity index 95% rename from internal-api/src/test/java/datadog/trace/api/TestSupportedConfigurationSource.java rename to utils/config-utils/src/test/java/TestSupportedConfigurationSource.java index 8fd4f8f33d5..fc1e81428ec 100644 --- a/internal-api/src/test/java/datadog/trace/api/TestSupportedConfigurationSource.java +++ b/utils/config-utils/src/test/java/TestSupportedConfigurationSource.java @@ -1,5 +1,4 @@ -package datadog.trace.api; - +import datadog.config.SupportedConfigurationSource; import java.util.List; import java.util.Map; import java.util.Set; From 1aefa7ed68c5be40ac189be3a8eb1e7bdc248b30 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Wed, 27 Aug 2025 17:30:06 -0400 Subject: [PATCH 45/47] updating gradle tasks to kotlin plugins --- build.gradle.kts | 2 +- buildSrc/build.gradle.kts | 13 ++ .../plugin/config/ConfigInversionLinter.kt | 126 +++++++++++++++ .../ParseSupportedConfigurationsTask.kt | 147 ++++++++++++++++++ .../plugin/config/SupportedConfigPlugin.kt | 28 ++++ gradle/configInversionLinter.gradle | 107 ------------- utils/config-utils/build.gradle.kts | 36 +---- .../ParseSupportedConfigurations.java | 142 ----------------- .../config/SupportedConfigurationSource.java | 2 +- .../resources/supported-configurations.json | 0 10 files changed, 317 insertions(+), 286 deletions(-) create mode 100644 buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt create mode 100644 buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt create mode 100644 buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt delete mode 100644 gradle/configInversionLinter.gradle delete mode 100644 utils/config-utils/src/generator/java/datadog/generator/ParseSupportedConfigurations.java rename utils/config-utils/src/{generator => main}/resources/supported-configurations.json (100%) diff --git a/build.gradle.kts b/build.gradle.kts index 855a9670ab9..ac62bb688bb 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,6 +9,7 @@ plugins { id("de.thetaphi.forbiddenapis") version "3.8" id("tracer-version") + id("config-inversion-linter") id("io.github.gradle-nexus.publish-plugin") version "2.0.0" id("com.gradleup.shadow") version "8.3.6" apply false @@ -53,7 +54,6 @@ with(extensions["spotlessPredeclare"] as SpotlessExtension) { } } apply(from = rootDir.resolve("gradle/spotless.gradle")) -apply(from = rootDir.resolve("gradle/configInversionLinter.gradle")) val compileTask = tasks.register("compile") diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index 890b521d2ef..ec9dd93705d 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -30,6 +30,14 @@ gradlePlugin { id = "tracer-version" implementationClass = "datadog.gradle.plugin.version.TracerVersionPlugin" } + create("config-generation") { + id = "supported-config-generator" + implementationClass = "datadog.gradle.plugin.config.SupportedConfigPlugin" + } + create("supported-config-linter") { + id = "config-inversion-linter" + implementationClass = "datadog.gradle.plugin.config.ConfigInversionLinter" + } } } @@ -52,6 +60,11 @@ dependencies { implementation("com.google.guava", "guava", "20.0") implementation("org.ow2.asm", "asm", "9.8") implementation("org.ow2.asm", "asm-tree", "9.8") + + implementation(platform("com.fasterxml.jackson:jackson-bom:2.17.2")) + implementation("com.fasterxml.jackson.core:jackson-databind") + implementation("com.fasterxml.jackson.core:jackson-annotations") + implementation("com.fasterxml.jackson.core:jackson-core") } tasks.compileKotlin { diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt new file mode 100644 index 00000000000..de4ae596705 --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt @@ -0,0 +1,126 @@ +package datadog.gradle.plugin.config + +import org.gradle.api.Plugin +import org.gradle.api.Project +import org.gradle.api.GradleException +import org.gradle.api.tasks.SourceSet +import org.gradle.api.tasks.SourceSetContainer +import java.net.URLClassLoader +import java.nio.file.Path + +class ConfigInversionLinter : Plugin { + override fun apply(target: Project) { + registerLogEnvVarUsages(target) + registerCheckEnvironmentVariablesUsage(target) + } +} + +/** Registers `logEnvVarUsages` (scan for DD_/OTEL_ tokens and fail if unsupported). */ +private fun registerLogEnvVarUsages(target: Project) { + val ownerPath = ":utils:config-utils" // <-- change to the module that contains the generated class + val generatedFile = "datadog.config.GeneratedSupportedConfigurations" + + // token check that uses the generated class instead of JSON + target.tasks.register("logEnvVarUsages") { + group = "verification" + description = "Scan Java files for DD_/OTEL_ tokens and fail if unsupported (using generated constants)" + + val owner = target.project(ownerPath) + val sourceSets = owner.extensions.getByType(SourceSetContainer::class.java) + val main = sourceSets.getByName(SourceSet.MAIN_SOURCE_SET_NAME) + + // ensure the owner project generated/compiled the class + dependsOn( + owner.tasks.named("generateSupportedConfigurations"), + owner.tasks.named("classes") // compiles main (including generated sources) + ) + + // inputs for incrementality (your own source files, not the owner’s) + val javaFiles = target.fileTree(target.projectDir) { + include("**/src/main/java/**/*.java") + exclude("**/build/**", "**/dd-smoke-tests/**") + } + inputs.files(javaFiles) + outputs.upToDateWhen { true} + doLast { + // 1) Build classloader from the owner project’s runtime classpath + val urls = main.runtimeClasspath.files.map { it.toURI().toURL() }.toTypedArray() + URLClassLoader(urls, javaClass.classLoader).use { cl -> + // 2) Load the generated class + read static field + val clazz = Class.forName(generatedFile, true, cl) + + @Suppress("UNCHECKED_CAST") + val supported: Set = clazz.getField("SUPPORTED").get(null) as Set + + // 3) Scan our sources and compare + val repoRoot = target.projectDir.toPath() + val tokenRegex = Regex("\"(?:DD_|OTEL_)[A-Za-z0-9_]+\"") + + val violations = mutableListOf() + javaFiles.files.forEach { f -> + val rel = repoRoot.relativize(f.toPath()).toString() + var inBlock = false + f.readLines().forEachIndexed { i, raw -> + val trimmed = raw.trim() + if (trimmed.startsWith("//")) return@forEachIndexed + if (!inBlock && trimmed.contains("/*")) inBlock = true + if (inBlock) { + if (trimmed.contains("*/")) inBlock = false + return@forEachIndexed + } + tokenRegex.findAll(raw).forEach { m -> + val token = m.value.trim('"') + if (token !in supported) violations += "$rel:${i + 1} -> Unsupported token '$token'" + } + } + } + + if (violations.isNotEmpty()) { + violations.forEach { target.logger.error(it) } + throw GradleException("Unsupported DD_/OTEL_ tokens found! See errors above.") + } else { + target.logger.lifecycle("All DD_/OTEL_ tokens are supported.") + } + } + } + } +} + +/** Registers `checkEnvironmentVariablesUsage` (forbid EnvironmentVariables.get(...)). */ +private fun registerCheckEnvironmentVariablesUsage(project: Project) { + project.tasks.register("checkEnvironmentVariablesUsage") { + group = "verification" + description = "Scans src/main/java for direct usages of EnvironmentVariables.get(...)" + + doLast { + val repoRoot: Path = project.projectDir.toPath() + val javaFiles = project.fileTree(project.projectDir) { + include("**/src/main/java/**/*.java") + exclude("**/build/**") + exclude("internal-api/src/main/java/datadog/trace/api/ConfigHelper.java") + exclude("dd-java-agent/agent-bootstrap/**") + exclude("dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java") + } + + val pattern = Regex("""EnvironmentVariables\.get\s*\(""") + val matches = mutableListOf() + + javaFiles.forEach { f -> + val relative = repoRoot.relativize(f.toPath()) + f.readLines().forEachIndexed { idx, line -> + if (pattern.containsMatchIn(line)) { + matches += "$relative:${idx + 1} -> ${line.trim()}" + } + } + } + + if (matches.isNotEmpty()) { + project.logger.lifecycle("\nFound forbidden usages of EnvironmentVariables.get(...):") + matches.forEach { project.logger.lifecycle(it) } + throw GradleException("Forbidden usage of EnvironmentVariables.get(...) found in Java files.") + } else { + project.logger.lifecycle("No forbidden EnvironmentVariables.get(...) usages found in src/main/java.") + } + } + } +} diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt new file mode 100644 index 00000000000..e66fc2c21ba --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt @@ -0,0 +1,147 @@ +package datadog.gradle.plugin.config + +import org.gradle.api.DefaultTask +import org.gradle.api.model.ObjectFactory +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.InputFile +import org.gradle.api.tasks.OutputDirectory +import org.gradle.api.tasks.TaskAction +import com.fasterxml.jackson.core.type.TypeReference +import com.fasterxml.jackson.databind.ObjectMapper +import java.io.File +import java.io.FileInputStream +import java.io.PrintWriter +import javax.inject.Inject + +abstract class ParseSupportedConfigurationsTask @Inject constructor( + private val objects: ObjectFactory +) : DefaultTask() { + @InputFile + val jsonFile = objects.fileProperty() + + @get:OutputDirectory + val destinationDirectory = objects.directoryProperty() + + @Input + val className = objects.property(String::class.java) + + @TaskAction + fun generate() { + val input = jsonFile.get().asFile + val outputDir = destinationDirectory.get().asFile + val fqcn = className.get() + outputDir.mkdirs() + + // Read JSON (directly from the file, not classpath) + val mapper = ObjectMapper() + val fileData: Map = FileInputStream(input).use { inStream -> + mapper.readValue(inStream, object : TypeReference>() {}) + } + + @Suppress("UNCHECKED_CAST") + val supported = fileData["supportedConfigurations"] as Map> + @Suppress("UNCHECKED_CAST") + val aliases = fileData["aliases"] as Map> + @Suppress("UNCHECKED_CAST") + val deprecated = (fileData["deprecations"] as? Map) ?: emptyMap() + + val aliasMapping = mutableMapOf() + for ((canonical, alist) in aliases) { + for (alias in alist) aliasMapping[alias] = canonical + } + + // Build the output .java path from the fully-qualified class name + val pkgPath = fqcn.substringBeforeLast('.', "").replace('.', File.separatorChar) + val simpleName = fqcn.substringAfterLast('.') + val pkgDir = if (pkgPath.isEmpty()) outputDir else File(outputDir, pkgPath).also { it.mkdirs() } + val generatedFile = File(pkgDir, "$simpleName.java").absolutePath + + // Call your existing generator (same signature as in your Java code) + generateJavaFile( + generatedFile, + supported.keys, + aliases, + aliasMapping, + deprecated + ) + } + + private fun generateJavaFile( + outputPath: String, + supportedKeys: Set, + aliases: Map>, + aliasMapping: Map, + deprecated: Map + ) { + val outFile = File(outputPath) + outFile.parentFile?.mkdirs() + + PrintWriter(outFile).use { out -> + // NOTE: adjust these if you want to match task's className + out.println("package datadog.config;") + out.println() + out.println("import java.util.*;") + out.println() + out.println("public final class GeneratedSupportedConfigurations {") + out.println() + out.println(" public static final Set SUPPORTED;") + out.println() + out.println(" public static final Map> ALIASES;") + out.println() + out.println(" public static final Map ALIAS_MAPPING;") + out.println() + out.println(" public static final Map DEPRECATED;") + out.println() + out.println(" static {") + out.println() + + // SUPPORTED + out.print(" Set supportedSet = new HashSet<>(Arrays.asList(") + val supportedIter = supportedKeys.toSortedSet().iterator() + while (supportedIter.hasNext()) { + val key = supportedIter.next() + out.print("\"${esc(key)}\"") + if (supportedIter.hasNext()) out.print(", ") + } + out.println("));") + out.println(" SUPPORTED = Collections.unmodifiableSet(supportedSet);") + out.println() + + // ALIASES + out.println(" Map> aliasesMap = new HashMap<>();") + for ((canonical, list) in aliases.toSortedMap()) { + out.printf( + " aliasesMap.put(\"%s\", Collections.unmodifiableList(Arrays.asList(%s)));\n", + esc(canonical), + quoteList(list) + ) + } + out.println(" ALIASES = Collections.unmodifiableMap(aliasesMap);") + out.println() + + // ALIAS_MAPPING + out.println(" Map aliasMappingMap = new HashMap<>();") + for ((alias, target) in aliasMapping.toSortedMap()) { + out.printf(" aliasMappingMap.put(\"%s\", \"%s\");\n", esc(alias), esc(target)) + } + out.println(" ALIAS_MAPPING = Collections.unmodifiableMap(aliasMappingMap);") + out.println() + + // DEPRECATED + out.println(" Map deprecatedMap = new HashMap<>();") + for ((oldKey, note) in deprecated.toSortedMap()) { + out.printf(" deprecatedMap.put(\"%s\", \"%s\");\n", esc(oldKey), esc(note)) + } + out.println(" DEPRECATED = Collections.unmodifiableMap(deprecatedMap);") + out.println() + out.println(" }") + out.println("}") + } + } + + private fun quoteList(list: List): String = + list.joinToString(", ") { "\"${esc(it)}\"" } + + private fun esc(s: String): String = + s.replace("\\", "\\\\").replace("\"", "\\\"") +} diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt new file mode 100644 index 00000000000..f2297afc6ad --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt @@ -0,0 +1,28 @@ +package datadog.gradle.plugin.config + +import org.gradle.api.Plugin +import org.gradle.api.Project +import org.gradle.api.tasks.SourceSet +import org.gradle.api.tasks.SourceSetContainer + +class SupportedConfigPlugin : Plugin { + override fun apply(targetProject: Project) { + generateSupportedConfigurations(targetProject) + } + + private fun generateSupportedConfigurations(targetProject: Project) { + val generateTask = + targetProject.tasks.register("generateSupportedConfigurations", ParseSupportedConfigurationsTask::class.java) { + jsonFile.set(project.file("src/main/resources/supported-configurations.json")) + destinationDirectory.set(project.layout.buildDirectory.dir("generated/supportedConfigurations")) + className.set("datadog.config.GeneratedSupportedConfigurations") + } + + // Ensure Java compilation depends on the generated sources + + val sourceset = targetProject.extensions.getByType(SourceSetContainer::class.java).named(SourceSet.MAIN_SOURCE_SET_NAME) + sourceset.configure { + java.srcDir(generateTask) + } + } +} diff --git a/gradle/configInversionLinter.gradle b/gradle/configInversionLinter.gradle deleted file mode 100644 index 98408b803ab..00000000000 --- a/gradle/configInversionLinter.gradle +++ /dev/null @@ -1,107 +0,0 @@ -import groovy.json.JsonSlurper -import java.nio.file.Path - -tasks.register('logEnvVarUsages') { - description = "Scan Java files for DD_ tokens and fail if unsupported" - group = "verification" - - doLast { - def repoRoot = projectDir.toPath() - def jsonFile = file("$projectDir/components/generator/src/generator/resources/supported-configurations.json") - - if (!jsonFile.exists()) { - throw new GradleException("supported-configurations.json not found at $jsonFile") - } - - def jsonSlurper = new JsonSlurper() - def supportedConfigs = jsonSlurper.parse(jsonFile) - - if (!(supportedConfigs instanceof Map) || !supportedConfigs.containsKey("supportedConfigurations")) { - throw new GradleException("supported-configurations.json must contain a top-level 'supportedConfigurations' object") - } - - // Extract keys under "supportedConfigurations" - Set supportedTokenSet = supportedConfigs.supportedConfigurations.keySet() - - def javaFiles = fileTree("$projectDir") { - include '**/src/main/java/**/*.java' - - exclude '**/dd-smoke-tests/**' - } - - def unsupportedTokensFound = [] - - javaFiles.each { file -> - Path relativePath = repoRoot.relativize(file.toPath()) - def lines = file.readLines() - def inBlockComment = false - lines.eachWithIndex { line, idx -> - def trimmed = line.trim() - - // Skip single-line comments - if (trimmed.startsWith("//")) return - - // Track block comment state - if (trimmed.contains("/*")) inBlockComment = true - if (inBlockComment) { - if (trimmed.contains("*/")) inBlockComment = false - return - } - - def matcher = (line =~ /"(?:DD_|OTEL_)[A-Za-z0-9_]+"/) - matcher.each { matchedToken -> - def token = matchedToken[1..-2] // remove quotes - if (!supportedTokenSet.contains(token)) { - unsupportedTokensFound << "Unsupported token '$token' found in ${relativePath}:${idx + 1}" - } - } - } - } - - if (!unsupportedTokensFound.isEmpty()) { - unsupportedTokensFound.each { logger.error(it) } - throw new GradleException("Unsupported DD_ tokens found! See errors above.") - } else { - logger.lifecycle("All DD_ tokens are supported.") - } - } -} - -tasks.register('checkEnvironmentVariablesUsage') { - group = "verification" - description = "Scans src/main/java for direct usages of EnvironmentVariables.get(...)" - - doLast { - def pattern = ~/EnvironmentVariables\.get\s*\(/ - def repoRoot = projectDir.toPath() - - def javaFiles = fileTree(projectDir) { - include '**/src/main/java/**/*.java' - - // Exclude specific files (relative to projectDir) - exclude '**/build/**' - exclude 'internal-api/src/main/java/datadog/trace/api/ConfigHelper.java' - exclude 'dd-java-agent/agent-bootstrap/**' - exclude 'dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java' - } - - def matches = [] - - javaFiles.each { file -> - def relativePath = repoRoot.relativize(file.toPath()) - file.eachLine { line, index -> - if (line =~ pattern) { - matches << "${relativePath}:${index + 1} -> ${line.trim()}" - } - } - } - - if (!matches.isEmpty()) { - println "\nFound forbidden usages of EnvironmentVariables.get(...):" - matches.each { println it } - throw new GradleException("Forbidden usage of EnvironmentVariables.get(...) found in Java files.") - } else { - println "No forbidden EnvironmentVariables.get(...) usages found in src/main/java." - } - } -} diff --git a/utils/config-utils/build.gradle.kts b/utils/config-utils/build.gradle.kts index 7fb136e4b17..0fe177c786c 100644 --- a/utils/config-utils/build.gradle.kts +++ b/utils/config-utils/build.gradle.kts @@ -1,46 +1,12 @@ plugins { `java-library` -} - -sourceSets { - create("generator") { - java.srcDir("src/generator/java") - } - val main by getting { - java { - srcDir("build/generated/sources/supported") - } - } + id("supported-config-generator") } dependencies { - "generatorImplementation"("com.fasterxml.jackson.core:jackson-databind:2.15.2") - "generatorImplementation"("org.slf4j:slf4j-api:1.7.36") implementation(project(":components:environment")) implementation(project(":dd-trace-api")) implementation("org.snakeyaml", "snakeyaml-engine", "2.9") } apply(from = "$rootDir/gradle/java.gradle") - -val compileGeneratorJava = tasks.named("compileGeneratorJava") - -val generateSupportedConfigurations by tasks.registering(JavaExec::class) { - // We can run the generator with the main sourceSet runtimeClasspath - dependsOn(compileGeneratorJava) - mainClass.set("datadog.generator.ParseSupportedConfigurations") - classpath = sourceSets["generator"].runtimeClasspath - - val outputFile = layout.buildDirectory.file("generated/sources/supported/GeneratedSupportedConfigurations.java") - args("supported-configurations.json", outputFile.get().asFile.absolutePath) - - doFirst { - outputFile.get().asFile.parentFile.mkdirs() - } -} -// Ensure Java compilation depends on the generated sources -sourceSets["main"].java.srcDir(layout.buildDirectory.dir("generated/sources/supported")) - -tasks.named("compileJava") { - dependsOn(generateSupportedConfigurations) -} diff --git a/utils/config-utils/src/generator/java/datadog/generator/ParseSupportedConfigurations.java b/utils/config-utils/src/generator/java/datadog/generator/ParseSupportedConfigurations.java deleted file mode 100644 index bf3156cd881..00000000000 --- a/utils/config-utils/src/generator/java/datadog/generator/ParseSupportedConfigurations.java +++ /dev/null @@ -1,142 +0,0 @@ -package datadog.generator; - -import com.fasterxml.jackson.databind.ObjectMapper; -import java.io.IOException; -import java.io.InputStream; -import java.io.PrintWriter; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; - -public class ParseSupportedConfigurations { - - public static void main(String[] args) { - String supportedConfigurationsFilename = - args[0]; // e.g., "resources/supported-configurations.json" - String generatedMappingPath = args[1]; // e.g., - // "build/generated-sources/datadog/environment/GeneratedSupportedConfigurations.java" - - String jsonString; - try { - - InputStream in = - ParseSupportedConfigurations.class - .getClassLoader() - .getResourceAsStream(supportedConfigurationsFilename); - if (in == null) { - throw new IllegalArgumentException( - "Resource not found: " + supportedConfigurationsFilename); - } - - ObjectMapper mapper = new ObjectMapper(); - Map fileData = mapper.readValue(in, Map.class); - - Map> supported = - (Map>) fileData.get("supportedConfigurations"); - Map> aliases = (Map>) fileData.get("aliases"); - Map deprecated = (Map) fileData.get("deprecations"); - - Map aliasMapping = new HashMap<>(); - for (Map.Entry> entry : aliases.entrySet()) { - for (String alias : entry.getValue()) { - aliasMapping.put(alias, entry.getKey()); - } - } - generateJavaFile(generatedMappingPath, supported.keySet(), aliases, aliasMapping, deprecated); - } catch (IOException e) { - throw new RuntimeException("Failed to read " + supportedConfigurationsFilename, e); - } - } - - private static void generateJavaFile( - String outputPath, - Set supported, - Map> aliases, - Map aliasMapping, - Map deprecated) - throws IOException { - try (PrintWriter out = new PrintWriter(Files.newBufferedWriter(Paths.get(outputPath)))) { - out.println("package datadog.generator;"); - out.println(); - out.println("import java.util.*;"); - out.println(); - out.println("public final class GeneratedSupportedConfigurations {"); - - // Supported set using Arrays.asList and HashSet - out.println(" public static final Set SUPPORTED;"); - out.println(); - - // ALIASES map - out.println(" public static final Map> ALIASES;"); - out.println(); - - // ALIAS_MAPPING map - out.println(" public static final Map ALIAS_MAPPING;"); - out.println(); - - // DEPRECATED map - out.println(" public static final Map DEPRECATED;"); - out.println(); - - // Static initializer block - out.println(" static {"); - - // Initialize SUPPORTED - out.print(" Set supportedSet = new HashSet<>(Arrays.asList("); - Iterator supportedIter = supported.iterator(); - while (supportedIter.hasNext()) { - String key = supportedIter.next(); - out.print("\"" + key + "\""); - if (supportedIter.hasNext()) { - out.print(", "); - } - } - out.println("));"); - out.println(" SUPPORTED = Collections.unmodifiableSet(supportedSet);"); - out.println(); - - // Initialize ALIASES - out.println(" Map> aliasesMap = new HashMap<>();"); - for (Map.Entry> entry : aliases.entrySet()) { - out.printf( - " aliasesMap.put(\"%s\", Collections.unmodifiableList(Arrays.asList(%s)));\n", - entry.getKey(), quoteList(entry.getValue())); - } - out.println(" ALIASES = Collections.unmodifiableMap(aliasesMap);"); - out.println(); - - // Initialize ALIAS_MAPPING - out.println(" Map aliasMappingMap = new HashMap<>();"); - for (Map.Entry entry : aliasMapping.entrySet()) { - out.printf(" aliasMappingMap.put(\"%s\", \"%s\");\n", entry.getKey(), entry.getValue()); - } - out.println(" ALIAS_MAPPING = Collections.unmodifiableMap(aliasMappingMap);"); - out.println(); - - // Initialize DEPRECATED - out.println(" Map deprecatedMap = new HashMap<>();"); - for (Map.Entry entry : deprecated.entrySet()) { - out.printf(" deprecatedMap.put(\"%s\", \"%s\");\n", entry.getKey(), entry.getValue()); - } - out.println(" DEPRECATED = Collections.unmodifiableMap(deprecatedMap);"); - - out.println(" }"); // end static block - out.println("}"); // end class - } - } - - private static String quoteList(List list) { - StringBuilder sb = new StringBuilder(); - for (int i = 0; i < list.size(); i++) { - sb.append("\"").append(list.get(i)).append("\""); - if (i < list.size() - 1) { - sb.append(", "); - } - } - return sb.toString(); - } -} diff --git a/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java index e9dc655d7af..9ffcecadf34 100644 --- a/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java +++ b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java @@ -1,6 +1,6 @@ package datadog.config; -import datadog.generator.GeneratedSupportedConfigurations; +import datadog.config.GeneratedSupportedConfigurations; import java.util.List; import java.util.Map; import java.util.Set; diff --git a/utils/config-utils/src/generator/resources/supported-configurations.json b/utils/config-utils/src/main/resources/supported-configurations.json similarity index 100% rename from utils/config-utils/src/generator/resources/supported-configurations.json rename to utils/config-utils/src/main/resources/supported-configurations.json From 9ef8c2696cbf0d395ef1532612ccf8937b856060 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Mon, 8 Sep 2025 16:56:12 -0400 Subject: [PATCH 46/47] cleaning up gradle tasks --- buildSrc/build.gradle.kts | 2 +- .../plugin/config/ConfigInversionLinter.kt | 84 +++++++++---------- .../ParseSupportedConfigurationsTask.kt | 22 +++-- .../plugin/config/SupportedConfigPlugin.kt | 13 ++- .../config/SupportedTracerConfigurations.kt | 17 ++++ .../DDAgentFeaturesDiscoveryTest.groovy | 2 +- .../config/SupportedConfigurationSource.java | 1 - 7 files changed, 81 insertions(+), 60 deletions(-) create mode 100644 buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index ec9dd93705d..e1bd2d5c6da 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -30,7 +30,7 @@ gradlePlugin { id = "tracer-version" implementationClass = "datadog.gradle.plugin.version.TracerVersionPlugin" } - create("config-generation") { + create("supported-config-generation") { id = "supported-config-generator" implementationClass = "datadog.gradle.plugin.config.SupportedConfigPlugin" } diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt index de4ae596705..d5caf4d12e8 100644 --- a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt @@ -5,35 +5,32 @@ import org.gradle.api.Project import org.gradle.api.GradleException import org.gradle.api.tasks.SourceSet import org.gradle.api.tasks.SourceSetContainer +import org.gradle.internal.impldep.kotlinx.metadata.impl.extensions.KmExtension +import org.gradle.kotlin.dsl.accessors.runtime.externalModuleDependencyFor +import org.gradle.kotlin.dsl.getByType import java.net.URLClassLoader import java.nio.file.Path class ConfigInversionLinter : Plugin { override fun apply(target: Project) { - registerLogEnvVarUsages(target) + val extension = target.extensions.create("supportedTracerConfigurations", SupportedTracerConfigurations::class.java) + registerLogEnvVarUsages(target, extension) registerCheckEnvironmentVariablesUsage(target) } } /** Registers `logEnvVarUsages` (scan for DD_/OTEL_ tokens and fail if unsupported). */ -private fun registerLogEnvVarUsages(target: Project) { - val ownerPath = ":utils:config-utils" // <-- change to the module that contains the generated class - val generatedFile = "datadog.config.GeneratedSupportedConfigurations" +private fun registerLogEnvVarUsages(target: Project, extension: SupportedTracerConfigurations) { + val ownerPath = extension.configOwnerPath.get() + val generatedFile = extension.className.get() // token check that uses the generated class instead of JSON target.tasks.register("logEnvVarUsages") { group = "verification" description = "Scan Java files for DD_/OTEL_ tokens and fail if unsupported (using generated constants)" - val owner = target.project(ownerPath) - val sourceSets = owner.extensions.getByType(SourceSetContainer::class.java) - val main = sourceSets.getByName(SourceSet.MAIN_SOURCE_SET_NAME) - - // ensure the owner project generated/compiled the class - dependsOn( - owner.tasks.named("generateSupportedConfigurations"), - owner.tasks.named("classes") // compiles main (including generated sources) - ) + val mainSourceSetOutput = target.project(ownerPath).extensions.getByType().named(SourceSet.MAIN_SOURCE_SET_NAME).map { it.output } + inputs.files(mainSourceSetOutput) // inputs for incrementality (your own source files, not the owner’s) val javaFiles = target.fileTree(target.projectDir) { @@ -41,46 +38,45 @@ private fun registerLogEnvVarUsages(target: Project) { exclude("**/build/**", "**/dd-smoke-tests/**") } inputs.files(javaFiles) - outputs.upToDateWhen { true} + outputs.upToDateWhen { true } doLast { // 1) Build classloader from the owner project’s runtime classpath - val urls = main.runtimeClasspath.files.map { it.toURI().toURL() }.toTypedArray() - URLClassLoader(urls, javaClass.classLoader).use { cl -> + val urls = mainSourceSetOutput.get().files.map { it.toURI().toURL() }.toTypedArray() + val supported: Set = URLClassLoader(urls, javaClass.classLoader).use { cl -> // 2) Load the generated class + read static field val clazz = Class.forName(generatedFile, true, cl) - @Suppress("UNCHECKED_CAST") - val supported: Set = clazz.getField("SUPPORTED").get(null) as Set - - // 3) Scan our sources and compare - val repoRoot = target.projectDir.toPath() - val tokenRegex = Regex("\"(?:DD_|OTEL_)[A-Za-z0-9_]+\"") + clazz.getField("SUPPORTED").get(null) as Set + } - val violations = mutableListOf() - javaFiles.files.forEach { f -> - val rel = repoRoot.relativize(f.toPath()).toString() - var inBlock = false - f.readLines().forEachIndexed { i, raw -> - val trimmed = raw.trim() - if (trimmed.startsWith("//")) return@forEachIndexed - if (!inBlock && trimmed.contains("/*")) inBlock = true - if (inBlock) { - if (trimmed.contains("*/")) inBlock = false - return@forEachIndexed - } - tokenRegex.findAll(raw).forEach { m -> - val token = m.value.trim('"') - if (token !in supported) violations += "$rel:${i + 1} -> Unsupported token '$token'" - } + // 3) Scan our sources and compare + val repoRoot = target.projectDir.toPath() + val tokenRegex = Regex("\"(?:DD_|OTEL_)[A-Za-z0-9_]+\"") + + val violations = mutableListOf() + javaFiles.files.forEach { f -> + val rel = repoRoot.relativize(f.toPath()).toString() + var inBlock = false + f.readLines().forEachIndexed { i, raw -> + val trimmed = raw.trim() + if (trimmed.startsWith("//")) return@forEachIndexed + if (!inBlock && trimmed.contains("/*")) inBlock = true + if (inBlock) { + if (trimmed.contains("*/")) inBlock = false + return@forEachIndexed + } + tokenRegex.findAll(raw).forEach { m -> + val token = m.value.trim('"') + if (token !in supported) violations += "$rel:${i + 1} -> Unsupported token '$token'" } } + } - if (violations.isNotEmpty()) { - violations.forEach { target.logger.error(it) } - throw GradleException("Unsupported DD_/OTEL_ tokens found! See errors above.") - } else { - target.logger.lifecycle("All DD_/OTEL_ tokens are supported.") - } + if (violations.isNotEmpty()) { + violations.forEach { target.logger.error(it) } + throw GradleException("Unsupported DD_/OTEL_ tokens found! See errors above.") + } else { + target.logger.lifecycle("All DD_/OTEL_ tokens are supported.") } } } diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt index e66fc2c21ba..0864efbcbdc 100644 --- a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt @@ -8,28 +8,33 @@ import org.gradle.api.tasks.OutputDirectory import org.gradle.api.tasks.TaskAction import com.fasterxml.jackson.core.type.TypeReference import com.fasterxml.jackson.databind.ObjectMapper +import org.gradle.api.tasks.CacheableTask +import org.gradle.api.tasks.PathSensitive +import org.gradle.api.tasks.PathSensitivity import java.io.File import java.io.FileInputStream import java.io.PrintWriter import javax.inject.Inject +@CacheableTask abstract class ParseSupportedConfigurationsTask @Inject constructor( private val objects: ObjectFactory ) : DefaultTask() { @InputFile + @PathSensitive(PathSensitivity.NONE) val jsonFile = objects.fileProperty() @get:OutputDirectory val destinationDirectory = objects.directoryProperty() @Input - val className = objects.property(String::class.java) + val className = objects.property(String::class.java) @TaskAction fun generate() { val input = jsonFile.get().asFile val outputDir = destinationDirectory.get().asFile - val fqcn = className.get() + val finalClassName = className.get() outputDir.mkdirs() // Read JSON (directly from the file, not classpath) @@ -51,14 +56,17 @@ abstract class ParseSupportedConfigurationsTask @Inject constructor( } // Build the output .java path from the fully-qualified class name - val pkgPath = fqcn.substringBeforeLast('.', "").replace('.', File.separatorChar) - val simpleName = fqcn.substringAfterLast('.') + val pkgName = finalClassName.substringBeforeLast('.', "") + val pkgPath = pkgName.replace('.', File.separatorChar) + val simpleName = finalClassName.substringAfterLast('.') val pkgDir = if (pkgPath.isEmpty()) outputDir else File(outputDir, pkgPath).also { it.mkdirs() } val generatedFile = File(pkgDir, "$simpleName.java").absolutePath // Call your existing generator (same signature as in your Java code) generateJavaFile( generatedFile, + simpleName, + pkgName, supported.keys, aliases, aliasMapping, @@ -68,6 +76,8 @@ abstract class ParseSupportedConfigurationsTask @Inject constructor( private fun generateJavaFile( outputPath: String, + className: String, + packageName: String, supportedKeys: Set, aliases: Map>, aliasMapping: Map, @@ -78,11 +88,11 @@ abstract class ParseSupportedConfigurationsTask @Inject constructor( PrintWriter(outFile).use { out -> // NOTE: adjust these if you want to match task's className - out.println("package datadog.config;") + out.println("package $packageName;") out.println() out.println("import java.util.*;") out.println() - out.println("public final class GeneratedSupportedConfigurations {") + out.println("public final class $className {") out.println() out.println(" public static final Set SUPPORTED;") out.println() diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt index f2297afc6ad..598d566bdf0 100644 --- a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt @@ -7,19 +7,18 @@ import org.gradle.api.tasks.SourceSetContainer class SupportedConfigPlugin : Plugin { override fun apply(targetProject: Project) { - generateSupportedConfigurations(targetProject) + val extension = targetProject.extensions.create("supportedTracerConfigurations", SupportedTracerConfigurations::class.java) + generateSupportedConfigurations(targetProject, extension) } - private fun generateSupportedConfigurations(targetProject: Project) { + private fun generateSupportedConfigurations(targetProject: Project, extension: SupportedTracerConfigurations) { val generateTask = targetProject.tasks.register("generateSupportedConfigurations", ParseSupportedConfigurationsTask::class.java) { - jsonFile.set(project.file("src/main/resources/supported-configurations.json")) - destinationDirectory.set(project.layout.buildDirectory.dir("generated/supportedConfigurations")) - className.set("datadog.config.GeneratedSupportedConfigurations") + jsonFile.set(extension.jsonFile) + destinationDirectory.set(extension.destinationDirectory) + className.set(extension.className) } - // Ensure Java compilation depends on the generated sources - val sourceset = targetProject.extensions.getByType(SourceSetContainer::class.java).named(SourceSet.MAIN_SOURCE_SET_NAME) sourceset.configure { java.srcDir(generateTask) diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt new file mode 100644 index 00000000000..1ef7c258afb --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt @@ -0,0 +1,17 @@ +package datadog.gradle.plugin.config + +import org.gradle.api.file.ProjectLayout +import org.gradle.api.model.ObjectFactory +import javax.inject.Inject + +open class SupportedTracerConfigurations @Inject constructor(objects: ObjectFactory, layout: ProjectLayout) { + val configOwnerPath = objects.property(String::class.java).convention(":utils:config-utils") + val className = objects.property(String::class.java).convention("datadog.config.GeneratedSupportedConfigurations") + + val jsonFile = objects.fileProperty().convention(layout.projectDirectory.file("src/main/resources/supported-configurations.json")) + + val destinationDirectory = objects.directoryProperty().convention(layout.buildDirectory.dir("generated/supportedConfigurations")) + + // ... other configs + // maybe excluded files in specific submodules like "internal-api/...", "dd-java-agent/..." +} diff --git a/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy b/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy index 6ebd3521338..527bc43b7c8 100644 --- a/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy +++ b/communication/src/test/groovy/datadog/communication/ddagent/DDAgentFeaturesDiscoveryTest.groovy @@ -3,7 +3,7 @@ package datadog.communication.ddagent import datadog.common.container.ContainerInfo import datadog.communication.monitor.Monitoring import datadog.trace.test.util.DDSpecification -import Strings +import datadog.config.util.Strings import okhttp3.Call import okhttp3.Headers import okhttp3.HttpUrl diff --git a/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java index 9ffcecadf34..10f7fcd9e27 100644 --- a/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java +++ b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java @@ -1,6 +1,5 @@ package datadog.config; -import datadog.config.GeneratedSupportedConfigurations; import java.util.List; import java.util.Map; import java.util.Set; From b8d8eca3c6c7c7c5df115fb177e49603180a4ea5 Mon Sep 17 00:00:00 2001 From: Matthew Li Date: Fri, 12 Sep 2025 13:31:37 -0400 Subject: [PATCH 47/47] responding to PR comments --- .../plugin/config/ConfigInversionLinter.kt | 19 ++++++++++++------- .../config/SupportedTracerConfigurations.kt | 3 --- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt index d5caf4d12e8..4b3cb0c6792 100644 --- a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt @@ -21,15 +21,20 @@ class ConfigInversionLinter : Plugin { /** Registers `logEnvVarUsages` (scan for DD_/OTEL_ tokens and fail if unsupported). */ private fun registerLogEnvVarUsages(target: Project, extension: SupportedTracerConfigurations) { - val ownerPath = extension.configOwnerPath.get() - val generatedFile = extension.className.get() + val ownerPath = extension.configOwnerPath + val generatedFile = extension.className // token check that uses the generated class instead of JSON target.tasks.register("logEnvVarUsages") { group = "verification" description = "Scan Java files for DD_/OTEL_ tokens and fail if unsupported (using generated constants)" - val mainSourceSetOutput = target.project(ownerPath).extensions.getByType().named(SourceSet.MAIN_SOURCE_SET_NAME).map { it.output } + val mainSourceSetOutput = ownerPath.map { + target.project(it) + .extensions.getByType() + .named(SourceSet.MAIN_SOURCE_SET_NAME) + .map { main -> main.output } + } inputs.files(mainSourceSetOutput) // inputs for incrementality (your own source files, not the owner’s) @@ -41,10 +46,10 @@ private fun registerLogEnvVarUsages(target: Project, extension: SupportedTracerC outputs.upToDateWhen { true } doLast { // 1) Build classloader from the owner project’s runtime classpath - val urls = mainSourceSetOutput.get().files.map { it.toURI().toURL() }.toTypedArray() + val urls = mainSourceSetOutput.get().get().files.map { it.toURI().toURL() }.toTypedArray() val supported: Set = URLClassLoader(urls, javaClass.classLoader).use { cl -> // 2) Load the generated class + read static field - val clazz = Class.forName(generatedFile, true, cl) + val clazz = Class.forName(generatedFile.get(), true, cl) @Suppress("UNCHECKED_CAST") clazz.getField("SUPPORTED").get(null) as Set } @@ -76,7 +81,7 @@ private fun registerLogEnvVarUsages(target: Project, extension: SupportedTracerC violations.forEach { target.logger.error(it) } throw GradleException("Unsupported DD_/OTEL_ tokens found! See errors above.") } else { - target.logger.lifecycle("All DD_/OTEL_ tokens are supported.") + target.logger.info("All DD_/OTEL_ tokens are supported.") } } } @@ -115,7 +120,7 @@ private fun registerCheckEnvironmentVariablesUsage(project: Project) { matches.forEach { project.logger.lifecycle(it) } throw GradleException("Forbidden usage of EnvironmentVariables.get(...) found in Java files.") } else { - project.logger.lifecycle("No forbidden EnvironmentVariables.get(...) usages found in src/main/java.") + project.logger.info("No forbidden EnvironmentVariables.get(...) usages found in src/main/java.") } } } diff --git a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt index 1ef7c258afb..1a15e223895 100644 --- a/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt @@ -11,7 +11,4 @@ open class SupportedTracerConfigurations @Inject constructor(objects: ObjectFact val jsonFile = objects.fileProperty().convention(layout.projectDirectory.file("src/main/resources/supported-configurations.json")) val destinationDirectory = objects.directoryProperty().convention(layout.buildDirectory.dir("generated/supportedConfigurations")) - - // ... other configs - // maybe excluded files in specific submodules like "internal-api/...", "dd-java-agent/..." }