diff --git a/build.gradle.kts b/build.gradle.kts index 08f3d6ed27c..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 diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index 890b521d2ef..e1bd2d5c6da 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("supported-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..4b3cb0c6792 --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ConfigInversionLinter.kt @@ -0,0 +1,127 @@ +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 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) { + 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, extension: SupportedTracerConfigurations) { + 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 = 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) + 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 = 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.get(), true, cl) + @Suppress("UNCHECKED_CAST") + 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.info("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.info("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..0864efbcbdc --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/ParseSupportedConfigurationsTask.kt @@ -0,0 +1,157 @@ +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 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) + + @TaskAction + fun generate() { + val input = jsonFile.get().asFile + val outputDir = destinationDirectory.get().asFile + val finalClassName = 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 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, + deprecated + ) + } + + private fun generateJavaFile( + outputPath: String, + className: String, + packageName: 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 $packageName;") + out.println() + out.println("import java.util.*;") + out.println() + out.println("public final class $className {") + 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..598d566bdf0 --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedConfigPlugin.kt @@ -0,0 +1,27 @@ +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) { + val extension = targetProject.extensions.create("supportedTracerConfigurations", SupportedTracerConfigurations::class.java) + generateSupportedConfigurations(targetProject, extension) + } + + private fun generateSupportedConfigurations(targetProject: Project, extension: SupportedTracerConfigurations) { + val generateTask = + targetProject.tasks.register("generateSupportedConfigurations", ParseSupportedConfigurationsTask::class.java) { + jsonFile.set(extension.jsonFile) + destinationDirectory.set(extension.destinationDirectory) + className.set(extension.className) + } + + 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..1a15e223895 --- /dev/null +++ b/buildSrc/src/main/kotlin/datadog/gradle/plugin/config/SupportedTracerConfigurations.kt @@ -0,0 +1,14 @@ +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")) +} 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..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 datadog.trace.util.Strings +import datadog.config.util.Strings import okhttp3.Call import okhttp3.Headers import okhttp3.HttpUrl diff --git a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java index 753ea95acd8..ab7a02213f1 100644 --- a/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java +++ b/components/environment/src/main/java/datadog/environment/EnvironmentVariables.java @@ -3,6 +3,7 @@ import static java.util.Collections.emptyMap; import static java.util.Collections.unmodifiableMap; +import de.thetaphi.forbiddenapis.SuppressForbidden; import java.util.HashMap; import java.util.Map; import javax.annotation.Nullable; @@ -36,6 +37,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; @@ -54,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/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/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/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/build.gradle b/dd-java-agent/build.gradle index 891e58fc79c..283f24aeae2 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(":internal-api")) testImplementation sourceSets.main_java6.output } 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/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..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.EnvironmentVariables; 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; @@ -61,7 +61,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-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 382a8266c78..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; @@ -72,14 +72,17 @@ 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.generator.GeneratedSupportedConfigurations:build_time," + "datadog.trace.agent.tooling.WeakMaps$Adapter:build_time," + "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," + + "datadog.trace.api.ConfigInversionStrictStyle:build_time," + "datadog.trace.api.ConfigOrigin:build_time," + "datadog.trace.api.ConfigSetting:build_time," + "datadog.trace.api.EventTracker:build_time," @@ -98,20 +101,22 @@ 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:rerun," + "datadog.trace.api.TracePropagationStyle:build_time," + "datadog.trace.api.TracePropagationBehaviorExtract: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," + "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/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/BootstrapInitializationTelemetry.java index 007e926d089..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.bootstrap.environment.EnvironmentVariables; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.Closeable; import java.io.OutputStream; 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..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 @@ -89,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); 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/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/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-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/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/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 73a71bdbffa..9f6290dbdb9 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -19,7 +19,6 @@ final class CachedData { exclude(project(':components:context')) exclude(project(':components:environment')) 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/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/internal-api/build.gradle.kts b/internal-api/build.gradle.kts index eb25ebd9ac8..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" ) ) @@ -272,7 +272,7 @@ dependencies { api(project(":components:context")) api(project(":components:environment")) 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 aae53ec7e07..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; @@ -4741,8 +4743,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"; } } 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 30d854387a1..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,10 +1,11 @@ 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; import java.nio.file.Path; import java.nio.file.Paths; import java.util.Collections; @@ -18,6 +19,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(); 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 2905470f5c5..4a8895a02bc 100644 --- a/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy +++ b/internal-api/src/test/groovy/datadog/trace/api/ConfigTest.groovy @@ -1,9 +1,10 @@ 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 @@ -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..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,9 +1,21 @@ package datadog.trace.api + 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/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/api/telemetry/OtelEnvMetricCollectorTest.groovy b/internal-api/src/test/groovy/datadog/trace/api/telemetry/OtelEnvMetricCollectorTest.groovy index c5970aeb012..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 @@ -10,7 +10,6 @@ import datadog.trace.test.util.DDSpecification class OtelEnvMetricCollectorTest extends DDSpecification { - def "otel disabled - no metric"() { setup: injectEnvConfig('DD_SERVICE_NAME', 'DD_TEST_SERVICE', false) @@ -202,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..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 @@ -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.trace.api.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..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,4 +1,7 @@ package datadog.trace.bootstrap.config.provider + +import datadog.trace.api.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" 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 70bbfb5679f..9cb5c7847c8 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -104,7 +104,6 @@ include( ":components:context", ":components:environment", ":components:json", - ":components:yaml", ":telemetry", ":remote-config:remote-config-api", ":remote-config:remote-config-core", @@ -136,6 +135,7 @@ include( // misc include( ":dd-java-agent:testing", + ":utils:config-utils", ":utils:container-utils", ":utils:socket-utils", ":utils:test-agent-utils:decoder", @@ -598,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/yaml/build.gradle.kts b/utils/config-utils/build.gradle.kts similarity index 53% rename from components/yaml/build.gradle.kts rename to utils/config-utils/build.gradle.kts index f2297262236..0fe177c786c 100644 --- a/components/yaml/build.gradle.kts +++ b/utils/config-utils/build.gradle.kts @@ -1,9 +1,12 @@ plugins { `java-library` + id("supported-config-generator") } -apply(from = "$rootDir/gradle/java.gradle") - dependencies { + 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/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/utils/config-utils/src/main/java/datadog/config/ConfigHelper.java b/utils/config-utils/src/main/java/datadog/config/ConfigHelper.java new file mode 100644 index 00000000000..665b4a6e59e --- /dev/null +++ b/utils/config-utils/src/main/java/datadog/config/ConfigHelper.java @@ -0,0 +1,100 @@ +package datadog.config; + +import datadog.config.telemetry.ConfigInversionMetricCollector; +import datadog.environment.EnvironmentVariables; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +public class ConfigHelper { + private static ConfigInversionStrictStyle configInversionStrict; + + private static final ConfigInversionMetricCollector configInversionMetricCollector = + ConfigInversionMetricCollector.getInstance(); + // Default to production source + private static SupportedConfigurationSource configSource = new SupportedConfigurationSource(); + + public static void setConfigInversionStrict(ConfigInversionStrictStyle configInversionStrict) { + ConfigHelper.configInversionStrict = configInversionStrict; + } + + public static ConfigInversionStrictStyle configInversionStrictFlag() { + 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 = ConfigInversionStrictStyle.WARNING; + } + + public static Map getEnvironmentVariables() { + Map env = EnvironmentVariables.getAll(); + 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_") + || 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 (configSource.getAliasMapping().containsKey(key) + && !configs.containsKey(configSource.getAliasMapping().get(key))) { + List aliasList = + configSource.getAliases().get(configSource.getAliasMapping().get(key)); + for (String alias : aliasList) { + if (env.containsKey(alias)) { + configs.put(configSource.getAliasMapping().get(key), env.get(alias)); + break; + } + } + } + + // TODO: Follow-up - Add deprecation handling + // if (configSource.getDeprecatedConfigurations().containsKey(key)) { + // String warning = "Environment variable " + key + " is deprecated. " + + // (configSource.getAliasMapping().containsKey(key) + // ? "Please use " + configSource.getAliasMapping().get(key) + " instead." + // : configSource.getDeprecatedConfigurations().get(key)); + // System.err.println(warning); + // } + } else { + configs.put(key, value); + } + } + return configs; + } + + public static String getEnvironmentVariable(String name) { + if ((name.startsWith("DD_") || name.startsWith("OTEL_")) + && !configSource.getAliasMapping().containsKey(name) + && !configSource.getSupportedConfigurations().contains(name)) { + if (configInversionStrict != ConfigInversionStrictStyle.TEST) { + configInversionMetricCollector.setUndocumentedEnvVarMetric(name); + } + + if (configInversionStrict == ConfigInversionStrictStyle.STRICT) { + return null; // If strict mode is enabled, return null for unsupported configs + } + } + + String config = EnvironmentVariables.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; + } + } + } + return config; + } +} diff --git a/utils/config-utils/src/main/java/datadog/config/ConfigInversionStrictStyle.java b/utils/config-utils/src/main/java/datadog/config/ConfigInversionStrictStyle.java new file mode 100644 index 00000000000..8ed7def27c3 --- /dev/null +++ b/utils/config-utils/src/main/java/datadog/config/ConfigInversionStrictStyle.java @@ -0,0 +1,24 @@ +package datadog.config; + +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/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 91% 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 1edeb072c80..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,10 +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.ConfigOrigin; +import datadog.trace.api.config.GeneralConfig; import de.thetaphi.forbiddenapis.SuppressForbidden; import java.io.File; import java.io.FileNotFoundException; @@ -374,9 +373,16 @@ 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()); + + ConfigHelper.setConfigInversionStrict( + minimalProvider.getEnum( + GeneralConfig.CONFIG_INVERSION_STRICT, + ConfigInversionStrictStyle.class, + ConfigInversionStrictStyle.WARNING)); + + Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { return new ConfigProvider( new SystemPropertiesConfigSource(), @@ -398,10 +404,16 @@ 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()); + ConfigHelper.setConfigInversionStrict( + minimalProvider.getEnum( + CONFIG_INVERSION_STRICT, + ConfigInversionStrictStyle.class, + ConfigInversionStrictStyle.WARNING)); + + Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { return new ConfigProvider( false, @@ -426,12 +438,19 @@ 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); + + ConfigHelper.setConfigInversionStrict( + minimalProvider.getEnum( + GeneralConfig.CONFIG_INVERSION_STRICT, + ConfigInversionStrictStyle.class, + ConfigInversionStrictStyle.WARNING)); + + Properties configProperties = loadConfigurationFile(minimalProvider); if (configProperties.isEmpty()) { return new ConfigProvider( new SystemPropertiesConfigSource(), @@ -466,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 97% 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 bec1dbe5c38..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.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; 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/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java new file mode 100644 index 00000000000..10f7fcd9e27 --- /dev/null +++ b/utils/config-utils/src/main/java/datadog/config/SupportedConfigurationSource.java @@ -0,0 +1,32 @@ +package datadog.config; + +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/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/utils/config-utils/src/main/resources/supported-configurations.json b/utils/config-utils/src/main/resources/supported-configurations.json new file mode 100644 index 00000000000..725fef3703e --- /dev/null +++ b/utils/config-utils/src/main/resources/supported-configurations.json @@ -0,0 +1,2050 @@ +{ + "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_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"], + "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_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"], + "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_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"], + "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_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"], + "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_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"], + "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_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"], + "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"], + "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_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_LEVEL": ["A"], + "DD_MEASURE_METHODS": ["A"], + "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"], + "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_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_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"], + "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_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"], + "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_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"], + "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": ["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_SQS_PROPAGATION_ENABLED": ["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_MAX_TAGS": ["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_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"], + "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_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_AWSADD_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_BAGGAGE_TAG_KEYS": ["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"], + "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_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"], + "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_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"], + "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_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_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"], + "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"], + "DD_TRACE_GSON_ENABLED": ["A"], + "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"], + "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_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_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"], + "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_JACOCO_ENABLED": ["A"], + "DD_TRACE_JAKARTARS_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_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"], + "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_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_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_HUDI_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"], + "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"], + "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_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"], + "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_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"], + "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_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"], + "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_PEERSERVICETAGINTERCEPTOR_ENABLED": ["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_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"], + "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_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"], + "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_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"], + "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_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"], + "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_SCALATEST_ENABLED": ["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_COMPLETION_PRIORITY_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_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_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"], + "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"], + "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_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_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_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"], + "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_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"], + "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_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"], + "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_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"], + "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_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_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_ARG": ["A"], + "OTEL_TRACES_SAMPLER": ["A"] + }, + "aliases": { + "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_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"], + "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_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"], + "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_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"], + "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"], + "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_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_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_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"], + "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_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"], + "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_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"], + "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_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_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_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_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"], + "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_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"], + "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_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_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_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_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"], + "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_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"], + "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_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"], + "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_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"], + "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_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"], + "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_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"], + "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_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_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"], + "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_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"], + "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_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"], + "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"], + "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"], + "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_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"], + "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_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"], + "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"], + "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"], + "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_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"], + "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_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"], + "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"], + "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/utils/config-utils/src/test/java/ConfigHelperTest.java b/utils/config-utils/src/test/java/ConfigHelperTest.java new file mode 100644 index 00000000000..e439e8ecd06 --- /dev/null +++ b/utils/config-utils/src/test/java/ConfigHelperTest.java @@ -0,0 +1,238 @@ +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; +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 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; + + @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)); + 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 = + new TestSupportedConfigurationSource( + testSupported, testAliases, testAliasMapping, new HashMap<>()); + ConfigHelper.setConfigurationSource(testSource); + strictness = ConfigHelper.configInversionStrictFlag(); + ConfigHelper.setConfigInversionStrict(ConfigInversionStrictStyle.STRICT); + } + + @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(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(ConfigInversionStrictStyle.STRICT); + 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); + } + + @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); + } + + // 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) { + 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/utils/config-utils/src/test/java/TestSupportedConfigurationSource.java b/utils/config-utils/src/test/java/TestSupportedConfigurationSource.java new file mode 100644 index 00000000000..fc1e81428ec --- /dev/null +++ b/utils/config-utils/src/test/java/TestSupportedConfigurationSource.java @@ -0,0 +1,43 @@ +import datadog.config.SupportedConfigurationSource; +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/utils/container-utils/build.gradle.kts b/utils/container-utils/build.gradle.kts index 2b7578a2785..6627647fca7 100644 --- a/utils/container-utils/build.gradle.kts +++ b/utils/container-utils/build.gradle.kts @@ -7,6 +7,6 @@ apply(from = "$rootDir/gradle/java.gradle") dependencies { implementation(project(":components:environment")) implementation(libs.slf4j) - + implementation(project(":internal-api")) testImplementation(project(":utils:test-utils")) }